Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
82 messages Options
12345
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Mariano Martinez Peck


2010/3/27 laurent laffont <[hidden email]>
OK, I've tried the Smalltalk one...

With rev 2151 gnuification (awk) is done as I have gnu-interp.c and gnu-interp.c.log in my build directory.

Benchmark gives me:

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
312385600 bytecodes/sec; 7320778 sends/sec
310868245 bytecodes/sec; 8271046 sends/sec
310679611 bytecodes/sec; 8271046 sends/sec
310868245 bytecodes/sec; 7232576 sends/sec
310491206 bytecodes/sec; 8271046 sends/sec

compared to

 Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

so it seems that on my machine rev 2135 without gnuification is a little better. I have GCC 4.4.3,  Linux 32bits.


I don't understand....it is slower with the gnuification ?

weird....


 
Laurent Laffont



On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:
On Sat, 27 Mar 2010, laurent laffont wrote:

I've tried gnuification on rev 2151. cmake/configure OK. But while building:

/home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
erreur: #error GNUIFICATION FAILED ( 0 )

Which gnuification method did you try?
There are two different versions. The origial version is an awk script which is run when you're building the vm with make. This is executed by default if you have awk installed.
There's another version written in smalltalk (linked by Mariano into this thread) which is not used by VMMAker at the moment, you probably don't need that. If you applied the latter one, you have to make sure that the first one is not executed. You can't gnuifying the sources twice.
Since both do the same, the best you can do now is to ignore the smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the awk dependency from the build process, until then you shouldn't apply it if your platform has awk installed.


Levente




Laurent Laffont


On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
<[hidden email]>wrote:

Does it mean latest SVN source is already "Gnuified" ?  With latest rev.
I
have a little drop in benchmarks. However I'd rather put a stable
release
for Pharo 1.0 than latest trunk. What do you think ?

The so-called "gnuification" is a transformation of the interp.c file. So
this is done after generating the sources with VMMaker. The cmake
configuration that comes with revision 2135 does not have this step enabled,
and the more recent version that I used, revision 2151, has it. The magic is
in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.


OK thanks. I will take a look.

Laurent Laffont




Cheers,
Adrian


Laurent Laffont



Adrian


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

laurent laffont
More benchmarks.

Updated procedure with gcc optimizations activated:
tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
cd Squeak-3.11.3.2135-pharo-src/
mkdir build && cd build
../unix/cmake/configure  --CFLAGS="-O2"
make
sudo make install


Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
==========================================
330109606 bytecodes/sec; 9183392 sends/sec
331177231 bytecodes/sec; 9190792 sends/sec
330535829 bytecodes/sec; 9198204 sends/sec
329896907 bytecodes/sec; 9220511 sends/sec
330963154 bytecodes/sec; 8973857 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
==========================================
296811594 bytecodes/sec; 10138464 sends/sec
296467863 bytecodes/sec; 10129460 sends/sec
296639629 bytecodes/sec; 10138464 sends/sec
296124927 bytecodes/sec; 7920675 sends/sec
296296296 bytecodes/sec; 7926179 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
306586826 bytecodes/sec; 7218843 sends/sec
308248043 bytecodes/sec; 7209717 sends/sec
308805790 bytecodes/sec; 7223415 sends/sec
309552599 bytecodes/sec; 7218843 sends/sec
309927360 bytecodes/sec; 7269453 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
==========================================
293073840 bytecodes/sec; 8807546 sends/sec
292070735 bytecodes/sec; 8841684 sends/sec
281628162 bytecodes/sec; 8896858 sends/sec
294422081 bytecodes/sec; 8903804 sends/sec

Laurent Laffont


2010/3/28 Mariano Martinez Peck <[hidden email]>


2010/3/27 laurent laffont <[hidden email]>

OK, I've tried the Smalltalk one...

With rev 2151 gnuification (awk) is done as I have gnu-interp.c and gnu-interp.c.log in my build directory.

Benchmark gives me:

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
312385600 bytecodes/sec; 7320778 sends/sec
310868245 bytecodes/sec; 8271046 sends/sec
310679611 bytecodes/sec; 8271046 sends/sec
310868245 bytecodes/sec; 7232576 sends/sec
310491206 bytecodes/sec; 8271046 sends/sec

compared to

 Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

so it seems that on my machine rev 2135 without gnuification is a little better. I have GCC 4.4.3,  Linux 32bits.


I don't understand....it is slower with the gnuification ?

weird....


 
Laurent Laffont



On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:
On Sat, 27 Mar 2010, laurent laffont wrote:

I've tried gnuification on rev 2151. cmake/configure OK. But while building:

/home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
erreur: #error GNUIFICATION FAILED ( 0 )

Which gnuification method did you try?
There are two different versions. The origial version is an awk script which is run when you're building the vm with make. This is executed by default if you have awk installed.
There's another version written in smalltalk (linked by Mariano into this thread) which is not used by VMMAker at the moment, you probably don't need that. If you applied the latter one, you have to make sure that the first one is not executed. You can't gnuifying the sources twice.
Since both do the same, the best you can do now is to ignore the smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the awk dependency from the build process, until then you shouldn't apply it if your platform has awk installed.


Levente




Laurent Laffont


On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
<[hidden email]>wrote:

Does it mean latest SVN source is already "Gnuified" ?  With latest rev.
I
have a little drop in benchmarks. However I'd rather put a stable
release
for Pharo 1.0 than latest trunk. What do you think ?

The so-called "gnuification" is a transformation of the interp.c file. So
this is done after generating the sources with VMMaker. The cmake
configuration that comes with revision 2135 does not have this step enabled,
and the more recent version that I used, revision 2151, has it. The magic is
in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.


OK thanks. I will take a look.

Laurent Laffont




Cheers,
Adrian


Laurent Laffont



Adrian


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Bryce Kampjes
In reply to this post by Adrian Lienhard
On Sat, 2010-03-27 at 18:38 +0100, Adrian Lienhard wrote:

> On Mar 27, 2010, at 18:21 , laurent laffont wrote:
>
> > On Sat, Mar 27, 2010 at 6:13 PM, Adrian Lienhard <[hidden email]> wrote:
> >
> >>
> >> On Mar 27, 2010, at 17:16 , laurent laffont wrote:
> >>
> >>>> I would love that the official Linux VM has:
> >>>>
> >>>> - that thing about the gnufication
> >>>> I did that when compiling MacOS VM.
> >>>> Read this link   (step 4 for example)
> >>>>
> >>>>
> >> http://www.squeakvm.org/cgi-bin/viewcvs.cgi/trunk/platforms/Mac%20OS/vm/Documentation/readme.txt?rev=1984&view=auto
> >>>>
> >>>> does it make sense also in Linux VM ?  which are the difference in the
> >>>> benchmarks compared to do it without this step ?
> >>>>
> >>>
> >>> Isn't it a MacOS issue only ?
> >>
> >> No, this is relevant for all GNU C compilers! Without this step, which
> >> replaces the switch statement of the interpreter with a jump table, you get
> >> a *much* slower VM. I suggest to use the latest SVN source.
> >>
> >
> > Does it mean latest SVN source is already "Gnuified" ?  With latest rev. I
> > have a little drop in benchmarks. However I'd rather put a stable release
> > for Pharo 1.0 than latest trunk. What do you think ?
>
> The so-called "gnuification" is a transformation of the interp.c file. So this is done after generating the sources with VMMaker. The cmake configuration that comes with revision 2135 does not have this step enabled, and the more recent version that I used, revision 2151, has it. The magic is in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.

The Exupery VMs are gnuified so as your benchmarks are close, I'd say
your VM is gnuified too. If it isn't performance drops dramatically, I
think to about a tenth the performance.

Bryce


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

laurent laffont


On Sun, Mar 28, 2010 at 11:48 AM, Bryce Kampjes <[hidden email]> wrote:
On Sat, 2010-03-27 at 18:38 +0100, Adrian Lienhard wrote:
> On Mar 27, 2010, at 18:21 , laurent laffont wrote:
>
> > On Sat, Mar 27, 2010 at 6:13 PM, Adrian Lienhard <[hidden email]> wrote:
> >
> >>
> >> On Mar 27, 2010, at 17:16 , laurent laffont wrote:
> >>
> >>>> I would love that the official Linux VM has:
> >>>>
> >>>> - that thing about the gnufication
> >>>> I did that when compiling MacOS VM.
> >>>> Read this link   (step 4 for example)
> >>>>
> >>>>
> >> http://www.squeakvm.org/cgi-bin/viewcvs.cgi/trunk/platforms/Mac%20OS/vm/Documentation/readme.txt?rev=1984&view=auto
> >>>>
> >>>> does it make sense also in Linux VM ?  which are the difference in the
> >>>> benchmarks compared to do it without this step ?
> >>>>
> >>>
> >>> Isn't it a MacOS issue only ?
> >>
> >> No, this is relevant for all GNU C compilers! Without this step, which
> >> replaces the switch statement of the interpreter with a jump table, you get
> >> a *much* slower VM. I suggest to use the latest SVN source.
> >>
> >
> > Does it mean latest SVN source is already "Gnuified" ?  With latest rev. I
> > have a little drop in benchmarks. However I'd rather put a stable release
> > for Pharo 1.0 than latest trunk. What do you think ?
>
> The so-called "gnuification" is a transformation of the interp.c file. So this is done after generating the sources with VMMaker. The cmake configuration that comes with revision 2135 does not have this step enabled, and the more recent version that I used, revision 2151, has it. The magic is in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.

The Exupery VMs are gnuified so as your benchmarks are close, I'd say
your VM is gnuified too. If it isn't performance drops dramatically, I
think to about a tenth the performance.

Bryce

OK, thanks. Lot of things to learn :)

Laurent Laffont
 


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Levente Uzonyi-2
In reply to this post by laurent laffont
Your optimization flags are probably ignored by cmake: see this thread
http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html

You could also give these flags a try on x86 cpus: -O3
-fomit-frame-pointer -mfpmath=sse -march=native


Levente

On Sun, 28 Mar 2010, laurent laffont wrote:

> More benchmarks.
>
> Updated procedure with gcc optimizations activated:
> wget
> http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
> tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
> cd Squeak-3.11.3.2135-pharo-src/
> mkdir build && cd build
> ../unix/cmake/configure  --CFLAGS="-O2"
> make
> sudo make install
>
>
> Squeak VM 3.11.3 -r 2135 + FT2Plugin
> ==========================================
> 334421946 bytecodes/sec; 8026581 sends/sec
> 334640522 bytecodes/sec; 7449884 sends/sec
> 334421946 bytecodes/sec; 7449884 sends/sec
> 334421946 bytecodes/sec; 7675486 sends/sec
> 327156549 bytecodes/sec; 7598782 sends/sec
>
> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
> ==========================================
> 330109606 bytecodes/sec; 9183392 sends/sec
> 331177231 bytecodes/sec; 9190792 sends/sec
> 330535829 bytecodes/sec; 9198204 sends/sec
> 329896907 bytecodes/sec; 9220511 sends/sec
> 330963154 bytecodes/sec; 8973857 sends/sec
>
> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
> ==========================================
> 296811594 bytecodes/sec; 10138464 sends/sec
> 296467863 bytecodes/sec; 10129460 sends/sec
> 296639629 bytecodes/sec; 10138464 sends/sec
> 296124927 bytecodes/sec; 7920675 sends/sec
> 296296296 bytecodes/sec; 7926179 sends/sec
>
> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
> ==========================================
> 306586826 bytecodes/sec; 7218843 sends/sec
> 308248043 bytecodes/sec; 7209717 sends/sec
> 308805790 bytecodes/sec; 7223415 sends/sec
> 309552599 bytecodes/sec; 7218843 sends/sec
> 309927360 bytecodes/sec; 7269453 sends/sec
>
> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
> ==========================================
> 293073840 bytecodes/sec; 8807546 sends/sec
> 292070735 bytecodes/sec; 8841684 sends/sec
> 281628162 bytecodes/sec; 8896858 sends/sec
> 294422081 bytecodes/sec; 8903804 sends/sec
>
> Laurent Laffont
>
>
> 2010/3/28 Mariano Martinez Peck <[hidden email]>
>
>>
>>
>> 2010/3/27 laurent laffont <[hidden email]>
>>
>> OK, I've tried the Smalltalk one...
>>>
>>> With rev 2151 gnuification (awk) is done as I have gnu-interp.c
>>> and gnu-interp.c.log in my build directory.
>>>
>>> Benchmark gives me:
>>>
>>> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
>>> ==========================================
>>> 312385600 bytecodes/sec; 7320778 sends/sec
>>> 310868245 bytecodes/sec; 8271046 sends/sec
>>> 310679611 bytecodes/sec; 8271046 sends/sec
>>> 310868245 bytecodes/sec; 7232576 sends/sec
>>> 310491206 bytecodes/sec; 8271046 sends/sec
>>>
>>> compared to
>>>
>>>   Squeak VM 3.11.3 -r 2135 + FT2Plugin
>>> ==========================================
>>> 334421946 bytecodes/sec; 8026581 sends/sec
>>> 334640522 bytecodes/sec; 7449884 sends/sec
>>> 334421946 bytecodes/sec; 7449884 sends/sec
>>> 334421946 bytecodes/sec; 7675486 sends/sec
>>> 327156549 bytecodes/sec; 7598782 sends/sec
>>>
>>> so it seems that on my machine rev 2135 without gnuification is a little
>>> better. I have GCC 4.4.3,  Linux 32bits.
>>>
>>>
>> I don't understand....it is slower with the gnuification ?
>>
>> weird....
>>
>>
>>
>>
>>> Laurent Laffont
>>>
>>>
>>>
>>> On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:
>>>
>>>> On Sat, 27 Mar 2010, laurent laffont wrote:
>>>>
>>>>  I've tried gnuification on rev 2151. cmake/configure OK. But while
>>>>> building:
>>>>>
>>>>>
>>>>> /home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
>>>>> erreur: #error GNUIFICATION FAILED ( 0 )
>>>>>
>>>>
>>>> Which gnuification method did you try?
>>>> There are two different versions. The origial version is an awk script
>>>> which is run when you're building the vm with make. This is executed by
>>>> default if you have awk installed.
>>>> There's another version written in smalltalk (linked by Mariano into this
>>>> thread) which is not used by VMMAker at the moment, you probably don't need
>>>> that. If you applied the latter one, you have to make sure that the first
>>>> one is not executed. You can't gnuifying the sources twice.
>>>> Since both do the same, the best you can do now is to ignore the
>>>> smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the awk
>>>> dependency from the build process, until then you shouldn't apply it if your
>>>> platform has awk installed.
>>>>
>>>>
>>>> Levente
>>>>
>>>>
>>>>
>>>>>
>>>>> Laurent Laffont
>>>>>
>>>>>
>>>>> On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
>>>>> <[hidden email]>wrote:
>>>>>
>>>>>  Does it mean latest SVN source is already "Gnuified" ?  With latest
>>>>>>> rev.
>>>>>>> I
>>>>>>>
>>>>>>>> have a little drop in benchmarks. However I'd rather put a stable
>>>>>>>>
>>>>>>> release
>>>>>>>
>>>>>>>> for Pharo 1.0 than latest trunk. What do you think ?
>>>>>>>>
>>>>>>>
>>>>>>> The so-called "gnuification" is a transformation of the interp.c file.
>>>>>>> So
>>>>>>> this is done after generating the sources with VMMaker. The cmake
>>>>>>> configuration that comes with revision 2135 does not have this step
>>>>>>> enabled,
>>>>>>> and the more recent version that I used, revision 2151, has it. The
>>>>>>> magic is
>>>>>>> in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.
>>>>>>>
>>>>>>>
>>>>>> OK thanks. I will take a look.
>>>>>>
>>>>>> Laurent Laffont
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Cheers,
>>>>>>> Adrian
>>>>>>>
>>>>>>>
>>>>>>>> Laurent Laffont
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Adrian
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Pharo-project mailing list
>>>>>>>>> [hidden email]
>>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>>>
>>>>>>>>>  _______________________________________________
>>>>>>>> Pharo-project mailing list
>>>>>>>> [hidden email]
>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Pharo-project mailing list
>>>>>>> [hidden email]
>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Levente Uzonyi-2
Forgot to add -s. Also with gcc 4.3 adding -mtune=generic gives better
results on core2.


