Hi Ethan, On Thu, Dec 3, 2009 at 2:22 PM, Ethan Van Andel <evlu...@gmail.com> wrote: > Does sage support multi-core or multi-processor computation? > > If so, in what format (MPI, OpenMP etc)
I think one way to answer such a question is to survey what's available in Sage and the Python ecosystem. Starting with Python 2.6, Python has the module multiprocessing [1] to support process-based threading. Approaching this built-in module from the perspective of a novice to parallel programming, I find the module rather cumbersome to use. However, anyone is welcome to disagree. Apart from built-in modules for multiprocessing, the Python ecosystem also consists of numerous third-party libraries [2] that cater to parallel programming, grid computing, cluster computing, etc. I have been using Parallel Python (pp) [3] for about a week now, mainly to parallelize the computation of a database of least primitive roots modulo odd primes. For this purpose, I find that pp serves my needs without requiring me to learn the low-level details of parallel programming. So far, I have used pp to calculate least primitive roots modulo odd primes up to one million. That computation is now complete. I'm currently using pp to extend the database beyond one million. You might also notice that Sage comes with the dsage module [4] for distributed computation. It used to be part of the Sage library, but is now distributed as a standard spkg. As far as I know, not much work has been done to develop this module further since its lead developer graduated about a year ago. > If not, are there plans to include it? You can install any third-party Python library into the Python distribution that comes with Sage. That's how I come to access functionalities of pp for computing the above mentioned database. There was a recent discussion about Sun's Project Fortress [5] and having some interface to it for parallelizing computation. [1] http://docs.python.org/library/multiprocessing.html [2] http://wiki.python.org/moin/ParallelProcessing [3] http://www.parallelpython.com/ [4] http://www.sagemath.org/doc/reference/dsage.html [5] http://projectfortress.sun.com -- Regards Minh Van Nguyen -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org