[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: generating cache offsets



    Date: Tue, 15 Nov 88 13:05:29 EST
    From: harrisr@turing.cs.rpi.edu (Richard Harris)

    I have been examining the reasons that %LOGAND did not work well
    in KCL for generating slot value cache offsets, and I no longer 
    believe that the problem was with %LOGAND.  

    Instead, I think the (cache collision) problem is that AKCL's implementation 
    of SXHASH produces results with an unfortunate distribution.
    AKCL builds a fixnum from the first, second, second last,
    and last characters of the the symbol's print-name.  When PCL does %LOGAND
    on this number, all that is left is bit positions 5 to 0 of the second last
    character's code, and bit positions 7 to 2 of the last character's
    code.

Actually the part of the code you are optimizing isn't used much in PCL
anymore.  Slot access via accessor methods actually uses a special kind
of dcode, and slot access via slot-value in the body of the method uses
permutation vectors.

So I wouldn't expect these changes to have a significant effect on the
performance of a program written in pcl.

Most of the other patches you have sent out do have a significant
effect, and we are merging them into our sources here.
-------