Levente

On Sun, 28 Mar 2010, Levente Uzonyi wrote:

> Your optimization flags are probably ignored by cmake: see this thread
> http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html
>
> You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer
> -mfpmath=sse -march=native
>
>
> Levente
>
> On Sun, 28 Mar 2010, laurent laffont wrote:
>
>> More benchmarks.
>>
>> Updated procedure with gcc optimizations activated:
>> wget
>> http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
>> tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
>> cd Squeak-3.11.3.2135-pharo-src/
>> mkdir build && cd build
>> ../unix/cmake/configure  --CFLAGS="-O2"
>> make
>> sudo make install
>>
>>
>> Squeak VM 3.11.3 -r 2135 + FT2Plugin
>> ==========================================
>> 334421946 bytecodes/sec; 8026581 sends/sec
>> 334640522 bytecodes/sec; 7449884 sends/sec
>> 334421946 bytecodes/sec; 7449884 sends/sec
>> 334421946 bytecodes/sec; 7675486 sends/sec
>> 327156549 bytecodes/sec; 7598782 sends/sec
>>
>> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
>> ==========================================
>> 330109606 bytecodes/sec; 9183392 sends/sec
>> 331177231 bytecodes/sec; 9190792 sends/sec
>> 330535829 bytecodes/sec; 9198204 sends/sec
>> 329896907 bytecodes/sec; 9220511 sends/sec
>> 330963154 bytecodes/sec; 8973857 sends/sec
>>
>> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
>> ==========================================
>> 296811594 bytecodes/sec; 10138464 sends/sec
>> 296467863 bytecodes/sec; 10129460 sends/sec
>> 296639629 bytecodes/sec; 10138464 sends/sec
>> 296124927 bytecodes/sec; 7920675 sends/sec
>> 296296296 bytecodes/sec; 7926179 sends/sec
>>
>> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
>> ==========================================
>> 306586826 bytecodes/sec; 7218843 sends/sec
>> 308248043 bytecodes/sec; 7209717 sends/sec
>> 308805790 bytecodes/sec; 7223415 sends/sec
>> 309552599 bytecodes/sec; 7218843 sends/sec
>> 309927360 bytecodes/sec; 7269453 sends/sec
>>
>> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
>> ==========================================
>> 293073840 bytecodes/sec; 8807546 sends/sec
>> 292070735 bytecodes/sec; 8841684 sends/sec
>> 281628162 bytecodes/sec; 8896858 sends/sec
>> 294422081 bytecodes/sec; 8903804 sends/sec
>>
>> Laurent Laffont
>>
>>
>> 2010/3/28 Mariano Martinez Peck <[hidden email]>
>>
>>>
>>>
>>> 2010/3/27 laurent laffont <[hidden email]>
>>>
>>> OK, I've tried the Smalltalk one...
>>>>
>>>> With rev 2151 gnuification (awk) is done as I have gnu-interp.c
>>>> and gnu-interp.c.log in my build directory.
>>>>
>>>> Benchmark gives me:
>>>>
>>>> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
>>>> ==========================================
>>>> 312385600 bytecodes/sec; 7320778 sends/sec
>>>> 310868245 bytecodes/sec; 8271046 sends/sec
>>>> 310679611 bytecodes/sec; 8271046 sends/sec
>>>> 310868245 bytecodes/sec; 7232576 sends/sec
>>>> 310491206 bytecodes/sec; 8271046 sends/sec
>>>>
>>>> compared to
>>>>
>>>>   Squeak VM 3.11.3 -r 2135 + FT2Plugin
>>>> ==========================================
>>>> 334421946 bytecodes/sec; 8026581 sends/sec
>>>> 334640522 bytecodes/sec; 7449884 sends/sec
>>>> 334421946 bytecodes/sec; 7449884 sends/sec
>>>> 334421946 bytecodes/sec; 7675486 sends/sec
>>>> 327156549 bytecodes/sec; 7598782 sends/sec
>>>>
>>>> so it seems that on my machine rev 2135 without gnuification is a little
>>>> better. I have GCC 4.4.3,  Linux 32bits.
>>>>
>>>>
>>> I don't understand....it is slower with the gnuification ?
>>>
>>> weird....
>>>
>>>
>>>
>>>
>>>> Laurent Laffont
>>>>
>>>>
>>>>
>>>> On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:
>>>>
>>>>> On Sat, 27 Mar 2010, laurent laffont wrote:
>>>>>
>>>>>  I've tried gnuification on rev 2151. cmake/configure OK. But while
>>>>>> building:
>>>>>>
>>>>>>
>>>>>> /home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
>>>>>> erreur: #error GNUIFICATION FAILED ( 0 )
>>>>>>
>>>>>
>>>>> Which gnuification method did you try?
>>>>> There are two different versions. The origial version is an awk script
>>>>> which is run when you're building the vm with make. This is executed by
>>>>> default if you have awk installed.
>>>>> There's another version written in smalltalk (linked by Mariano into
>>>>> this
>>>>> thread) which is not used by VMMAker at the moment, you probably don't
>>>>> need
>>>>> that. If you applied the latter one, you have to make sure that the
>>>>> first
>>>>> one is not executed. You can't gnuifying the sources twice.
>>>>> Since both do the same, the best you can do now is to ignore the
>>>>> smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the
>>>>> awk
>>>>> dependency from the build process, until then you shouldn't apply it if
>>>>> your
>>>>> platform has awk installed.
>>>>>
>>>>>
>>>>> Levente
>>>>>
>>>>>
>>>>>
>>>>>>
>>>>>> Laurent Laffont
>>>>>>
>>>>>>
>>>>>> On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
>>>>>> <[hidden email]>wrote:
>>>>>>
>>>>>>  Does it mean latest SVN source is already "Gnuified" ?  With latest
>>>>>>>> rev.
>>>>>>>> I
>>>>>>>>
>>>>>>>>> have a little drop in benchmarks. However I'd rather put a stable
>>>>>>>>>
>>>>>>>> release
>>>>>>>>
>>>>>>>>> for Pharo 1.0 than latest trunk. What do you think ?
>>>>>>>>>
>>>>>>>>
>>>>>>>> The so-called "gnuification" is a transformation of the interp.c
>>>>>>>> file.
>>>>>>>> So
>>>>>>>> this is done after generating the sources with VMMaker. The cmake
>>>>>>>> configuration that comes with revision 2135 does not have this step
>>>>>>>> enabled,
>>>>>>>> and the more recent version that I used, revision 2151, has it. The
>>>>>>>> magic is
>>>>>>>> in the awk script in unix/cmake/gnuify.awk which produes
>>>>>>>> gnu-interp.c.
>>>>>>>>
>>>>>>>>
>>>>>>> OK thanks. I will take a look.
>>>>>>>
>>>>>>> Laurent Laffont
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Cheers,
>>>>>>>> Adrian
>>>>>>>>
>>>>>>>>
>>>>>>>>> Laurent Laffont
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Adrian
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Pharo-project mailing list
>>>>>>>>>> [hidden email]
>>>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>>>>
>>>>>>>>>>  _______________________________________________
>>>>>>>>> Pharo-project mailing list
>>>>>>>>> [hidden email]
>>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Pharo-project mailing list
>>>>>>>> [hidden email]
>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> [hidden email]
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

laurent laffont
In reply to this post by Levente Uzonyi-2
Thanks for the link. When I clean my build directory and run configure with only one option (CFLAGS="-02") then it's OK.

With several CFLAGS options it's strange, and now I understand why http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003740.html

I'm starting to think that git can be better for squeak-vm than svn, so we can propose branches with patches included....

Thanks

Laurent Laffont


On Sun, Mar 28, 2010 at 5:50 PM, Levente Uzonyi <[hidden email]> wrote:
Your optimization flags are probably ignored by cmake: see this thread http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html

You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer -mfpmath=sse -march=native


Levente


On Sun, 28 Mar 2010, laurent laffont wrote:

More benchmarks.

Updated procedure with gcc optimizations activated:
wget
http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
cd Squeak-3.11.3.2135-pharo-src/
mkdir build && cd build
../unix/cmake/configure  --CFLAGS="-O2"
make
sudo make install


Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
==========================================
330109606 bytecodes/sec; 9183392 sends/sec
331177231 bytecodes/sec; 9190792 sends/sec
330535829 bytecodes/sec; 9198204 sends/sec
329896907 bytecodes/sec; 9220511 sends/sec
330963154 bytecodes/sec; 8973857 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
==========================================
296811594 bytecodes/sec; 10138464 sends/sec
296467863 bytecodes/sec; 10129460 sends/sec
296639629 bytecodes/sec; 10138464 sends/sec
296124927 bytecodes/sec; 7920675 sends/sec
296296296 bytecodes/sec; 7926179 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
306586826 bytecodes/sec; 7218843 sends/sec
308248043 bytecodes/sec; 7209717 sends/sec
308805790 bytecodes/sec; 7223415 sends/sec
309552599 bytecodes/sec; 7218843 sends/sec
309927360 bytecodes/sec; 7269453 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
==========================================
293073840 bytecodes/sec; 8807546 sends/sec
292070735 bytecodes/sec; 8841684 sends/sec
281628162 bytecodes/sec; 8896858 sends/sec
294422081 bytecodes/sec; 8903804 sends/sec

Laurent Laffont


2010/3/28 Mariano Martinez Peck <[hidden email]>



2010/3/27 laurent laffont <[hidden email]>

OK, I've tried the Smalltalk one...

With rev 2151 gnuification (awk) is done as I have gnu-interp.c
and gnu-interp.c.log in my build directory.

Benchmark gives me:

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
312385600 bytecodes/sec; 7320778 sends/sec
310868245 bytecodes/sec; 8271046 sends/sec
310679611 bytecodes/sec; 8271046 sends/sec
310868245 bytecodes/sec; 7232576 sends/sec
310491206 bytecodes/sec; 8271046 sends/sec

compared to

 Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

so it seems that on my machine rev 2135 without gnuification is a little
better. I have GCC 4.4.3,  Linux 32bits.


I don't understand....it is slower with the gnuification ?

weird....




Laurent Laffont



On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:

On Sat, 27 Mar 2010, laurent laffont wrote:

 I've tried gnuification on rev 2151. cmake/configure OK. But while
building:


/home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
erreur: #error GNUIFICATION FAILED ( 0 )


