Guile 2.2 speed improvements

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Guile 2.2 speed improvements

Paul Morris
By chance I came across the following blog post about Guile 2.2, apparently it's due out later this year.
 
http://wingolog.org/archives/2013/11/26/a-register-vm-for-guile

Most of it is technical and above my head but the summary is that it should be significantly faster:  "A simple count-up-to-a-billion test runs in 9 seconds on Guile 2.2, compared to 24 seconds in Guile 2.0."  I thought I'd share it, in light of recent discussion about performance/speed.  

Looks like good things ahead.

-Paul


P.S. Here are two additional blog posts with more about Guile 2.2
http://wingolog.org/archives/2014/01/12/a-continuation-passing-style-intermediate-language-for-guile
http://wingolog.org/archives/2014/01/19/elf-in-guile
Reply | Threaded
Open this post in threaded view
|

Re: Guile 2.2 speed improvements

David Kastrup
Paul Morris <[hidden email]> writes:

> By chance I came across the following blog post about Guile 2.2, apparently
> it's due out later this year.
>  
> http://wingolog.org/archives/2013/11/26/a-register-vm-for-guile
>
> Most of it is technical and above my head but the summary is that it should
> be significantly faster:  "A simple count-up-to-a-billion test runs in 9
> seconds on Guile 2.2, compared to 24 seconds in Guile 2.0."  I thought I'd
> share it, in light of recent discussion about performance/speed.  
>
> Looks like good things ahead.

GUILE2.2 from master takes eternities to compile, like more than half an
hour or so.  LilyPond does a lot of on-the-fly evaluation, and Guile2.0
is already a big step backwards in that department compared to Guile
1.8.

If they don't get compilation and partly interpreter speed under control
again (and it does not look like a priority to them since they are more
interested in competing on the basis of compiled code speed), the main
usability focus will be _not_ as an extension language but rather as a
main programming language.

That makes it cheaper swapping out some of our C++ parts for GUILE.  But
where performance is paramount, we are not likely going to do this
anyway.

So we'll have to see whether we are getting any tangible benefits here.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Guile 2.2 speed improvements

Paul Morris
David Kastrup wrote
GUILE2.2 from master takes eternities to compile, like more than half an
hour or so.  LilyPond does a lot of on-the-fly evaluation, and Guile2.0
is already a big step backwards in that department compared to Guile
1.8.

If they don't get compilation and partly interpreter speed under control
again (and it does not look like a priority to them since they are more
interested in competing on the basis of compiled code speed), the main
usability focus will be _not_ as an extension language but rather as a
main programming language.

That makes it cheaper swapping out some of our C++ parts for GUILE.  But
where performance is paramount, we are not likely going to do this
anyway.

So we'll have to see whether we are getting any tangible benefits here.
Huh, interesting...  thanks for the additional insights.  That's too bad it may turn out to be a mixed bag for LilyPond.

-Paul
Reply | Threaded
Open this post in threaded view
|

Re: Guile 2.2 speed improvements

David Kastrup
Paul Morris <[hidden email]> writes:

> David Kastrup wrote
>> GUILE2.2 from master takes eternities to compile, like more than half an
>> hour or so.  LilyPond does a lot of on-the-fly evaluation, and Guile2.0
>> is already a big step backwards in that department compared to Guile
>> 1.8.
>>
>> If they don't get compilation and partly interpreter speed under control
>> again (and it does not look like a priority to them since they are more
>> interested in competing on the basis of compiled code speed), the main
>> usability focus will be _not_ as an extension language but rather as a
>> main programming language.
>>
>> That makes it cheaper swapping out some of our C++ parts for GUILE.  But
>> where performance is paramount, we are not likely going to do this
>> anyway.
>>
>> So we'll have to see whether we are getting any tangible benefits here.
>
> Huh, interesting...  thanks for the additional insights.  That's too bad it
> may turn out to be a mixed bag for LilyPond.

Well, they are working hard on the "serious standalone programming
language" aspect rather than "extension language".  But then "serious
standalone programming language" is actually rather competitively
covered by systems like Chicken.  So it's a bit of my impression that
they are painting themselves into a local optimum that does not make for
a really convincing sell.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Guile 2.2 speed improvements

Jan Nieuwenhuizen
In reply to this post by David Kastrup
David Kastrup writes:

> GUILE2.2 from master takes eternities to compile, like more than half an
> hour or so.  LilyPond does a lot of on-the-fly evaluation, and Guile2.0
> is already a big step backwards in that department compared to Guile
> 1.8.
>
> If they don't get compilation and partly interpreter speed under control
> again (and it does not look like a priority to them since they are more
> interested in competing on the basis of compiled code speed), the main
> usability focus will be _not_ as an extension language but rather as a
> main programming language.

Have you raised this concern on guile-devel?
Greetings, Jan

--
Jan Nieuwenhuizen <[hidden email]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | AvatarĀ®  http://AvatarAcademy.nl 

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Guile 2.2 speed improvements

David Kastrup
Jan Nieuwenhuizen <[hidden email]> writes:

> David Kastrup writes:
>
>> GUILE2.2 from master takes eternities to compile, like more than half an
>> hour or so.  LilyPond does a lot of on-the-fly evaluation, and Guile2.0
>> is already a big step backwards in that department compared to Guile
>> 1.8.
>>
>> If they don't get compilation and partly interpreter speed under control
>> again (and it does not look like a priority to them since they are more
>> interested in competing on the basis of compiled code speed), the main
>> usability focus will be _not_ as an extension language but rather as a
>> main programming language.
>
> Have you raised this concern on guile-devel?

I have been banned from posting there.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Guile 2.2 speed improvements

pkx166h
On 09/04/14 13:01, David Kastrup wrote:

> Jan Nieuwenhuizen <[hidden email]> writes:
>
>> David Kastrup writes:
>>
>>> GUILE2.2 from master takes eternities to compile, like more than half an
>>> hour or so.  LilyPond does a lot of on-the-fly evaluation, and Guile2.0
>>> is already a big step backwards in that department compared to Guile
>>> 1.8.
>>>
>>> If they don't get compilation and partly interpreter speed under control
>>> again (and it does not look like a priority to them since they are more
>>> interested in competing on the basis of compiled code speed), the main
>>> usability focus will be _not_ as an extension language but rather as a
>>> main programming language.
>> Have you raised this concern on guile-devel?
> I have been banned from posting there.
>
:)

Is there a thread?

James

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|

Re: Guile 2.2 speed improvements

David Kastrup
James <[hidden email]> writes:

> On 09/04/14 13:01, David Kastrup wrote:
>> Jan Nieuwenhuizen <[hidden email]> writes:
>>
>>> David Kastrup writes:
>>>
>>>> GUILE2.2 from master takes eternities to compile, like more than half an
>>>> hour or so.  LilyPond does a lot of on-the-fly evaluation, and Guile2.0
>>>> is already a big step backwards in that department compared to Guile
>>>> 1.8.
>>>>
>>>> If they don't get compilation and partly interpreter speed under control
>>>> again (and it does not look like a priority to them since they are more
>>>> interested in competing on the basis of compiled code speed), the main
>>>> usability focus will be _not_ as an extension language but rather as a
>>>> main programming language.
>>> Have you raised this concern on guile-devel?
>> I have been banned from posting there.
>>
> :)
>
> Is there a thread?

For the design criteria of GUILE?  No idea.  For the reason I'm banned?
Should be easy to find by looking for the last post of mine in the
archive and the surrounding thread.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel