[Bug] [VM] [Linux] VMMaker experience
Nevin Pratt
nevin at smalltalkpro.com
Sat May 4 16:48:02 UTC 2002
John,
Thanks for the pointer. Rather than backreving to an earlier compiler,
I hacked the 'sqUnixConfig.h' file to make it look like the one
generated with gcc 2.95.3 (i.e., I defined DOUBLE_WORD_ORDER). Things
worked...
...except, that now I'm seeing the "Comanche data dribble problem".
I'll wait a few days and try this again, per your earlier post where
you said:
> Yes this issue is being fixed, I"m peering at a broken freebsd VM
> right now....
> Certainly the issue of dribbles of data has been fixed, so wait a day
> or so
Thanks again,
Nevin
*************************************
John M McIntosh wrote:
>>
>> 12. I quit my existing Squeak image, and replace the old 'squeak' VM
>> with the new one, and try to restart my image. I get a walkback. The
>> relevant part of the stack walkback is the following:
>>
>
> I think this is the 3.0.3 gcc issue
>
> See Ned Konz notes in the archives
> At 3:55 PM -0800 3/7/02, Ned Konz wrote:
>
>> Looking further, it may be a config issue; the sqUnixConfig.h file
>> generated
>> for the two differed as follows:
>>
>> $ diff -c ../sqUnix*
>> *** ../sqUnixConfig.h.2.95.3 Thu Mar 7 15:34:11 2002
>> --- ../sqUnixConfig.h.3.03 Thu Mar 7 15:33:25 2002
>> ***************
>> *** 111,117 ****
>>
>> /* #undef WORDS_BIGENDIAN */
>> /* #undef DOUBLE_WORD_ALIGNMENT */
>> ! #define DOUBLE_WORD_ORDER 1
>>
>> /* damage containment */
>>
>> --- 111,117 ----
>>
>> /* #undef WORDS_BIGENDIAN */
>> /* #undef DOUBLE_WORD_ALIGNMENT */
>> ! /* #undef DOUBLE_WORD_ORDER */
>>
>> /* damage containment */
>>
>> So I tried doing the config for GCC 3.0.3 and then edited the
>> sqUnixConfig.h
>> file, defining DOUBLE_WORD_ORDER.
>>
>> And guess what? It ran!
>>
>> So I decided to run the tinyBenchmarks:
>>
>> With 2.95.3:
>> 0 tinyBenchmarks
>> '42553191 bytecodes/sec; 1283021 sends/sec'
>>
>> With 3.0.3:
>> '38811400 bytecodes/sec; 1253071 sends/sec'
>>
>> So then I changed the -O2 in the Makefile to -O3 and tried compiling
>> again.
>> It got a bit faster in the sends/sec but slower in the bytecodes/sec...
>>
>> With 3.0.3, -O3:
>> '36802760 bytecodes/sec; 1285996 sends/sec'
>> '37383177 bytecodes/sec; 1285003 sends/sec'
>>
>> Anyway, thought you might be amused.
>
> At 4:36 PM -0800 3/7/02, Ned Konz wrote:
>
>> Oh come on now; it probably just needs someone to tweak the knobs on
>> the back
>> of the set... (twiddle twiddle)..
>>
>> How's this 3.03 result:
>>
>> 0 tinyBenchmarks
>> '47442550 bytecodes/sec; 1434550 sends/sec'
>> '47761194 bytecodes/sec; 1415033 sends/sec'
>>
>> For reference, 2.95.3 was:
>> '42553191 bytecodes/sec; 1283021 sends/sec'
>> '42356055 bytecodes/sec; 1282033 sends/sec'
>>
>> I used
>> CFLAGS= -I/usr/X11R6/include -g -O3 -DLSB_FIRST=1 -funroll-loops
>> -fno-gcse
>>
>> Adding the -fno-gcse made quite a bit of difference (27% more
>> bytecodes/second, 11% more sends/sec).
>>
>> So now it's about 12% faster than the 2.95.3 was. Of course, I don't
>> know
>> what'll happen if you use "-fno-gcse" with the 2.95.3 ...
>
>
More information about the Squeak-dev
mailing list
|