Which gnuification method did you try?
There are two different versions. The origial version is an awk script
which is run when you're building the vm with make. This is executed by
default if you have awk installed.
There's another version written in smalltalk (linked by Mariano into this
thread) which is not used by VMMAker at the moment, you probably don't need
that. If you applied the latter one, you have to make sure that the first
one is not executed. You can't gnuifying the sources twice.
Since both do the same, the best you can do now is to ignore the
smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the awk
dependency from the build process, until then you shouldn't apply it if your
platform has awk installed.


Levente




Laurent Laffont


On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
<[hidden email]>wrote:

 Does it mean latest SVN source is already "Gnuified" ?  With latest
rev.
I

have a little drop in benchmarks. However I'd rather put a stable

release

for Pharo 1.0 than latest trunk. What do you think ?


The so-called "gnuification" is a transformation of the interp.c file.
So
this is done after generating the sources with VMMaker. The cmake
configuration that comes with revision 2135 does not have this step
enabled,
and the more recent version that I used, revision 2151, has it. The
magic is
in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.


OK thanks. I will take a look.

Laurent Laffont




Cheers,
Adrian


Laurent Laffont



Adrian


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

 _______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Levente Uzonyi-2
On Sun, 28 Mar 2010, laurent laffont wrote:

> Thanks for the link. When I clean my build directory and run configure with
> only one option (CFLAGS="-02") then it's OK.
>
> With several CFLAGS options it's strange, and now I understand why
> http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003740.html

There's a full fix here:
http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003742.html

>
> I'm starting to think that git can be better for squeak-vm than svn, so we
> can propose branches with patches included....
>

Probably yes.


Levente

> Thanks
>
> Laurent Laffont
>
>
> On Sun, Mar 28, 2010 at 5:50 PM, Levente Uzonyi <[hidden email]> wrote:
>
>> Your optimization flags are probably ignored by cmake: see this thread
>> http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html
>>
>> You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer
>> -mfpmath=sse -march=native
>>
>>
>> Levente
>>
>>
>> On Sun, 28 Mar 2010, laurent laffont wrote:
>>
>>  More benchmarks.
>>>
>>> Updated procedure with gcc optimizations activated:
>>> wget
>>> http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
>>> tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
>>> cd Squeak-3.11.3.2135-pharo-src/
>>> mkdir build && cd build
>>> ../unix/cmake/configure  --CFLAGS="-O2"
>>> make
>>> sudo make install
>>>
>>>
>>> Squeak VM 3.11.3 -r 2135 + FT2Plugin
>>> ==========================================
>>> 334421946 bytecodes/sec; 8026581 sends/sec
>>> 334640522 bytecodes/sec; 7449884 sends/sec
>>> 334421946 bytecodes/sec; 7449884 sends/sec
>>> 334421946 bytecodes/sec; 7675486 sends/sec
>>> 327156549 bytecodes/sec; 7598782 sends/sec
>>>
>>> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
>>> ==========================================
>>> 330109606 bytecodes/sec; 9183392 sends/sec
>>> 331177231 bytecodes/sec; 9190792 sends/sec
>>> 330535829 bytecodes/sec; 9198204 sends/sec
>>> 329896907 bytecodes/sec; 9220511 sends/sec
>>> 330963154 bytecodes/sec; 8973857 sends/sec
>>>
>>> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
>>> ==========================================
>>> 296811594 bytecodes/sec; 10138464 sends/sec
>>> 296467863 bytecodes/sec; 10129460 sends/sec
>>> 296639629 bytecodes/sec; 10138464 sends/sec
>>> 296124927 bytecodes/sec; 7920675 sends/sec
>>> 296296296 bytecodes/sec; 7926179 sends/sec
>>>
>>> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
>>> ==========================================
>>> 306586826 bytecodes/sec; 7218843 sends/sec
>>> 308248043 bytecodes/sec; 7209717 sends/sec
>>> 308805790 bytecodes/sec; 7223415 sends/sec
>>> 309552599 bytecodes/sec; 7218843 sends/sec
>>> 309927360 bytecodes/sec; 7269453 sends/sec
>>>
>>> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
>>> ==========================================
>>> 293073840 bytecodes/sec; 8807546 sends/sec
>>> 292070735 bytecodes/sec; 8841684 sends/sec
>>> 281628162 bytecodes/sec; 8896858 sends/sec
>>> 294422081 bytecodes/sec; 8903804 sends/sec
>>>
>>> Laurent Laffont
>>>
>>>
>>> 2010/3/28 Mariano Martinez Peck <[hidden email]>
>>>
>>>
>>>>
>>>> 2010/3/27 laurent laffont <[hidden email]>
>>>>
>>>> OK, I've tried the Smalltalk one...
>>>>
>>>>>
>>>>> With rev 2151 gnuification (awk) is done as I have gnu-interp.c
>>>>> and gnu-interp.c.log in my build directory.
>>>>>
>>>>> Benchmark gives me:
>>>>>
>>>>> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
>>>>> ==========================================
>>>>> 312385600 bytecodes/sec; 7320778 sends/sec
>>>>> 310868245 bytecodes/sec; 8271046 sends/sec
>>>>> 310679611 bytecodes/sec; 8271046 sends/sec
>>>>> 310868245 bytecodes/sec; 7232576 sends/sec
>>>>> 310491206 bytecodes/sec; 8271046 sends/sec
>>>>>
>>>>> compared to
>>>>>
>>>>>  Squeak VM 3.11.3 -r 2135 + FT2Plugin
>>>>> ==========================================
>>>>> 334421946 bytecodes/sec; 8026581 sends/sec
>>>>> 334640522 bytecodes/sec; 7449884 sends/sec
>>>>> 334421946 bytecodes/sec; 7449884 sends/sec
>>>>> 334421946 bytecodes/sec; 7675486 sends/sec
>>>>> 327156549 bytecodes/sec; 7598782 sends/sec
>>>>>
>>>>> so it seems that on my machine rev 2135 without gnuification is a little
>>>>> better. I have GCC 4.4.3,  Linux 32bits.
>>>>>
>>>>>
>>>>>  I don't understand....it is slower with the gnuification ?
>>>>
>>>> weird....
>>>>
>>>>
>>>>
>>>>
>>>>  Laurent Laffont
>>>>>
>>>>>
>>>>>
>>>>> On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:
>>>>>
>>>>>  On Sat, 27 Mar 2010, laurent laffont wrote:
>>>>>>
>>>>>>  I've tried gnuification on rev 2151. cmake/configure OK. But while
>>>>>>
>>>>>>> building:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> /home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
>>>>>>> erreur: #error GNUIFICATION FAILED ( 0 )
>>>>>>>
>>>>>>>
>>>>>> Which gnuification method did you try?
>>>>>> There are two different versions. The origial version is an awk script
>>>>>> which is run when you're building the vm with make. This is executed by
>>>>>> default if you have awk installed.
>>>>>> There's another version written in smalltalk (linked by Mariano into
>>>>>> this
>>>>>> thread) which is not used by VMMAker at the moment, you probably don't
>>>>>> need
>>>>>> that. If you applied the latter one, you have to make sure that the
>>>>>> first
>>>>>> one is not executed. You can't gnuifying the sources twice.
>>>>>> Since both do the same, the best you can do now is to ignore the
>>>>>> smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the
>>>>>> awk
>>>>>> dependency from the build process, until then you shouldn't apply it if
>>>>>> your
>>>>>> platform has awk installed.
>>>>>>
>>>>>>
>>>>>> Levente
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Laurent Laffont
>>>>>>>
>>>>>>>
>>>>>>> On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
>>>>>>> <[hidden email]>wrote:
>>>>>>>
>>>>>>>  Does it mean latest SVN source is already "Gnuified" ?  With latest
>>>>>>>
>>>>>>>> rev.
>>>>>>>>> I
>>>>>>>>>
>>>>>>>>>  have a little drop in benchmarks. However I'd rather put a stable
>>>>>>>>>>
>>>>>>>>>>  release
>>>>>>>>>
>>>>>>>>>  for Pharo 1.0 than latest trunk. What do you think ?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> The so-called "gnuification" is a transformation of the interp.c
>>>>>>>>> file.
>>>>>>>>> So
>>>>>>>>> this is done after generating the sources with VMMaker. The cmake
>>>>>>>>> configuration that comes with revision 2135 does not have this step
>>>>>>>>> enabled,
>>>>>>>>> and the more recent version that I used, revision 2151, has it. The
>>>>>>>>> magic is
>>>>>>>>> in the awk script in unix/cmake/gnuify.awk which produes
>>>>>>>>> gnu-interp.c.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  OK thanks. I will take a look.
>>>>>>>>
>>>>>>>> Laurent Laffont
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>  Cheers,
>>>>>>>>> Adrian
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  Laurent Laffont
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  Adrian
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Pharo-project mailing list
>>>>>>>>>>> [hidden email]
>>>>>>>>>>>
>>>>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>>>>>
>>>>>>>>>>>  _______________________________________________
>>>>>>>>>>>
>>>>>>>>>> Pharo-project mailing list
>>>>>>>>>> [hidden email]
>>>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Pharo-project mailing list
>>>>>>>>> [hidden email]
>>>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>  _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> [hidden email]
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> [hidden email]
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>>
>>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Mariano Martinez Peck
In reply to this post by Levente Uzonyi-2
Hi Laurent. I have been trying to compile the VM directly from your sources, but I found some problems.

The first one was that I haven't installed cmake. Thus, I have to do a sudo apt-get install cmake. After that, it could do the configure.

Then, the second error is that when trying to configure, there are some libraries or headers not found. I attach the output of the configure command.

In addition, is the output of the configure written somewhere like config.log or similar ?

If you notice the file, there are several things not found, for example:

!! XDisplayControlPlugin disabled
!! vm-display-Quartz disabled
!! vm-sound-MacOSX disabled
-- vm-sound-Sun: sys/audioio.h not found
-- vm-sound-Sun: sun/audioio.h not found
-- vm-sound-Sun: /usr/include/stropts.h
!! vm-sound-Sun disabled
-- Looking for sys/select.h
-- Looking for sys/select.h - found
!! vm-display-X11 disabled
-- vm-sound-NAS: audio/audio.h not found
-- vm-sound-NAS: libaudio not found
!! vm-sound-NAS disabled
-- vm-display-fbdev: /usr/include/linux/fb.h
-- vm-sound-pulse: libpulse-simple not found
!! vm-sound-pulse disabled
-- vm-sound-ALSA: alsa/asoundlib.h not found
-- vm-sound-ALSA: libasound not found
!! vm-sound-ALSA disabled
-- vm-sound-OSS: alsa/asoundlib.h not found
-- vm-sound-OSS: libasound not found
!! vm-sound-OSS disabled


See that it cannot find the vm-sound-OSS.

Then, I did a make and a make install. But when trying to run squeak, I have this error:

ubuntu@ubuntu-desktop:~/Pharo/vm/Squeak-3.11.3.2135-pharo-src/build$ squeak
+ exec padsp /usr/local/lib/squeak/3.11.13-2135/squeakvm -pathenc UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss
could not find module vm-sound-OSS
Aborted


Of course it cannto find it..as I already know that from the configure. So..here I have 2 questions:

1) how can I install the things I am missing ?

2) why the "squeak" executable has "hardcoded" the parameters "-pathenc UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss"
is that correct ?  do I ALWAYS want all those parameters ? And if I don't want them, how can I execute a "clean" squeak ?


Finally, in another thread, Eliot told me how to be able to debug SqueakVM with Gdb and threads. He told me to do:

../unix/cmake/configure CFLAGS="-g3 -pthread" LIBS=-lpthread

but configure says:

unknown option: CFLAGS=-g3 -pthread
unknown option: LIBS=-lpthread

Do you know how can I do this ?   should I send this email to vm mailing list ?

Thanks a lot in advance! 

Mariano


On Sun, Mar 28, 2010 at 12:50 PM, Levente Uzonyi <[hidden email]> wrote:
Your optimization flags are probably ignored by cmake: see this thread http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html

You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer -mfpmath=sse -march=native


Levente


On Sun, 28 Mar 2010, laurent laffont wrote:

More benchmarks.

Updated procedure with gcc optimizations activated:
wget
http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
cd Squeak-3.11.3.2135-pharo-src/
mkdir build && cd build
../unix/cmake/configure  --CFLAGS="-O2"
make
sudo make install


Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
==========================================
330109606 bytecodes/sec; 9183392 sends/sec
331177231 bytecodes/sec; 9190792 sends/sec
330535829 bytecodes/sec; 9198204 sends/sec
329896907 bytecodes/sec; 9220511 sends/sec
330963154 bytecodes/sec; 8973857 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
==========================================
296811594 bytecodes/sec; 10138464 sends/sec
296467863 bytecodes/sec; 10129460 sends/sec
296639629 bytecodes/sec; 10138464 sends/sec
296124927 bytecodes/sec; 7920675 sends/sec
296296296 bytecodes/sec; 7926179 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
306586826 bytecodes/sec; 7218843 sends/sec
308248043 bytecodes/sec; 7209717 sends/sec
308805790 bytecodes/sec; 7223415 sends/sec
309552599 bytecodes/sec; 7218843 sends/sec
309927360 bytecodes/sec; 7269453 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
==========================================
293073840 bytecodes/sec; 8807546 sends/sec
292070735 bytecodes/sec; 8841684 sends/sec
281628162 bytecodes/sec; 8896858 sends/sec
294422081 bytecodes/sec; 8903804 sends/sec

