Some notes from dt-testbed/proto2/README.  I haven't committed
changes yet:

For a second effort at dynamic branches, I handcoded an assembly
handler which performs the target address hash function and then
searches each of four entries in the set.  If no match is found,
the C handler code is then called.

                                        (DT/native) (for reference)
                                           effort1  effort0
  workload      microloops  native    DT   factor   factor
  ----------------------------------------------------------------
  NOP                         .52    5.90   11.3    [18.6]
  add cascade     5          1.87    7.29    3.9    [ 5.9]
  add cascade    10          3.59    9.16    2.6    [ 3.6]
  add cascade   100         27.24   32.71    1.2    [ 1.3]

These numbers show a little better performance for dynamic branches.
It took only about 5 loops through the add cascade to average out
the slow-down factor to a similar level as 10 loops in the previous
table.

I'll have a further into other possible enhancements.

-Kevin

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Kevin Lawton                        [EMAIL PROTECTED]
MandrakeSoft, Inc.                  Plex86 developer
http://www.linux-mandrake.com/      http://www.plex86.org/

Reply via email to