2010/5/17 Eliot Miranda <eliot.mira...@gmail.com>:
>
>
> On Mon, May 17, 2010 at 11:30 AM, Stéphane Ducasse
> <stephane.duca...@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.

Eliot, i beg you, instead of using an obscure flags in image header,
just add (or reserve unused) splObject indice and read/write whatever
you want from there.

I guess that Cog having substantial changes all around places, so
adding a convenient API for VM flags
and removing a bit fiddling from image header, would make things
transparent and easy to use from language side.

>>
>> 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
>



-- 
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

Reply via email to