Laurent Laffont


2010/3/28 Mariano Martinez Peck <[hidden email]>



2010/3/27 laurent laffont <[hidden email]>

OK, I've tried the Smalltalk one...

With rev 2151 gnuification (awk) is done as I have gnu-interp.c
and gnu-interp.c.log in my build directory.

Benchmark gives me:

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
312385600 bytecodes/sec; 7320778 sends/sec
310868245 bytecodes/sec; 8271046 sends/sec
310679611 bytecodes/sec; 8271046 sends/sec
310868245 bytecodes/sec; 7232576 sends/sec
310491206 bytecodes/sec; 8271046 sends/sec

compared to

 Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

so it seems that on my machine rev 2135 without gnuification is a little
better. I have GCC 4.4.3,  Linux 32bits.


I don't understand....it is slower with the gnuification ?

weird....




Laurent Laffont



On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:

On Sat, 27 Mar 2010, laurent laffont wrote:

 I've tried gnuification on rev 2151. cmake/configure OK. But while
building:


/home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
erreur: #error GNUIFICATION FAILED ( 0 )


Which gnuification method did you try?
There are two different versions. The origial version is an awk script
which is run when you're building the vm with make. This is executed by
default if you have awk installed.
There's another version written in smalltalk (linked by Mariano into this
thread) which is not used by VMMAker at the moment, you probably don't need
that. If you applied the latter one, you have to make sure that the first
one is not executed. You can't gnuifying the sources twice.
Since both do the same, the best you can do now is to ignore the
smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the awk
dependency from the build process, until then you shouldn't apply it if your
platform has awk installed.


Levente




Laurent Laffont


On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
<[hidden email]>wrote:

 Does it mean latest SVN source is already "Gnuified" ?  With latest
rev.
I

have a little drop in benchmarks. However I'd rather put a stable

release

for Pharo 1.0 than latest trunk. What do you think ?


The so-called "gnuification" is a transformation of the interp.c file.
So
this is done after generating the sources with VMMaker. The cmake
configuration that comes with revision 2135 does not have this step
enabled,
and the more recent version that I used, revision 2151, has it. The
magic is
in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.


OK thanks. I will take a look.

Laurent Laffont




Cheers,
Adrian


Laurent Laffont



Adrian


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

 _______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

laurent laffont

2010/3/28 Mariano Martinez Peck <[hidden email]>
Hi Laurent. I have been trying to compile the VM directly from your sources, but I found some problems.

The first one was that I haven't installed cmake. Thus, I have to do a sudo apt-get install cmake. After that, it could do the configure.

Then, the second error is that when trying to configure, there are some libraries or headers not found. I attach the output of the configure command.

In debian-based distro headers are in separate packages, the ones that ends with -dev. (flamewar inside:) that's why I've switched to ArchLinux, far more simple).

So when a header is not found, like asoundlib.h, the easy way is to go to http://packages.ubuntu.com/ , go down the page to "Search the contents of packages" and fill the search field with the name of file. 
You will see that it's libasound2-dev package.

In debian (I don't really know ubuntu), you have apt-file to search for a package's file:
apt-file search asoundlib.h

And a really great command is "auto-apt run" which installs automagically all needed packages for a given command. You can try:
auto-apt run ../unix/cmake/configure

when it detects a missing header, it will search the corresponding package and prompt you to install it.

 

In addition, is the output of the configure written somewhere like config.log or similar ?

It seems no. You can do 
 ../unix/cmake/configure > config.log

 

If you notice the file, there are several things not found, for example:

!! XDisplayControlPlugin disabled
!! vm-display-Quartz disabled
!! vm-sound-MacOSX disabled
-- vm-sound-Sun: sys/audioio.h not found
-- vm-sound-Sun: sun/audioio.h not found
-- vm-sound-Sun: /usr/include/stropts.h
!! vm-sound-Sun disabled
-- Looking for sys/select.h
-- Looking for sys/select.h - found
!! vm-display-X11 disabled
-- vm-sound-NAS: audio/audio.h not found
-- vm-sound-NAS: libaudio not found
!! vm-sound-NAS disabled
-- vm-display-fbdev: /usr/include/linux/fb.h
-- vm-sound-pulse: libpulse-simple not found
!! vm-sound-pulse disabled
-- vm-sound-ALSA: alsa/asoundlib.h not found
-- vm-sound-ALSA: libasound not found
!! vm-sound-ALSA disabled
-- vm-sound-OSS: alsa/asoundlib.h not found
-- vm-sound-OSS: libasound not found
!! vm-sound-OSS disabled


See that it cannot find the vm-sound-OSS.

libasound-dev package 

 

Then, I did a make and a make install. But when trying to run squeak, I have this error:

ubuntu@ubuntu-desktop:~/Pharo/vm/Squeak-3.11.3.2135-pharo-src/build$ squeak
+ exec padsp /usr/local/lib/squeak/3.11.13-2135/squeakvm -pathenc UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss
could not find module vm-sound-OSS
Aborted


Of course it cannto find it..as I already know that from the configure. So..here I have 2 questions:

1) how can I install the things I am missing ?

Now you know :)
 

2) why the "squeak" executable has "hardcoded" the parameters "-pathenc UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss"
is that correct ?  do I ALWAYS want all those parameters ? And if I don't want them, how can I execute a "clean" squeak ?


May be you can remove sound related plugin...  take a look at 
../unix/cmake/configure  --help
...
--without-<plugin>    do not build the named plugin
....

You can also generate your own src using the Pharo-Core with VMMaker image I've made http://lolgzs.free.fr/pharo/squeak-vm/PharoCore-1.0-VMMaker-1.2.tar.gz

VMMaker is already configured. Just remove the sound plugin from external plugins, adapt paths to your system and click "Entire".

 

Finally, in another thread, Eliot told me how to be able to debug SqueakVM with Gdb and threads. He told me to do:

../unix/cmake/configure CFLAGS="-g3 -pthread" LIBS=-lpthread

but configure says:

unknown option: CFLAGS=-g3 -pthread
unknown option: LIBS=-lpthread

you forgot the --

../unix/cmake/configure --CFLAGS="-g3-pthread"

Laurent Laffont
 

Do you know how can I do this ?   should I send this email to vm mailing list ?

Thanks a lot in advance! 

Mariano



On Sun, Mar 28, 2010 at 12:50 PM, Levente Uzonyi <[hidden email]> wrote:
Your optimization flags are probably ignored by cmake: see this thread http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html

You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer -mfpmath=sse -march=native


Levente


On Sun, 28 Mar 2010, laurent laffont wrote:

More benchmarks.

Updated procedure with gcc optimizations activated:
wget
http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
cd Squeak-3.11.3.2135-pharo-src/
mkdir build && cd build
../unix/cmake/configure  --CFLAGS="-O2"
make
sudo make install


Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
==========================================
330109606 bytecodes/sec; 9183392 sends/sec
331177231 bytecodes/sec; 9190792 sends/sec
330535829 bytecodes/sec; 9198204 sends/sec
329896907 bytecodes/sec; 9220511 sends/sec
330963154 bytecodes/sec; 8973857 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
==========================================
296811594 bytecodes/sec; 10138464 sends/sec
296467863 bytecodes/sec; 10129460 sends/sec
296639629 bytecodes/sec; 10138464 sends/sec
296124927 bytecodes/sec; 7920675 sends/sec
296296296 bytecodes/sec; 7926179 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
306586826 bytecodes/sec; 7218843 sends/sec
308248043 bytecodes/sec; 7209717 sends/sec
308805790 bytecodes/sec; 7223415 sends/sec
309552599 bytecodes/sec; 7218843 sends/sec
309927360 bytecodes/sec; 7269453 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
==========================================
293073840 bytecodes/sec; 8807546 sends/sec
292070735 bytecodes/sec; 8841684 sends/sec
281628162 bytecodes/sec; 8896858 sends/sec
294422081 bytecodes/sec; 8903804 sends/sec

Laurent Laffont


2010/3/28 Mariano Martinez Peck <[hidden email]>



2010/3/27 laurent laffont <[hidden email]>

OK, I've tried the Smalltalk one...

With rev 2151 gnuification (awk) is done as I have gnu-interp.c
and gnu-interp.c.log in my build directory.

Benchmark gives me:

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
312385600 bytecodes/sec; 7320778 sends/sec
310868245 bytecodes/sec; 8271046 sends/sec
310679611 bytecodes/sec; 8271046 sends/sec
310868245 bytecodes/sec; 7232576 sends/sec
310491206 bytecodes/sec; 8271046 sends/sec

compared to

 Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

so it seems that on my machine rev 2135 without gnuification is a little
better. I have GCC 4.4.3,  Linux 32bits.


I don't understand....it is slower with the gnuification ?

weird....




Laurent Laffont



On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:

On Sat, 27 Mar 2010, laurent laffont wrote:

 I've tried gnuification on rev 2151. cmake/configure OK. But while
building:


/home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
erreur: #error GNUIFICATION FAILED ( 0 )


Which gnuification method did you try?
There are two different versions. The origial version is an awk script
which is run when you're building the vm with make. This is executed by
default if you have awk installed.
There's another version written in smalltalk (linked by Mariano into this
thread) which is not used by VMMAker at the moment, you probably don't need
that. If you applied the latter one, you have to make sure that the first
one is not executed. You can't gnuifying the sources twice.
Since both do the same, the best you can do now is to ignore the
smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the awk
dependency from the build process, until then you shouldn't apply it if your
platform has awk installed.


Levente




Laurent Laffont


On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
<[hidden email]>wrote:

 Does it mean latest SVN source is already "Gnuified" ?  With latest
rev.
I

have a little drop in benchmarks. However I'd rather put a stable

release

for Pharo 1.0 than latest trunk. What do you think ?


The so-called "gnuification" is a transformation of the interp.c file.
So
this is done after generating the sources with VMMaker. The cmake
configuration that comes with revision 2135 does not have this step
enabled,
and the more recent version that I used, revision 2151, has it. The
magic is
in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.


OK thanks. I will take a look.

Laurent Laffont




Cheers,
Adrian


Laurent Laffont



Adrian


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

 _______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

laurent laffont
In reply to this post by Levente Uzonyi-2
Thank you !

Here the result:

Squeak VM 3.11.3 -r 2135 + FT2Plugin + --CFLAGS="-O3 -fomit-frame-pointer -mfpmath=sse -march=native -s -mtune=generic"
==========================================
339072847 bytecodes/sec; 9560580 sends/sec
338848444 bytecodes/sec; 9552573 sends/sec
338177014 bytecodes/sec; 9473233 sends/sec
337953795 bytecodes/sec; 9496896 sends/sec
338848444 bytecodes/sec; 9496896 sends/sec

so the best performance I have so far.

Laurent Laffont


On Sun, Mar 28, 2010 at 6:10 PM, Levente Uzonyi <[hidden email]> wrote:
On Sun, 28 Mar 2010, laurent laffont wrote:

Thanks for the link. When I clean my build directory and run configure with
only one option (CFLAGS="-02") then it's OK.

With several CFLAGS options it's strange, and now I understand why
http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003740.html

There's a full fix here: http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003742.html



I'm starting to think that git can be better for squeak-vm than svn, so we
can propose branches with patches included....


Probably yes.


Levente


Thanks

Laurent Laffont


On Sun, Mar 28, 2010 at 5:50 PM, Levente Uzonyi <[hidden email]> wrote:

Your optimization flags are probably ignored by cmake: see this thread
http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html

You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer
-mfpmath=sse -march=native


Levente


On Sun, 28 Mar 2010, laurent laffont wrote:

 More benchmarks.

Updated procedure with gcc optimizations activated:
wget
http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
cd Squeak-3.11.3.2135-pharo-src/
mkdir build && cd build
../unix/cmake/configure  --CFLAGS="-O2"
make
sudo make install


Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
==========================================
330109606 bytecodes/sec; 9183392 sends/sec
331177231 bytecodes/sec; 9190792 sends/sec
330535829 bytecodes/sec; 9198204 sends/sec
329896907 bytecodes/sec; 9220511 sends/sec
330963154 bytecodes/sec; 8973857 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
==========================================
296811594 bytecodes/sec; 10138464 sends/sec
296467863 bytecodes/sec; 10129460 sends/sec
296639629 bytecodes/sec; 10138464 sends/sec
296124927 bytecodes/sec; 7920675 sends/sec
296296296 bytecodes/sec; 7926179 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
306586826 bytecodes/sec; 7218843 sends/sec
308248043 bytecodes/sec; 7209717 sends/sec
308805790 bytecodes/sec; 7223415 sends/sec
309552599 bytecodes/sec; 7218843 sends/sec
309927360 bytecodes/sec; 7269453 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
==========================================
293073840 bytecodes/sec; 8807546 sends/sec
292070735 bytecodes/sec; 8841684 sends/sec
281628162 bytecodes/sec; 8896858 sends/sec
294422081 bytecodes/sec; 8903804 sends/sec

Laurent Laffont


2010/3/28 Mariano Martinez Peck <[hidden email]>



2010/3/27 laurent laffont <[hidden email]>

OK, I've tried the Smalltalk one...


With rev 2151 gnuification (awk) is done as I have gnu-interp.c
and gnu-interp.c.log in my build directory.

