Parallel computing

Questions and problems about using polymake go here.
fabian
Posts: 2
Joined: 21 Jan 2016, 11:17

Parallel computing

Postby fabian » 21 Jan 2016, 11:22

Dear All,

Can polymake exploit multiple cores?
We would like to run computationally expensive jobs on multiple cores. Is this possible?

Best wishes,
Fabian

User avatar
joswig
Main Author
Posts: 280
Joined: 24 Dec 2010, 11:10

Re: Parallel computing

Postby joswig » 21 Jan 2016, 12:06

No, the current version of polymake does not directly support parallelization. There are at least two reasons why parallelization on the thread level is complicated for polymake.

First, our C++ class library objects use smart pointers for reference counting (according to our lazy evaluation paradigm). This buys us an efficiency boost in many circumstances, but it is very difficult to make this thread-safe. We did lots of experiments in the past, but this turned out to be not satisfying in terms of overall performance.

Second, we are interfacing to lots of other software for basic tasks, some of which do multi-core parallelization. A good example is normaliz. If we would parallelize, too, we would be competing for the same scarce resources. Balancing between tasks is especially difficult since the basic algorithms (e.g., convex hulls) do not scale so well if done in parallel. One recent experiment (see arXiv:1408.4653) requires six parallel cores for breaking even with a single-threaded implementation.

Nonetheless, we are currently contemplating to allow for basic parallel for-loops. This will probably happen soon. This is not part of the new polymake 3.0. Yet, with a sufficient amount of Perl wizardry, any user could get there rather easily.

This leaves the question for parallization on a larger scale. Currently, we are experimenting with OpenMPI parallelization of specific computations for large clusters. While this is difficult, too, we expect to be able to get at first interesting results within, say, one or two years from now.

fabian
Posts: 2
Joined: 21 Jan 2016, 11:17

Re: Parallel computing

Postby fabian » 23 Jan 2016, 06:40

Thank you for your reply.
The experiments with OpenMPI sound promising!


Return to “Helpdesk”