[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Illegal C++
From: |
Erik Sandberg |
Subject: |
Re: Illegal C++ |
Date: |
Tue, 11 Oct 2005 10:59:42 +0200 |
User-agent: |
KMail/1.8.1 |
On Monday 10 October 2005 18.17, Han-Wen Nienhuys wrote:
> Wiz Aus wrote:
> > Even if it did use pre-compiled scheme, because lilypond supports
> > compiling scores that contain Scheme code, it would still require
> > effectively interpretive processing, which is not doubt a large reason
> > for it's less-than-blinding-fast operation.
>
> The problem is not so much in the Scheme execution, because the real
> work is done in C++ routines. The problem is rather that data
> structures are completely dynamic, so reading and writing a variable
> isn't reading and writing memory, but rather walking linked lists or
> lookups in hashtables.
To me, those property lists look like major bottlenecks (though I haven't done
any real profiling). Especially the grob property alists: While I was
debugging some time ago, I saw that Grob::internal_set_property was called
over 1000 times in a trivial score.
How would it be to build our own hash table lib (or use a patched version of
an existing third-party lib) for efficient property lists?
There's a free (as in BSD) hash lib here, I don't know if it's good:
http://sourceforge.net/projects/goog-sparsehash/
I also haven't done any thinking on how this would work together with Guile;
it's just a wild idea.
--
Erik
- Re: Illegal C++, (continued)
- Re: Illegal C++, Paul Scott, 2005/10/07
- Re: Illegal C++, Nicolas Sceaux, 2005/10/07
- Re: Illegal C++, Wiz Aus, 2005/10/10
- Re: Illegal C++, Nicolas Sceaux, 2005/10/07
- Re: Illegal C++, Wiz Aus, 2005/10/10
- Re: Illegal C++, Han-Wen Nienhuys, 2005/10/10
- Re: Illegal C++,
Erik Sandberg <=
- Re: Illegal C++, Han-Wen Nienhuys, 2005/10/11
- Re: Illegal C++, Hans Aberg, 2005/10/11
- Re: Illegal C++, Nicolas Sceaux, 2005/10/11
- Re: Illegal C++, Erik Sandberg, 2005/10/11