Benchmark gives me:

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
312385600 bytecodes/sec; 7320778 sends/sec
310868245 bytecodes/sec; 8271046 sends/sec
310679611 bytecodes/sec; 8271046 sends/sec
310868245 bytecodes/sec; 7232576 sends/sec
310491206 bytecodes/sec; 8271046 sends/sec

compared to

 Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

so it seems that on my machine rev 2135 without gnuification is a little
better. I have GCC 4.4.3,  Linux 32bits.


 I don't understand....it is slower with the gnuification ?

weird....




 Laurent Laffont



On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:

 On Sat, 27 Mar 2010, laurent laffont wrote:

 I've tried gnuification on rev 2151. cmake/configure OK. But while

building:



/home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
erreur: #error GNUIFICATION FAILED ( 0 )


Which gnuification method did you try?
There are two different versions. The origial version is an awk script
which is run when you're building the vm with make. This is executed by
default if you have awk installed.
There's another version written in smalltalk (linked by Mariano into
this
thread) which is not used by VMMAker at the moment, you probably don't
need
that. If you applied the latter one, you have to make sure that the
first
one is not executed. You can't gnuifying the sources twice.
Since both do the same, the best you can do now is to ignore the
smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the
awk
dependency from the build process, until then you shouldn't apply it if
your
platform has awk installed.


Levente




Laurent Laffont


On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
<[hidden email]>wrote:

 Does it mean latest SVN source is already "Gnuified" ?  With latest

rev.
I

 have a little drop in benchmarks. However I'd rather put a stable

 release

 for Pharo 1.0 than latest trunk. What do you think ?


The so-called "gnuification" is a transformation of the interp.c
file.
So
this is done after generating the sources with VMMaker. The cmake
configuration that comes with revision 2135 does not have this step
enabled,
and the more recent version that I used, revision 2151, has it. The
magic is
in the awk script in unix/cmake/gnuify.awk which produes
gnu-interp.c.


 OK thanks. I will take a look.

Laurent Laffont




 Cheers,
Adrian


 Laurent Laffont



 Adrian


_______________________________________________
Pharo-project mailing list
[hidden email]

http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

 _______________________________________________

Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





 _______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

laurent laffont
I've updated the source archive with Levente's patch which fixes multiple CFLAGS options.


Laurent Laffont


On Sun, Mar 28, 2010 at 7:42 PM, laurent laffont <[hidden email]> wrote:
Thank you !

Here the result:

Squeak VM 3.11.3 -r 2135 + FT2Plugin + --CFLAGS="-O3 -fomit-frame-pointer -mfpmath=sse -march=native -s -mtune=generic"
==========================================
339072847 bytecodes/sec; 9560580 sends/sec
338848444 bytecodes/sec; 9552573 sends/sec
338177014 bytecodes/sec; 9473233 sends/sec
337953795 bytecodes/sec; 9496896 sends/sec
338848444 bytecodes/sec; 9496896 sends/sec

so the best performance I have so far.

Laurent Laffont



On Sun, Mar 28, 2010 at 6:10 PM, Levente Uzonyi <[hidden email]> wrote:
On Sun, 28 Mar 2010, laurent laffont wrote:

Thanks for the link. When I clean my build directory and run configure with
only one option (CFLAGS="-02") then it's OK.

With several CFLAGS options it's strange, and now I understand why
http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003740.html

There's a full fix here: http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003742.html



I'm starting to think that git can be better for squeak-vm than svn, so we
can propose branches with patches included....


Probably yes.


Levente


Thanks

Laurent Laffont


On Sun, Mar 28, 2010 at 5:50 PM, Levente Uzonyi <[hidden email]> wrote:

Your optimization flags are probably ignored by cmake: see this thread
http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html

You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer
-mfpmath=sse -march=native


Levente


On Sun, 28 Mar 2010, laurent laffont wrote:

 More benchmarks.

Updated procedure with gcc optimizations activated:
wget
http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
cd Squeak-3.11.3.2135-pharo-src/
mkdir build && cd build
../unix/cmake/configure  --CFLAGS="-O2"
make
sudo make install


Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
==========================================
330109606 bytecodes/sec; 9183392 sends/sec
331177231 bytecodes/sec; 9190792 sends/sec
330535829 bytecodes/sec; 9198204 sends/sec
329896907 bytecodes/sec; 9220511 sends/sec
330963154 bytecodes/sec; 8973857 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
==========================================
296811594 bytecodes/sec; 10138464 sends/sec
296467863 bytecodes/sec; 10129460 sends/sec
296639629 bytecodes/sec; 10138464 sends/sec
296124927 bytecodes/sec; 7920675 sends/sec
296296296 bytecodes/sec; 7926179 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
306586826 bytecodes/sec; 7218843 sends/sec
308248043 bytecodes/sec; 7209717 sends/sec
308805790 bytecodes/sec; 7223415 sends/sec
309552599 bytecodes/sec; 7218843 sends/sec
309927360 bytecodes/sec; 7269453 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
==========================================
293073840 bytecodes/sec; 8807546 sends/sec
292070735 bytecodes/sec; 8841684 sends/sec
281628162 bytecodes/sec; 8896858 sends/sec
294422081 bytecodes/sec; 8903804 sends/sec

Laurent Laffont


2010/3/28 Mariano Martinez Peck <[hidden email]>



2010/3/27 laurent laffont <[hidden email]>

OK, I've tried the Smalltalk one...


With rev 2151 gnuification (awk) is done as I have gnu-interp.c
and gnu-interp.c.log in my build directory.

Benchmark gives me:

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
312385600 bytecodes/sec; 7320778 sends/sec
310868245 bytecodes/sec; 8271046 sends/sec
310679611 bytecodes/sec; 8271046 sends/sec
310868245 bytecodes/sec; 7232576 sends/sec
310491206 bytecodes/sec; 8271046 sends/sec

compared to

 Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

so it seems that on my machine rev 2135 without gnuification is a little
better. I have GCC 4.4.3,  Linux 32bits.


 I don't understand....it is slower with the gnuification ?

weird....




 Laurent Laffont



On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:

 On Sat, 27 Mar 2010, laurent laffont wrote:

 I've tried gnuification on rev 2151. cmake/configure OK. But while

building:



/home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
erreur: #error GNUIFICATION FAILED ( 0 )


Which gnuification method did you try?
There are two different versions. The origial version is an awk script
which is run when you're building the vm with make. This is executed by
default if you have awk installed.
There's another version written in smalltalk (linked by Mariano into
this
thread) which is not used by VMMAker at the moment, you probably don't
need
that. If you applied the latter one, you have to make sure that the
first
one is not executed. You can't gnuifying the sources twice.
Since both do the same, the best you can do now is to ignore the
smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the
awk
dependency from the build process, until then you shouldn't apply it if
your
platform has awk installed.


Levente




Laurent Laffont


On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
<[hidden email]>wrote:

 Does it mean latest SVN source is already "Gnuified" ?  With latest

rev.
I

 have a little drop in benchmarks. However I'd rather put a stable

 release

 for Pharo 1.0 than latest trunk. What do you think ?


The so-called "gnuification" is a transformation of the interp.c
file.
So
this is done after generating the sources with VMMaker. The cmake
configuration that comes with revision 2135 does not have this step
enabled,
and the more recent version that I used, revision 2151, has it. The
magic is
in the awk script in unix/cmake/gnuify.awk which produes
gnu-interp.c.


 OK thanks. I will take a look.

Laurent Laffont




 Cheers,
Adrian


 Laurent Laffont



 Adrian


_______________________________________________
Pharo-project mailing list
[hidden email]

http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

 _______________________________________________

Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





 _______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Stéphane Ducasse
thanks!

Indeed may be this is time to start a git for the VMs source code :)

Stef
On Mar 28, 2010, at 9:41 PM, laurent laffont wrote:

> I've updated the source archive with Levente's patch which fixes multiple CFLAGS options.
>
> http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
>
> Laurent Laffont
>
>
> On Sun, Mar 28, 2010 at 7:42 PM, laurent laffont <[hidden email]> wrote:
> Thank you !
>
> Here the result:
>
> Squeak VM 3.11.3 -r 2135 + FT2Plugin + --CFLAGS="-O3 -fomit-frame-pointer -mfpmath=sse -march=native -s -mtune=generic"
> ==========================================
> 339072847 bytecodes/sec; 9560580 sends/sec
> 338848444 bytecodes/sec; 9552573 sends/sec
> 338177014 bytecodes/sec; 9473233 sends/sec
> 337953795 bytecodes/sec; 9496896 sends/sec
> 338848444 bytecodes/sec; 9496896 sends/sec
>
> so the best performance I have so far.
>
> Laurent Laffont
>
>
>
> On Sun, Mar 28, 2010 at 6:10 PM, Levente Uzonyi <[hidden email]> wrote:
> On Sun, 28 Mar 2010, laurent laffont wrote:
>
> Thanks for the link. When I clean my build directory and run configure with
> only one option (CFLAGS="-02") then it's OK.
>
> With several CFLAGS options it's strange, and now I understand why
> http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003740.html
>
> There's a full fix here: http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003742.html
>
>
>
> I'm starting to think that git can be better for squeak-vm than svn, so we
> can propose branches with patches included....
>
>
> Probably yes.
>
>
> Levente
>
>
> Thanks
>
> Laurent Laffont
>
>
> On Sun, Mar 28, 2010 at 5:50 PM, Levente Uzonyi <[hidden email]> wrote:
>
> Your optimization flags are probably ignored by cmake: see this thread
> http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html
>
> You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer
> -mfpmath=sse -march=native
>
>
> Levente
>
>
> On Sun, 28 Mar 2010, laurent laffont wrote:
>
>  More benchmarks.
>
> Updated procedure with gcc optimizations activated:
> wget
> http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
> tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
> cd Squeak-3.11.3.2135-pharo-src/
> mkdir build && cd build
> ../unix/cmake/configure  --CFLAGS="-O2"
> make
> sudo make install
>
>
> Squeak VM 3.11.3 -r 2135 + FT2Plugin
> ==========================================
> 334421946 bytecodes/sec; 8026581 sends/sec
> 334640522 bytecodes/sec; 7449884 sends/sec
> 334421946 bytecodes/sec; 7449884 sends/sec
> 334421946 bytecodes/sec; 7675486 sends/sec
> 327156549 bytecodes/sec; 7598782 sends/sec
>
> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
> ==========================================
> 330109606 bytecodes/sec; 9183392 sends/sec
> 331177231 bytecodes/sec; 9190792 sends/sec
> 330535829 bytecodes/sec; 9198204 sends/sec
> 329896907 bytecodes/sec; 9220511 sends/sec
> 330963154 bytecodes/sec; 8973857 sends/sec
>
> Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
> ==========================================
> 296811594 bytecodes/sec; 10138464 sends/sec
> 296467863 bytecodes/sec; 10129460 sends/sec
> 296639629 bytecodes/sec; 10138464 sends/sec
> 296124927 bytecodes/sec; 7920675 sends/sec
> 296296296 bytecodes/sec; 7926179 sends/sec
>
> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
> ==========================================
> 306586826 bytecodes/sec; 7218843 sends/sec
> 308248043 bytecodes/sec; 7209717 sends/sec
> 308805790 bytecodes/sec; 7223415 sends/sec
> 309552599 bytecodes/sec; 7218843 sends/sec
> 309927360 bytecodes/sec; 7269453 sends/sec
>
> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
> ==========================================
> 293073840 bytecodes/sec; 8807546 sends/sec
> 292070735 bytecodes/sec; 8841684 sends/sec
> 281628162 bytecodes/sec; 8896858 sends/sec
> 294422081 bytecodes/sec; 8903804 sends/sec
>
> Laurent Laffont
>
>
> 2010/3/28 Mariano Martinez Peck <[hidden email]>
>
>
>
> 2010/3/27 laurent laffont <[hidden email]>
>
> OK, I've tried the Smalltalk one...
>
>
> With rev 2151 gnuification (awk) is done as I have gnu-interp.c
> and gnu-interp.c.log in my build directory.
>
> Benchmark gives me:
>
> Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
> ==========================================
> 312385600 bytecodes/sec; 7320778 sends/sec
> 310868245 bytecodes/sec; 8271046 sends/sec
> 310679611 bytecodes/sec; 8271046 sends/sec
> 310868245 bytecodes/sec; 7232576 sends/sec
> 310491206 bytecodes/sec; 8271046 sends/sec
>
> compared to
>
>  Squeak VM 3.11.3 -r 2135 + FT2Plugin
> ==========================================
> 334421946 bytecodes/sec; 8026581 sends/sec
> 334640522 bytecodes/sec; 7449884 sends/sec
> 334421946 bytecodes/sec; 7449884 sends/sec
> 334421946 bytecodes/sec; 7675486 sends/sec
> 327156549 bytecodes/sec; 7598782 sends/sec
>
> so it seems that on my machine rev 2135 without gnuification is a little
> better. I have GCC 4.4.3,  Linux 32bits.
>
>
>  I don't understand....it is slower with the gnuification ?
>
> weird....
>
>
>
>
>  Laurent Laffont
>
>
>
> On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:
>
>  On Sat, 27 Mar 2010, laurent laffont wrote:
>
>  I've tried gnuification on rev 2151. cmake/configure OK. But while
>
> building:
>
>
>
> /home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
> erreur: #error GNUIFICATION FAILED ( 0 )
>
>
> Which gnuification method did you try?
> There are two different versions. The origial version is an awk script
> which is run when you're building the vm with make. This is executed by
> default if you have awk installed.
> There's another version written in smalltalk (linked by Mariano into
> this
> thread) which is not used by VMMAker at the moment, you probably don't
> need
> that. If you applied the latter one, you have to make sure that the
> first
> one is not executed. You can't gnuifying the sources twice.
> Since both do the same, the best you can do now is to ignore the
> smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the
> awk
> dependency from the build process, until then you shouldn't apply it if
> your
> platform has awk installed.
>
>
> Levente
>
>
>
>
> Laurent Laffont
>
>
> On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
> <[hidden email]>wrote:
>
>  Does it mean latest SVN source is already "Gnuified" ?  With latest
>
> rev.
> I
>
>  have a little drop in benchmarks. However I'd rather put a stable
>
>  release
>
>  for Pharo 1.0 than latest trunk. What do you think ?
>
>
> The so-called "gnuification" is a transformation of the interp.c
> file.
> So
> this is done after generating the sources with VMMaker. The cmake
> configuration that comes with revision 2135 does not have this step
> enabled,
> and the more recent version that I used, revision 2151, has it. The
> magic is
> in the awk script in unix/cmake/gnuify.awk which produes
> gnu-interp.c.
>
>
>  OK thanks. I will take a look.
>
> Laurent Laffont
>
>
>
>
>  Cheers,
> Adrian
>
>
>  Laurent Laffont
>
>
>
>  Adrian
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
>
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>  _______________________________________________
>
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
>
>
>  _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Mariano Martinez Peck
In reply to this post by laurent laffont


2010/3/28 laurent laffont <[hidden email]>

2010/3/28 Mariano Martinez Peck <[hidden email]>
Hi Laurent. I have been trying to compile the VM directly from your sources, but I found some problems.


The first one was that I haven't installed cmake. Thus, I have to do a sudo apt-get install cmake. After that, it could do the configure.

Then, the second error is that when trying to configure, there are some libraries or headers not found. I attach the output of the configure command.

In debian-based distro headers are in separate packages, the ones that ends with -dev. (flamewar inside:) that's why I've switched to ArchLinux, far more simple).


Yes. I know that problem ;)   With SqueakDBX I had the same problem when installing the dev packages of the database client libraries.
 
So when a header is not found, like asoundlib.h, the easy way is to go to http://packages.ubuntu.com/ , go down the page to "Search the contents of packages" and fill the search field with the name of file. 
You will see that it's libasound2-dev package.


Good link! I didn't know how to easily search it. Thanks
 
In debian (I don't really know ubuntu), you have apt-file to search for a package's file:
apt-file search asoundlib.h

And a really great command is "auto-apt run" which installs automagically all needed packages for a given command. You can try:
auto-apt run ../unix/cmake/configure

when it detects a missing header, it will search the corresponding package and prompt you to install it.

 

I tried both tools but don't seem to work...I don't know why. They just do nothing. But anyway, I do it manually :)

If someone is interested, these are all the packages I needed to install in order not to have problems in my Ubuntu 9.10:

sudo apt-get install linux-libc-dev libecasound2.2-dev libasound2-dev libc6-dev gnulib libc6-dev libpulse-dev libxrender-dev uuid-dev

 

In addition, is the output of the configure written somewhere like config.log or similar ?

It seems no. You can do 
 ../unix/cmake/configure > config.log


yes, thanks :)
 
 

2) why the "squeak" executable has "hardcoded" the parameters "-pathenc UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss"
is that correct ?  do I ALWAYS want all those parameters ? And if I don't want them, how can I execute a "clean" squeak ?


May be you can remove sound related plugin...  take a look at 
../unix/cmake/configure  --help
...
--without-<plugin>    do not build the named plugin
....


Ok.....but not only plugins. For exaple, if I don't want UTF-8 ?

 

You can also generate your own src using the Pharo-Core with VMMaker image I've made http://lolgzs.free.fr/pharo/squeak-vm/PharoCore-1.0-VMMaker-1.2.tar.gz

VMMaker is already configured. Just remove the sound plugin from external plugins, adapt paths to your system and click "Entire".


Thanks. I did this several times, but in MacOS, not linux. But this step is the same :)

 
 

Finally, in another thread, Eliot told me how to be able to debug SqueakVM with Gdb and threads. He told me to do:

../unix/cmake/configure CFLAGS="-g3 -pthread" LIBS=-lpthread

but configure says:

unknown option: CFLAGS=-g3 -pthread
unknown option: LIBS=-lpthread

you forgot the --



ufff.....what an idiot...thanks!  did you already discovered I am a newbie here ? :)

Thanks for everything.

Mariano

 
../unix/cmake/configure --CFLAGS="-g3-pthread"

Laurent Laffont
 

Do you know how can I do this ?   should I send this email to vm mailing list ?

Thanks a lot in advance! 

Mariano



On Sun, Mar 28, 2010 at 12:50 PM, Levente Uzonyi <[hidden email]> wrote:
Your optimization flags are probably ignored by cmake: see this thread http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html

You could also give these flags a try on x86 cpus: -O3 -fomit-frame-pointer -mfpmath=sse -march=native


Levente


On Sun, 28 Mar 2010, laurent laffont wrote:

More benchmarks.

Updated procedure with gcc optimizations activated:
wget
http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
cd Squeak-3.11.3.2135-pharo-src/
mkdir build && cd build
../unix/cmake/configure  --CFLAGS="-O2"
make
sudo make install


Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
==========================================
330109606 bytecodes/sec; 9183392 sends/sec
331177231 bytecodes/sec; 9190792 sends/sec
330535829 bytecodes/sec; 9198204 sends/sec
329896907 bytecodes/sec; 9220511 sends/sec
330963154 bytecodes/sec; 8973857 sends/sec

Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
==========================================
296811594 bytecodes/sec; 10138464 sends/sec
296467863 bytecodes/sec; 10129460 sends/sec
296639629 bytecodes/sec; 10138464 sends/sec
296124927 bytecodes/sec; 7920675 sends/sec
296296296 bytecodes/sec; 7926179 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
306586826 bytecodes/sec; 7218843 sends/sec
308248043 bytecodes/sec; 7209717 sends/sec
308805790 bytecodes/sec; 7223415 sends/sec
309552599 bytecodes/sec; 7218843 sends/sec
309927360 bytecodes/sec; 7269453 sends/sec

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification + CFLAGS=-O2
==========================================
293073840 bytecodes/sec; 8807546 sends/sec
292070735 bytecodes/sec; 8841684 sends/sec
281628162 bytecodes/sec; 8896858 sends/sec
294422081 bytecodes/sec; 8903804 sends/sec

Laurent Laffont


2010/3/28 Mariano Martinez Peck <[hidden email]>



2010/3/27 laurent laffont <[hidden email]>

OK, I've tried the Smalltalk one...

With rev 2151 gnuification (awk) is done as I have gnu-interp.c
and gnu-interp.c.log in my build directory.

Benchmark gives me:

Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
==========================================
312385600 bytecodes/sec; 7320778 sends/sec
310868245 bytecodes/sec; 8271046 sends/sec
310679611 bytecodes/sec; 8271046 sends/sec
310868245 bytecodes/sec; 7232576 sends/sec
310491206 bytecodes/sec; 8271046 sends/sec

compared to

 Squeak VM 3.11.3 -r 2135 + FT2Plugin
==========================================
334421946 bytecodes/sec; 8026581 sends/sec
334640522 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7449884 sends/sec
334421946 bytecodes/sec; 7675486 sends/sec
327156549 bytecodes/sec; 7598782 sends/sec

so it seems that on my machine rev 2135 without gnuification is a little
better. I have GCC 4.4.3,  Linux 32bits.


I don't understand....it is slower with the gnuification ?

weird....




Laurent Laffont



On Sat, Mar 27, 2010 at 8:55 PM, Levente Uzonyi <[hidden email]> wrote:

On Sat, 27 Mar 2010, laurent laffont wrote:

 I've tried gnuification on rev 2151. cmake/configure OK. But while
building:


/home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
erreur: #error GNUIFICATION FAILED ( 0 )


Which gnuification method did you try?
There are two different versions. The origial version is an awk script
which is run when you're building the vm with make. This is executed by
default if you have awk installed.
There's another version written in smalltalk (linked by Mariano into this
thread) which is not used by VMMAker at the moment, you probably don't need
that. If you applied the latter one, you have to make sure that the first
one is not executed. You can't gnuifying the sources twice.
Since both do the same, the best you can do now is to ignore the
smalltalk version. If VMMaker will adopt Gnuifier.st we can remove the awk
dependency from the build process, until then you shouldn't apply it if your
platform has awk installed.


Levente




Laurent Laffont


On Sat, Mar 27, 2010 at 6:47 PM, laurent laffont
<[hidden email]>wrote:

 Does it mean latest SVN source is already "Gnuified" ?  With latest
rev.
I

have a little drop in benchmarks. However I'd rather put a stable

release

for Pharo 1.0 than latest trunk. What do you think ?


The so-called "gnuification" is a transformation of the interp.c file.
So
this is done after generating the sources with VMMaker. The cmake
configuration that comes with revision 2135 does not have this step
enabled,
and the more recent version that I used, revision 2151, has it. The
magic is
in the awk script in unix/cmake/gnuify.awk which produes gnu-interp.c.


OK thanks. I will take a look.

Laurent Laffont




Cheers,
Adrian


Laurent Laffont



Adrian


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

 _______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

laurent laffont
 
In debian (I don't really know ubuntu), you have apt-file to search for a package's file:
apt-file search asoundlib.h

And a really great command is "auto-apt run" which installs automagically all needed packages for a given command. You can try:
auto-apt run ../unix/cmake/configure

when it detects a missing header, it will search the corresponding package and prompt you to install it.

 

I tried both tools but don't seem to work...I don't know why. They just do nothing. But anyway, I do it manually :)


you have to run 

apt-file update

in order to populate / refresh apt file cache.



If someone is interested, these are all the packages I needed to install in order not to have problems in my Ubuntu 9.10:

sudo apt-get install linux-libc-dev libecasound2.2-dev libasound2-dev libc6-dev gnulib libc6-dev libpulse-dev libxrender-dev uuid-dev

Should be on Pharo website, given the popularity of Ubuntu.


Ok.....but not only plugins. For exaple, if I don't want UTF-8 ?


errr... maybe it's time to ask to the vm-dev list :)
 


ufff.....what an idiot...thanks!  did you already discovered I am a newbie here ? :)


Me too, but a little less every day :)

Laurent Laffont

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Miguel Cobá
In reply to this post by Mariano Martinez Peck
El dom, 28-03-2010 a las 13:10 -0300, Mariano Martinez Peck escribió:
> Hi Laurent. I have been trying to compile the VM directly from your
> sources, but I found some problems.
>
> The first one was that I haven't installed cmake. Thus, I have to do a
> sudo apt-get install cmake. After that, it could do the configure.
>
> Then, the second error is that when trying to configure, there are
> some libraries or headers not found. I attach the output of the
> configure command.

have you installed the build-essentials package. It takes care of most
build dependencies and libc libraries for compiling.

aptitude install build-essentials.


Cheers

>
> In addition, is the output of the configure written somewhere like
> config.log or similar ?
>
> If you notice the file, there are several things not found, for
> example:
>
> !! XDisplayControlPlugin disabled
> !! vm-display-Quartz disabled
> !! vm-sound-MacOSX disabled
> -- vm-sound-Sun: sys/audioio.h not found
> -- vm-sound-Sun: sun/audioio.h not found
> -- vm-sound-Sun: /usr/include/stropts.h
> !! vm-sound-Sun disabled
> -- Looking for sys/select.h
> -- Looking for sys/select.h - found
> !! vm-display-X11 disabled
> -- vm-sound-NAS: audio/audio.h not found
> -- vm-sound-NAS: libaudio not found
> !! vm-sound-NAS disabled
> -- vm-display-fbdev: /usr/include/linux/fb.h
> -- vm-sound-pulse: libpulse-simple not found
> !! vm-sound-pulse disabled
> -- vm-sound-ALSA: alsa/asoundlib.h not found
> -- vm-sound-ALSA: libasound not found
> !! vm-sound-ALSA disabled
> -- vm-sound-OSS: alsa/asoundlib.h not found
> -- vm-sound-OSS: libasound not found
> !! vm-sound-OSS disabled
>
>
> See that it cannot find the vm-sound-OSS.
>
> Then, I did a make and a make install. But when trying to run squeak,
> I have this error:
>
> ubuntu@ubuntu-desktop:~/Pharo/vm/Squeak-3.11.3.2135-pharo-src/build$
> squeak
> + exec padsp /usr/local/lib/squeak/3.11.13-2135/squeakvm -pathenc
> UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135
> -vm-sound-oss
> could not find module vm-sound-OSS
> Aborted
>
>
> Of course it cannto find it..as I already know that from the
> configure. So..here I have 2 questions:
>
> 1) how can I install the things I am missing ?
>
> 2) why the "squeak" executable has "hardcoded" the parameters
> "-pathenc UTF-8 -encoding UTF-8
> -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss"
> is that correct ?  do I ALWAYS want all those parameters ? And if I
> don't want them, how can I execute a "clean" squeak ?
>
>
> Finally, in another thread, Eliot told me how to be able to debug
> SqueakVM with Gdb and threads. He told me to do:
>
> ../unix/cmake/configure CFLAGS="-g3 -pthread" LIBS=-lpthread
>
> but configure says:
>
> unknown option: CFLAGS=-g3 -pthread
> unknown option: LIBS=-lpthread
>
> Do you know how can I do this ?   should I send this email to vm
> mailing list ?
>
> Thanks a lot in advance!  
>
> Mariano
>
>
> On Sun, Mar 28, 2010 at 12:50 PM, Levente Uzonyi <[hidden email]>
> wrote:
>         Your optimization flags are probably ignored by cmake: see
>         this thread
>         http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html
>        
>         You could also give these flags a try on x86 cpus: -O3
>         -fomit-frame-pointer -mfpmath=sse -march=native
>        
>        
>         Levente
>        
>        
>        
>         On Sun, 28 Mar 2010, laurent laffont wrote:
>        
>                 More benchmarks.
>                
>                 Updated procedure with gcc optimizations activated:
>                 wget
>                 http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
>                 tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
>                 cd Squeak-3.11.3.2135-pharo-src/
>                 mkdir build && cd build
>                 ../unix/cmake/configure  --CFLAGS="-O2"
>                 make
>                 sudo make install
>                
>                
>                 Squeak VM 3.11.3 -r 2135 + FT2Plugin
>                 ==========================================
>                 334421946 bytecodes/sec; 8026581 sends/sec
>                 334640522 bytecodes/sec; 7449884 sends/sec
>                 334421946 bytecodes/sec; 7449884 sends/sec
>                 334421946 bytecodes/sec; 7675486 sends/sec
>                 327156549 bytecodes/sec; 7598782 sends/sec
>                
>                 Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
>                 ==========================================
>                 330109606 bytecodes/sec; 9183392 sends/sec
>                 331177231 bytecodes/sec; 9190792 sends/sec
>                 330535829 bytecodes/sec; 9198204 sends/sec
>                 329896907 bytecodes/sec; 9220511 sends/sec
>                 330963154 bytecodes/sec; 8973857 sends/sec
>                
>                 Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
>                 ==========================================
>                 296811594 bytecodes/sec; 10138464 sends/sec
>                 296467863 bytecodes/sec; 10129460 sends/sec
>                 296639629 bytecodes/sec; 10138464 sends/sec
>                 296124927 bytecodes/sec; 7920675 sends/sec
>                 296296296 bytecodes/sec; 7926179 sends/sec
>                
>                 Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
>                 ==========================================
>                 306586826 bytecodes/sec; 7218843 sends/sec
>                 308248043 bytecodes/sec; 7209717 sends/sec
>                 308805790 bytecodes/sec; 7223415 sends/sec
>                 309552599 bytecodes/sec; 7218843 sends/sec
>                 309927360 bytecodes/sec; 7269453 sends/sec
>                
>                 Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification +
>                 CFLAGS=-O2
>                 ==========================================
>                 293073840 bytecodes/sec; 8807546 sends/sec
>                 292070735 bytecodes/sec; 8841684 sends/sec
>                 281628162 bytecodes/sec; 8896858 sends/sec
>                 294422081 bytecodes/sec; 8903804 sends/sec
>                
>                 Laurent Laffont
>                
>                
>                 2010/3/28 Mariano Martinez Peck
>                 <[hidden email]>
>                
>                        
>                        
>                         2010/3/27 laurent laffont
>                         <[hidden email]>
>                        
>                         OK, I've tried the Smalltalk one...
>                                
>                                 With rev 2151 gnuification (awk) is
>                                 done as I have gnu-interp.c
>                                 and gnu-interp.c.log in my build
>                                 directory.
>                                
>                                 Benchmark gives me:
>                                
>                                 Squeak VM 3.11.3 -r 2151 + FT2Plugin +
>                                 Gnuification
>                                 ==========================================
>                                 312385600 bytecodes/sec; 7320778
>                                 sends/sec
>                                 310868245 bytecodes/sec; 8271046
>                                 sends/sec
>                                 310679611 bytecodes/sec; 8271046
>                                 sends/sec
>                                 310868245 bytecodes/sec; 7232576
>                                 sends/sec
>                                 310491206 bytecodes/sec; 8271046
>                                 sends/sec
>                                
>                                 compared to
>                                
>                                  Squeak VM 3.11.3 -r 2135 + FT2Plugin
>                                 ==========================================
>                                 334421946 bytecodes/sec; 8026581
>                                 sends/sec
>                                 334640522 bytecodes/sec; 7449884
>                                 sends/sec
>                                 334421946 bytecodes/sec; 7449884
>                                 sends/sec
>                                 334421946 bytecodes/sec; 7675486
>                                 sends/sec
>                                 327156549 bytecodes/sec; 7598782
>                                 sends/sec
>                                
>                                 so it seems that on my machine rev
>                                 2135 without gnuification is a little
>                                 better. I have GCC 4.4.3,  Linux
>                                 32bits.
>                                
>                                
>                         I don't understand....it is slower with the
>                         gnuification ?
>                        
>                         weird....
>                        
>                        
>                        
>                        
>                                 Laurent Laffont
>                                
>                                
>                                
>                                 On Sat, Mar 27, 2010 at 8:55 PM,
>                                 Levente Uzonyi <[hidden email]> wrote:
>                                
>                                         On Sat, 27 Mar 2010, laurent
>                                         laffont wrote:
>                                        
>                                          I've tried gnuification on
>                                         rev 2151. cmake/configure OK.
>                                         But while
>                                                 building:
>                                                
>                                                
>                                                 /home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
>                                                 erreur: #error
>                                                 GNUIFICATION FAILED
>                                                 ( 0 )
>                                                
>                                        
>                                         Which gnuification method did
>                                         you try?
>                                         There are two different
>                                         versions. The origial version
>                                         is an awk script
>                                         which is run when you're
>                                         building the vm with make.
>                                         This is executed by
>                                         default if you have awk
>                                         installed.
>                                         There's another version
>                                         written in smalltalk (linked
>                                         by Mariano into this
>                                         thread) which is not used by
>                                         VMMAker at the moment, you
>                                         probably don't need
>                                         that. If you applied the
>                                         latter one, you have to make
>                                         sure that the first
>                                         one is not executed. You can't
>                                         gnuifying the sources twice.
>                                         Since both do the same, the
>                                         best you can do now is to
>                                         ignore the
>                                         smalltalk version. If VMMaker
>                                         will adopt Gnuifier.st we can
>                                         remove the awk
>                                         dependency from the build
>                                         process, until then you
>                                         shouldn't apply it if your
>                                         platform has awk installed.
>                                        
>                                        
>                                         Levente
>                                        
>                                        
>                                        
>                                                
>                                                 Laurent Laffont
>                                                
>                                                
>                                                 On Sat, Mar 27, 2010
>                                                 at 6:47 PM, laurent
>                                                 laffont
>                                                 <[hidden email]>wrote:
>                                                
>                                                  Does it mean latest
>                                                 SVN source is already
>                                                 "Gnuified" ?  With
>                                                 latest
>                                                                 rev.
>                                                                 I
>                                                                
>                                                                         have a little drop in benchmarks. However I'd rather put a stable
>                                                                        
>                                                                 release
>                                                                
>                                                                         for Pharo 1.0 than latest trunk. What do you think ?
>                                                                        
>                                                                
>                                                                 The
>                                                                 so-called "gnuification" is a transformation of the interp.c file.
>                                                                 So
>                                                                 this
>                                                                 is
>                                                                 done
>                                                                 after
>                                                                 generating the sources with VMMaker. The cmake
>                                                                 configuration that comes with revision 2135 does not have this step
>                                                                 enabled,
>                                                                 and
>                                                                 the
>                                                                 more
>                                                                 recent
>                                                                 version that I used, revision 2151, has it. The
>                                                                 magic
>                                                                 is
>                                                                 in the
>                                                                 awk
>                                                                 script
>                                                                 in
>                                                                 unix/cmake/gnuify.awk which produes gnu-interp.c.
>                                                                
>                                                                
>                                                         OK thanks. I
>                                                         will take a
>                                                         look.
>                                                        
>                                                         Laurent
>                                                         Laffont
>                                                        
>                                                        
>                                                        
>                                                        
>                                                                 Cheers,
>                                                                 Adrian
>                                                                
>                                                                
>                                                                         Laurent Laffont
>                                                                        
>                                                                        
>                                                                        
>                                                                                 Adrian
>                                                                                
>                                                                                
>                                                                                 _______________________________________________
>                                                                                 Pharo-project mailing list
>                                                                                 [hidden email]
>                                                                                 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>                                                                                
>                                                                                  _______________________________________________
>                                                                         Pharo-project mailing list
>                                                                         [hidden email]
>                                                                         http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>                                                                        
>                                                                
>                                                                
>                                                                 _______________________________________________
>                                                                 Pharo-project mailing list
>                                                                 [hidden email]
>                                                                 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>                                                                
>                                                                
>                                                        
>                                                        
>                                                
>                                         _______________________________________________
>                                         Pharo-project mailing list
>                                         [hidden email]
>                                         http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>                                        
>                                
>                                
>                                 _______________________________________________
>                                 Pharo-project mailing list
>                                 [hidden email]
>                                 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>                                
>                        
>                        
>                         _______________________________________________
>                         Pharo-project mailing list
>                         [hidden email]
>                         http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>                        
>                
>        
>         _______________________________________________
>         Pharo-project mailing list
>         [hidden email]
>         http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>        
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
Miguel Cobá
http://miguel.leugim.com.mx


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin

Michael Rueger-6
In reply to this post by Mariano Martinez Peck
On 3/28/10 1:20 PM, Mariano Martinez Peck wrote:

> Yes. I know that problem ;)   With SqueakDBX I had the same problem when
> installing the dev packages of the database client libraries.
>
>     So when a header is not found, like asoundlib.h, the easy way is to
>     go to http://packages.ubuntu.com/ , go down the page to "Search the
>     contents of packages" and fill the search field with the name of file.
>     You will see that it's libasound2-dev package.
>
>
> Good link! I didn't know how to easily search it. Thanks

When I used to build squeakland VMs and installers I had a little script
that installed all necessary dev packs. It is part of the squeakland
repository, but that doesn't seem to be online anymore:
http://svn.squeakland.org/installers/

At home I might have a copy of the repository though...

Michael


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Mariano Martinez Peck
In reply to this post by Miguel Cobá


2010/3/28 Miguel Enrique Cobá Martinez <[hidden email]>
El dom, 28-03-2010 a las 13:10 -0300, Mariano Martinez Peck escribió:
> Hi Laurent. I have been trying to compile the VM directly from your
> sources, but I found some problems.
>
> The first one was that I haven't installed cmake. Thus, I have to do a
> sudo apt-get install cmake. After that, it could do the configure.
>
> Then, the second error is that when trying to configure, there are
> some libraries or headers not found. I attach the output of the
> configure command.

have you installed the build-essentials package. It takes care of most
build dependencies and libc libraries for compiling.

aptitude install build-essentials.

Thanks for the tip Miguel. But yes, it is one of the first things I do in Linux as I need that for SqueakDBX/OpenDBX :)
So...all these things I have installed seem not to be included there.

Ahh just in case someone is interested in your tip, it is  sudo apt-get install build-essential  (without the S at the end)
 
Thanks!

Mariano




