On Tue, May 18, 2010 at 9:52 AM, Igor Stasenko <siguctua@gmail.com> wrote:
2010/5/18 Stéphane Ducasse <stephane.ducasse@inria.fr>:
this is cool We could then build tools for you :) Boxes are packages, little squares are classes
Blue: classes with no instances Green: classes with instances, but no used Red: classes with instances and at least one used
just brainstorming with mariano
Interesting. Could it draw with pink, the ones who has no instances, but having a methods invocations (an abstract superclasses can have no instances, but can be under heavy use).
Sorry I forgot to change the colors. Look above to see the references. Cheers Mariano
On May 17, 2010, at 10:40 PM, Eliot Miranda wrote:
On Mon, May 17, 2010 at 11:30 AM, Stéphane Ducasse <
stephane.ducasse@inria.fr> wrote:
On Ma
bytes 28 to 31: image flags, conventional VMs use only bit 0, Cog also
uses bits 1 through 4
bit 0: 1 => open full screen, 0 => open using width &
height
bit 1: 1 => image floats are in little-endian format,
0=> image floats are in big-endian format
bit 2: 1 => Process's 4th inst var (after myList) is
threadId to be used by the VM for overlapped calls
bit 3: 1 => set the flag bit on methods that the VM will
only interpret (because they're considered too big to JIT)
bit 4: 1 => preempting a process does not put it to the
back of its run queue
I was not clear how to read bit 3: 1 this information is not in the compiledMethods?
For the Cog JIT I want to measure which methods get interpreted to determine the threshold at which to decide to JIT methods. It makes little sense to JIT methods that are large and only executed once, typically class initialization methods. A simple criterion is to set a limit on the number of literals in a method. But I still need to know whether my threshold is affecting frequently used methods. So I added the option of setting the flag bit in any method which the JIT refuses to compile because it has too many literals. Since I need to see which methods are interpreted on start-up putting a flag in the image header was convenient. The effect is that the JIT will set the flag bit on any method it refuses to JIT. I can then browse these in the image and decide whether any are important and adjust the threshold accordingly. Arguably this should be a command line argument, not an image header flag.
Stef
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Best regards, Igor Stasenko AKA sig.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project