On 12/27/10 4:11 PM, Richard Fateman wrote:
> It would require an underlying lisp that supports multiprocessing, for
> a start. Not all host lisps
> support multiple threads. (Do any?)
I know that ccl, ecl, and sbcl support threads. I assume Lispworks and
Allegro do.
>
>> The Intel I7 has seven cores (using hyper-threading, I think).
>> Maxima could be as
Probably 4 cores with two threads each. And if you're rich enough, I
think there are 6-core i7's.
>
> There are a number of basic algorithms that could be made faster, e.g.
> polynomial multiplication in
> the rational function representation, if memory bandwidth were not an
> issue.
> It may be possible to call library routines (written with threads in
> mind) to do stuff faster,
> e.g. bignum arithmetic using GMP.
>
> I would be surprised if any obvious opportunities for parallelism sped
> up the test suite.
You could always run each individual test in a separate thread. That
would speed up the testsuite quite a bit.
But this would also be a great source of hard-to-find and hard-to-fix
bugs. There are enough bugs in maxima that we don't need to go
intentionally adding even more. :-)
I still wonder, though, on what kind of symbolic computation would need
to run that fast. Everytime I've tried to do some computation that took
more than a few minutes, the result was such a huge mess that it was
useless. A little thought on my part and some work with maxima produced
some manageable symbolic result.
Maybe I do the wrong kind of symbolic work?
Ray