Cheers
>
> In addition, is the output of the configure written somewhere like
> config.log or similar ?
>
> If you notice the file, there are several things not found, for
> example:
>
> !! XDisplayControlPlugin disabled
> !! vm-display-Quartz disabled
> !! vm-sound-MacOSX disabled
> -- vm-sound-Sun: sys/audioio.h not found
> -- vm-sound-Sun: sun/audioio.h not found
> -- vm-sound-Sun: /usr/include/stropts.h
> !! vm-sound-Sun disabled
> -- Looking for sys/select.h
> -- Looking for sys/select.h - found
> !! vm-display-X11 disabled
> -- vm-sound-NAS: audio/audio.h not found
> -- vm-sound-NAS: libaudio not found
> !! vm-sound-NAS disabled
> -- vm-display-fbdev: /usr/include/linux/fb.h
> -- vm-sound-pulse: libpulse-simple not found
> !! vm-sound-pulse disabled
> -- vm-sound-ALSA: alsa/asoundlib.h not found
> -- vm-sound-ALSA: libasound not found
> !! vm-sound-ALSA disabled
> -- vm-sound-OSS: alsa/asoundlib.h not found
> -- vm-sound-OSS: libasound not found
> !! vm-sound-OSS disabled
>
>
> See that it cannot find the vm-sound-OSS.
>
> Then, I did a make and a make install. But when trying to run squeak,
> I have this error:
>
> ubuntu@ubuntu-desktop:~/Pharo/vm/Squeak-3.11.3.2135-pharo-src/build$
> squeak
> + exec padsp /usr/local/lib/squeak/3.11.13-2135/squeakvm -pathenc
> UTF-8 -encoding UTF-8 -plugins /usr/local/lib/squeak/3.11.13-2135
> -vm-sound-oss
> could not find module vm-sound-OSS
> Aborted
>
>
> Of course it cannto find it..as I already know that from the
> configure. So..here I have 2 questions:
>
> 1) how can I install the things I am missing ?
>
> 2) why the "squeak" executable has "hardcoded" the parameters
> "-pathenc UTF-8 -encoding UTF-8
> -plugins /usr/local/lib/squeak/3.11.13-2135 -vm-sound-oss"
> is that correct ?  do I ALWAYS want all those parameters ? And if I
> don't want them, how can I execute a "clean" squeak ?
>
>
> Finally, in another thread, Eliot told me how to be able to debug
> SqueakVM with Gdb and threads. He told me to do:
>
> ../unix/cmake/configure CFLAGS="-g3 -pthread" LIBS=-lpthread
>
> but configure says:
>
> unknown option: CFLAGS=-g3 -pthread
> unknown option: LIBS=-lpthread
>
> Do you know how can I do this ?   should I send this email to vm
> mailing list ?
>
> Thanks a lot in advance!
>
> Mariano
>
>
> On Sun, Mar 28, 2010 at 12:50 PM, Levente Uzonyi <[hidden email]>
> wrote:
>         Your optimization flags are probably ignored by cmake: see
>         this thread
>         http://lists.squeakfoundation.org/pipermail/vm-dev/2010-January/003736.html
>
>         You could also give these flags a try on x86 cpus: -O3
>         -fomit-frame-pointer -mfpmath=sse -march=native
>
>
>         Levente
>
>
>
>         On Sun, 28 Mar 2010, laurent laffont wrote:
>
>                 More benchmarks.
>
>                 Updated procedure with gcc optimizations activated:
>                 wget
>                 http://lolgzs.free.fr/pharo/squeak-vm/Squeak-3.11.3.2135-pharo-src.tar.gz
>                 tar -xvzf Squeak-3.11.3.2135-pharo-src.tar.gz
>                 cd Squeak-3.11.3.2135-pharo-src/
>                 mkdir build && cd build
>                 ../unix/cmake/configure  --CFLAGS="-O2"
>                 make
>                 sudo make install
>
>
>                 Squeak VM 3.11.3 -r 2135 + FT2Plugin
>                 ==========================================
>                 334421946 bytecodes/sec; 8026581 sends/sec
>                 334640522 bytecodes/sec; 7449884 sends/sec
>                 334421946 bytecodes/sec; 7449884 sends/sec
>                 334421946 bytecodes/sec; 7675486 sends/sec
>                 327156549 bytecodes/sec; 7598782 sends/sec
>
>                 Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O2
>                 ==========================================
>                 330109606 bytecodes/sec; 9183392 sends/sec
>                 331177231 bytecodes/sec; 9190792 sends/sec
>                 330535829 bytecodes/sec; 9198204 sends/sec
>                 329896907 bytecodes/sec; 9220511 sends/sec
>                 330963154 bytecodes/sec; 8973857 sends/sec
>
>                 Squeak VM 3.11.3 -r 2135 + FT2Plugin + CFLAGS=-O3
>                 ==========================================
>                 296811594 bytecodes/sec; 10138464 sends/sec
>                 296467863 bytecodes/sec; 10129460 sends/sec
>                 296639629 bytecodes/sec; 10138464 sends/sec
>                 296124927 bytecodes/sec; 7920675 sends/sec
>                 296296296 bytecodes/sec; 7926179 sends/sec
>
>                 Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification
>                 ==========================================
>                 306586826 bytecodes/sec; 7218843 sends/sec
>                 308248043 bytecodes/sec; 7209717 sends/sec
>                 308805790 bytecodes/sec; 7223415 sends/sec
>                 309552599 bytecodes/sec; 7218843 sends/sec
>                 309927360 bytecodes/sec; 7269453 sends/sec
>
>                 Squeak VM 3.11.3 -r 2151 + FT2Plugin + Gnuification +
>                 CFLAGS=-O2
>                 ==========================================
>                 293073840 bytecodes/sec; 8807546 sends/sec
>                 292070735 bytecodes/sec; 8841684 sends/sec
>                 281628162 bytecodes/sec; 8896858 sends/sec
>                 294422081 bytecodes/sec; 8903804 sends/sec
>
>                 Laurent Laffont
>
>
>                 2010/3/28 Mariano Martinez Peck
>                 <[hidden email]>
>
>
>
>                         2010/3/27 laurent laffont
>                         <[hidden email]>
>
>                         OK, I've tried the Smalltalk one...
>
>                                 With rev 2151 gnuification (awk) is
>                                 done as I have gnu-interp.c
>                                 and gnu-interp.c.log in my build
>                                 directory.
>
>                                 Benchmark gives me:
>
>                                 Squeak VM 3.11.3 -r 2151 + FT2Plugin +
>                                 Gnuification
>                                 ==========================================
>                                 312385600 bytecodes/sec; 7320778
>                                 sends/sec
>                                 310868245 bytecodes/sec; 8271046
>                                 sends/sec
>                                 310679611 bytecodes/sec; 8271046
>                                 sends/sec
>                                 310868245 bytecodes/sec; 7232576
>                                 sends/sec
>                                 310491206 bytecodes/sec; 8271046
>                                 sends/sec
>
>                                 compared to
>
>                                  Squeak VM 3.11.3 -r 2135 + FT2Plugin
>                                 ==========================================
>                                 334421946 bytecodes/sec; 8026581
>                                 sends/sec
>                                 334640522 bytecodes/sec; 7449884
>                                 sends/sec
>                                 334421946 bytecodes/sec; 7449884
>                                 sends/sec
>                                 334421946 bytecodes/sec; 7675486
>                                 sends/sec
>                                 327156549 bytecodes/sec; 7598782
>                                 sends/sec
>
>                                 so it seems that on my machine rev
>                                 2135 without gnuification is a little
>                                 better. I have GCC 4.4.3,  Linux
>                                 32bits.
>
>
>                         I don't understand....it is slower with the
>                         gnuification ?
>
>                         weird....
>
>
>
>
>                                 Laurent Laffont
>
>
>
>                                 On Sat, Mar 27, 2010 at 8:55 PM,
>                                 Levente Uzonyi <[hidden email]> wrote:
>
>                                         On Sat, 27 Mar 2010, laurent
>                                         laffont wrote:
>
>                                          I've tried gnuification on
>                                         rev 2151. cmake/configure OK.
>                                         But while
>                                                 building:
>
>
>                                                 /home/lol/sandbox/squeakvm/Squeak-3.11.3.2151-pharo-src/build/gnu-interp.c:25104:2:
>                                                 erreur: #error
>                                                 GNUIFICATION FAILED
>                                                 ( 0 )
>
>
>                                         Which gnuification method did
>                                         you try?
>                                         There are two different
>                                         versions. The origial version
>                                         is an awk script
>                                         which is run when you're
>                                         building the vm with make.
>                                         This is executed by
>                                         default if you have awk
>                                         installed.
>                                         There's another version
>                                         written in smalltalk (linked
>                                         by Mariano into this
>                                         thread) which is not used by
>                                         VMMAker at the moment, you
>                                         probably don't need
>                                         that. If you applied the
>                                         latter one, you have to make
>                                         sure that the first
>                                         one is not executed. You can't
>                                         gnuifying the sources twice.
>                                         Since both do the same, the
>                                         best you can do now is to
>                                         ignore the
>                                         smalltalk version. If VMMaker
>                                         will adopt Gnuifier.st we can
>                                         remove the awk
>                                         dependency from the build
>                                         process, until then you
>                                         shouldn't apply it if your
>                                         platform has awk installed.
>
>
>                                         Levente
>
>
>
>
>                                                 Laurent Laffont
>
>
>                                                 On Sat, Mar 27, 2010
>                                                 at 6:47 PM, laurent
>                                                 laffont
>                                                 <[hidden email]>wrote:
>
>                                                  Does it mean latest
>                                                 SVN source is already
>                                                 "Gnuified" ?  With
>                                                 latest
>                                                                 rev.
>                                                                 I
>
>                                                                         have a little drop in benchmarks. However I'd rather put a stable
>
>                                                                 release
>
>                                                                         for Pharo 1.0 than latest trunk. What do you think ?
>
>
>                                                                 The
>                                                                 so-called "gnuification" is a transformation of the interp.c file.
>                                                                 So
>                                                                 this
>                                                                 is
>                                                                 done
>                                                                 after
>                                                                 generating the sources with VMMaker. The cmake
>                                                                 configuration that comes with revision 2135 does not have this step
>                                                                 enabled,
>                                                                 and
>                                                                 the
>                                                                 more
>                                                                 recent
>                                                                 version that I used, revision 2151, has it. The
>                                                                 magic
>                                                                 is
>                                                                 in the
>                                                                 awk
>                                                                 script
>                                                                 in
>                                                                 unix/cmake/gnuify.awk which produes gnu-interp.c.
>
>
>                                                         OK thanks. I
>                                                         will take a
>                                                         look.
>
>                                                         Laurent
>                                                         Laffont
>
>
>
>
>                                                                 Cheers,
>                                                                 Adrian
>
>
>                                                                         Laurent Laffont
>
>
>
>                                                                                 Adrian
>
>
>                                                                                 _______________________________________________
>                                                                                 Pharo-project mailing list
>                                                                                 [hidden email]
>                                                                                 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>                                                                                  _______________________________________________
>                                                                         Pharo-project mailing list
>                                                                         [hidden email]
>                                                                         http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
>                                                                 _______________________________________________
>                                                                 Pharo-project mailing list
>                                                                 [hidden email]
>                                                                 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
>
>
>                                         _______________________________________________
>                                         Pharo-project mailing list
>                                         [hidden email]
>                                         http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
>                                 _______________________________________________
>                                 Pharo-project mailing list
>                                 [hidden email]
>                                 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
>                         _______________________________________________
>                         Pharo-project mailing list
>                         [hidden email]
>                         http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
>         _______________________________________________
>         Pharo-project mailing list
>         [hidden email]
>         http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
Miguel Cobá
http://miguel.leugim.com.mx


_______________________________________________


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Mariano Martinez Peck
In reply to this post by laurent laffont


2010/3/28 laurent laffont <[hidden email]>
 
In debian (I don't really know ubuntu), you have apt-file to search for a package's file:
apt-file search asoundlib.h

And a really great command is "auto-apt run" which installs automagically all needed packages for a given command. You can try:
auto-apt run ../unix/cmake/configure

when it detects a missing header, it will search the corresponding package and prompt you to install it.

 

I tried both tools but don't seem to work...I don't know why. They just do nothing. But anyway, I do it manually :)


you have to run 

apt-file update

in order to populate / refresh apt file cache.


Yes, exactly there was the problem...it couldn't update....start to loop and didn't find the files to download.
Let me try it again and I paste you the console if you want.
 



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Squeak VM+FT2Plugin, all Pharo 1.0 rc3 tests green

Mariano Martinez Peck
Ok....I after a little time, I run both: benchmars and all tests in PharoDev RC3 in 3 vms: 

1) the one from Pharo download: http://squeakvm.org/unix/release/Squeak-3.11.3.2135-linux_i386.tar.gz
2) the other one from Pharo Download (exupery): http://gforge.inria.fr/frs/download.php/24736/pharo-vm-0.15.2f-linux.zip
3) A new one, compiled as Laurent said with Squeak VM 3.11.3 -r 2135 + FT2Plugin + --CFLAGS="-O3 -fomit-frame-pointer -mfpmath=sse -march=native -s -mtune=generic"

 
Results

1) Has no FreeType. Unacceptable for Pharo. Should be remove from website.

 '241965973 bytecodes/sec; 9441865 sends/sec'
 '248302618 bytecodes/sec; 8876087 sends/sec'
 '248062015 bytecodes/sec; 9426258 sends/sec'
 '241965973 bytecodes/sec; 9272986 sends/sec'

All test pass.


2) Has freetype
 
'467579908 bytecodes/sec; 11130837 sends/sec'
 '467579908 bytecodes/sec; 11687732 sends/sec'
'462929475 bytecodes/sec; 11845268 sends/sec'
'466727438 bytecodes/sec; 10483247 sends/sec'

Has two failing tests in TestIdenting


3)  Has freetype

 '423490488 bytecodes/sec; 12494874 sends/sec'
'426666666 bytecodes/sec; 12580047 sends/sec'
'422442244 bytecodes/sec; 11204099 sends/sec'
'414574898 bytecodes/sec; 12157397 sends/sec'

All PharoRC3 green.


So...In summary, the new compiled VM has almost the same performance as Expuery, but it is more cleaner, easy to understand and install, it is repeatable, and has the sources.

I strongly to remove the TWO current Linux VM links from Pharo download site, and upload this new compiled VM but doing some work: more testing, readme.txt, rename it to PharoXXX, etc. We should have this VM for Pharo 1.0 and include it in the one click.

Cheers

Mariano


On Sun, Mar 28, 2010 at 6:20 PM, Mariano Martinez Peck <[hidden email]> wrote:


2010/3/28 laurent laffont <[hidden email]>
 
In debian (I don't really know ubuntu), you have apt-file to search for a package's file:
apt-file search asoundlib.h

And a really great command is "auto-apt run" which installs automagically all needed packages for a given command. You can try:
auto-apt run ../unix/cmake/configure

when it detects a missing header, it will search the corresponding package and prompt you to install it.

 

I tried both tools but don't seem to work...I don't know why. They just do nothing. But anyway, I do it manually :)


you have to run 

apt-file update

in order to populate / refresh apt file cache.


Yes, exactly there was the problem...it couldn't update....start to loop and didn't find the files to download.
Let me try it again and I paste you the console if you want.
 




_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
12345