Hi Gavin,
Am 09.04.2008 um 02:32 schrieb Gavin Romig-Koch:
http://people.redhat.com/drepper/cpumemory.pdf
that looks like a very interesting reference, thanks a lot.
There are probably other papers out there more specific to
implementing very late bound languages, but this isn't an area I've
looked at much.
I presume that if inline caching was really that much of a bugger, it
would not be used at the degree it is in (probably amongst many
others) the VisualWorks Smalltalk VM, which was implemented and is
maintained by very smart people.
The id object model accompanying Ian and Alex' paper on the object
model has both global and inline caching, and having inline caching
alone improves performance more than having global caching alone - at
least that's what the very informal measurements I just ran yield.
Related question: does threaded interpretation still make sense
these days, what with all those sophisticated branch prediction
units around? Again: are there reliable sources?
Oh, by "multi-threaded" I meant multiple threads of execution
running the same machine code (as in POSIX threads), not threaded
interpretation (as in one of the ways to implement Forth like
languages). [...]
Ah, I was not at all about multithreading. I saw the question of
threaded interpretation in conjunction with the question of inline
caching. Both are mechanisms that were originally devised to help CPUs
in doing their jobs better without facing too many branch
mispredictions or cache misses, respectively.
But you might find the answer to your question in Anton Ertl (and
others have done):
http://www.complang.tuwien.ac.at/projects/forth.html
I know their work; unfortunately, there do not seem to be very recent
results produced on, say, Pentium IV CPUs. (For one paper that
appeared in 2003, they made measurements regarding branch prediction
and threaded interpretation, but those were run on a simulated MIPS.)
Best,
Michael
--
Dr.-Ing. Michael Haupt [EMAIL PROTECTED]
Software Architecture Group Phone: ++49 (0) 331-5509-542
Hasso Plattner Institute for Fax: ++49 (0) 331-5509-229
Software Systems Engineering http://www.swa.hpi.uni-potsdam.de/
Prof.-Dr.-Helmert-Str. 2-3, D-14482 Potsdam, Germany
Hasso-Plattner-Institut für Softwaresystemtechnik GmbH, Potsdam
Amtsgericht Potsdam, HRB 12184
Geschäftsführung: Prof. Dr. Christoph Meinel
_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc