[VM][Experimental] betterModuleHandling: speed up failing calls of
module functions...
Stephan Rudlof
sr at evolgo.de
Tue Feb 15 01:18:38 UTC 2000
Because it is not limited to Linux, I'll post it again with one less
subject key...
I apologize.
Stephan
-------- Original Message --------
Subject: [VM][Linux][Experimental] betterModuleHandling: speed up
failing calls of module functions...
Date: Tue, 15 Feb 2000 01:40:44 +0100
From: Stephan Rudlof <sr at evolgo.de>
To: ML Squeak <squeak at cs.uiuc.edu>
...by 'missing function information caching'.
Dear VM-Hackers,
to make you hungry:
A method like
* anInteger
<primitive: 'primMul' module:'LargeIntegers'>
^ super * anInteger
should be as fast as
* anInteger
<primitive: 29>
^ super * anInteger
if the optional primitive is not there and therefore fails!
*Currently* the module variant is much slower, because loading of the
(not existent) module will be tried again and again...
but the attached changeset called
'VM_cachingMissingModules.2.cs.gz'
*solves* this problem!
This ensures a seamless integration of optional module primitives: they
can be called like ordinary numbered ones now!
Stephan
P.S.: I have (Squeak-) compressed the attached files to reduce the size
of this mail.
"Change Set: VM_cachingMissingModules
Date: 15 February 2000
Author: Stephan Rudlof
This changeset improves the VM:
-> it speeds up *failing* of external primitives which are *missing*
dramatically.
Preconditions:
- Squeak 2.7.
ToDo:
- FileIn this change set and follow the instructions.
Semantics:
- in stderr there is shown which modules are missing in the current
session: but only *once* while trying to load a module for the first
called function in it!;
- loading modules will be tried *once* in one session (no repeated
fails), this makes the speed!;
- sessionIDs are incremented starting from 1 to SmallInteger maxVal; so
no random overlaps (could lead to a crash!) can occure.
"
--
Stephan Rudlof (sr at evolgo.de)
"Genius doesn't work on an assembly line basis.
You can't simply say, 'Today I will be brilliant.'"
-- Kirk, "The Ultimate Computer", stardate 4731.3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: VM_cachingMissingModules.2.cs.gz
Type: application/octet-stream
Size: 6394 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20000215/2d830d8f/VM_cachingMissingModules.2.cs.obj
More information about the Squeak-dev
mailing list
|