Groups | Search | Server Info | Keyboard shortcuts | Login | Register


Groups > comp.lang.forth > #22776

Re: The current object

From Bernd Paysan <bernd.paysan@gmx.de>
Newsgroups comp.lang.forth
Subject Re: The current object
Date 2013-05-19 01:20 +0200
Organization 1&1 Internet AG
Message-ID <kn92bj$pe6$1@online.de> (permalink)
References (15 earlier) <kn0udd$spc$1@online.de> <KvydncG8nbdXFAnMnZ2dnUVZ_rydnZ2d@supernews.com> <kn2utv$afr$1@online.de> <SPadneFw542iyQrMnZ2dnUVZ_rqdnZ2d@supernews.com> <UY-dnUvh6tPOBQrMnZ2dnUVZ_tGdnZ2d@supernews.com>

Show all headers | View raw


Andrew Haley wrote:

> By the way: this issue just came up on the hotspot-dev list.  A guy
> has been doing benchmarks for bimorphic calls on a very fast machine
> (core i7) and claims that vtable dispatch would be much faster.  I'm
> going to try to get his benchmarks and have a look.  I haven't got
> ARM64 hardware yet, but it'll be useful to find out for my own
> project.

Cortex-A57's spec says that they have about the same sort of branch target 
buffering as the x64 world.  That's what ARM claims:

"2K-4K Branch Target Buffer (BTB) with zero-cycle taken-branch penalty 
minimizes pipeline flushes. Sophisticated indirect-predictor w/ path-history 
increases branch hit rate. Dedicated branch resolution unit enables fully 
out of order branch execution. Also includes a high-performance mispredict-
recovery microarchitecture."

The second sentence is what's needed for A/B/A/B/A patterns (bimorphic 
calls).  The last one is for real polymorphism/megamorphism, where 
misprediction rate is high, and quick recovery is important.

-- 
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://bernd-paysan.de/

Back to comp.lang.forth | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Re: The current object Bernd Paysan <bernd.paysan@gmx.de> - 2013-05-15 16:46 +0200
  Re: The current object Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-15 13:11 -0500
    Re: The current object Bernd Paysan <bernd.paysan@gmx.de> - 2013-05-15 23:23 +0200
      Re: The current object Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-16 02:24 -0500
        Re: The current object anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-05-16 13:55 +0000
        Re: The current object Bernd Paysan <bernd.paysan@gmx.de> - 2013-05-16 17:45 +0200
          Re: The current object Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-18 05:13 -0500
            Re: The current object Doug Hoffman <glidedog@gmail.com> - 2013-05-18 06:43 -0400
            Re: The current object Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-18 10:03 -0500
              Re: The current object Doug Hoffman <glidedog@gmail.com> - 2013-05-18 11:30 -0400
              Re: The current object Bernd Paysan <bernd.paysan@gmx.de> - 2013-05-19 01:20 +0200
                Re: The current object Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-19 12:33 -0500
            Re: The current object Bernd Paysan <bernd.paysan@gmx.de> - 2013-05-19 01:07 +0200
              Re: The current object Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-19 03:58 -0500
    OO dispatch (was: The current object) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-05-16 14:07 +0000
      Re: OO dispatch Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-18 05:28 -0500
        Re: OO dispatch anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-05-20 11:28 +0000
          Re: OO dispatch Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-20 09:00 -0500
            Re: OO dispatch Bernd Paysan <bernd.paysan@gmx.de> - 2013-05-21 01:37 +0200
              Re: OO dispatch Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-21 03:21 -0500
            Re: OO dispatch anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-05-21 12:24 +0000
              Re: OO dispatch Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-21 10:18 -0500
                Re: OO dispatch anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-05-21 16:03 +0000
                Re: OO dispatch Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-05-21 12:55 -0500
                Re: OO dispatch Bernd Paysan <bernd.paysan@gmx.de> - 2013-05-29 00:00 +0200
                Re: OO dispatch Mark Wills <markrobertwills@yahoo.co.uk> - 2013-05-28 15:49 -0700

csiph-web