On Mon, Mar 31, 2008 at 11:21 PM, root <[EMAIL PROTECTED]> wrote: > William, > > > >By the way, Richard Fateman pointed out to me offlist that > >Maxima running on top of clisp _might_ be much > >slower than Maxima on gcl. This could be relevant to > >our benchmarking. > > Not to start an implementation war but GCL compiles to C which > compiles to machine code whereas clisp is interpreted.
Not at all. Many thanks for your helpful remarks below...! > Both Axiom > and Maxima have implementations on top of GCL. GCL includes a > routine that will output the lisp type declarations and if these > are loaded into the image with a recompile the resulting code is > even faster. So if you use Maxima, use the GCL version. Unfortunately we've had a lot of problems building GCL on all our target platforms and have worries since it hasn't had a single official release in about 3 years. GCL's fine on Linux, but not elsewhere. I would have very very much liked to use GCL for Sage originally, but for the life of me I couldn't get it to build on the Sage platforms, unfortunately. We've tried several times in the subsequent years, but always failed. Maybe it is time to try yet again... > CMUCL/SBCL are capable of slightly tighter optimizations because > they grew out of the SPICE Lisp project (under Scott Fahlman) > and concentrated on code optimizations. Under CMUCL I managed to > optimize a function down to a single machine instruction so it IS > possible to get maximal optimizations. But GCL also lays down some > very tight code since proper declarations can usually eliminate > type dispatch, which is important in the inner loops. > > You can see the generated code by calling (disassemble ....) > > On the other hand you're likely to get small factors of improvements > by changing to compiled lisps (but certainly much faster than python). > My experience shows that its the algorithm changes that matter most. Very interesting. I wouldn't what the differences are in speed between gcl and clisp maxima... A factor of 2 or 10, or maybe it varies a lot depending on the operation... > > > > > On a related note, I found it odd that someone commented that > they wish to remove Lisp from Sage. Do you have any idea what > might motivate that? Michael Abshoff made that comment. He's motivated by wanting to port Sage to a wide range of architectures and keep everything maintainable, since he works incredibly hard on that. He suffers a huge amount trying to deal with build issues on various platforms such as solaris, Linux PPC, etc. I'm sure you understand well how hard building complicated math software is on a range of platforms! By the way, his comment was not an "official opinion" of the Sage project or anything, and packages don't leave Sage without a lot of discussion, voting, etc. -- William --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---