+1

--Mike

On Tue, Mar 25, 2008 at 7:15 PM,  <[EMAIL PROTECTED]> wrote:
>
>
>
>
>  On Tue, 25 Mar 2008, Gary Furnish wrote:
>
>  >
>  > Trac #2436 adds the following algorithms from glib to libcsage:
>  > Multiplatform threads
>  > Thread pools
>  > Asynchronous Queues
>  > Memory Slices
>  > Doubly and Singly linked lists
>  > Queues
>  > Sequences
>  > Hash Tables
>  > Arrays
>  > Balanced Binary Trees
>  > N-ary Trees
>  > Quarks
>
>
>  +1, I can use this to speed up the polynomial evaluation code.
>
>
>
>
>  >
>  > In particular it features a slab memory allocator based on:
>  > http://citeseer.ist.psu.edu/bonwick94slab.html
>  > http://citeseer.ist.psu.edu/bonwick01magazines.html
>  > The documentation for glib is found at 
> http://library.gnome.org/devel/glib/2.14/glib-Memory-Slices.html
>  > The files are all GPL 2.0 or greater.  Although glib normally has
>  > extensive dependencies, all of them have been removed, as have parts
>  > of glib that are not strictly algorithms (such as string parsing).  To
>  > avoid autoconf/make troubles, the new parallel build system currently
>  > in experimental testing features a simple, elegant python autoconf
>  > replacement.  The extra build time for libcsage is minimal, and wall
>  > time often decreases due to the new parallel build system.  Finally,
>  > until testing is complete, parallel build and glib are orthogonal and
>  > can exist in parallel to all existing Sage code, making review
>  > significantly easier.
>  > Right now there are no easy to use C libraries included with sage.
>  > Using c++ stl requires extremely painful Cython wrapping.  Therefore
>  > everywhere pure performance is needed, ad hoc solutions are often used
>  > (see integer.pyx, etc), which often introduce subtle and painful
>  > bugs.  Furthermore there are many places in Sage that could benefit
>  > from a unified slab allocator (as opposed to a pool which can only
>  > grow).  Finally the extensive symbolics modifications I am working on
>  > make use of glib (especially trees and lists) to enable very fast
>  > symbolic manipulations.  By using glib algorithms I avoid having to
>  > roll my own code that would require extensive manual review and
>  > debugging.  This code drop is big enough that Mabshoff would like a
>  > formal +1 vote, and I'd be happy to address any concerns.
>  >
>  > Mar 25 00:00:13 <mabshoff>    yes. It isn't an spkg, but the code drop is
>  > large enought to warrent a vote.
>  > Mar 25 00:00:21 <mabshoff>    You can quote me on that.
>  > Mar 25 00:00:35 <mabshoff>    You should say *why* it is a good idea and
>  > *what* goodies it does provide.
>  > Mar 25 00:00:59 <mabshoff>    Since it will only become useful after the
>  > switch to pbuild and doesn't
>  > Mar 25 00:01:21 <mabshoff>    harm anything with the old build it also
>  > doesn't have an impact on the current
>  > Mar 25 00:01:24 <mabshoff>    codebase.
>  > Mar 25 00:01:31 <mabshoff>    You can quote me on that, too.
>  >
>  > --Gary
>  >
>  > >
>  >
>
>
>
>  >
>

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to