Parsl on Polaris¶
Parsl is a flexible and scalable parallel programming library for Python.
-- Parsl Documentation
For many applications, managing an ensemble of jobs into a workflow is a critical step that can easily become a performance bottleneck. Many tools exist to address this, of which parsl is just one. On this page, we'll highlight some of the key pieces of information about parsl that are relevant to Polaris. Parsl is also extensively documented, has a dedicated Slack channel, and a large community of users and developers beyond ALCF. We encourage you to engage with the parsl community for support with parsl-specific questions, and for Polaris-specific questions or problems, please contact support@alcf.anl.gov.
Getting Parsl on Polaris¶
You can install parsl by building off of the conda modules. You have some flexibility in how you want to extend the conda module to include parsl, but here is an example way to do it:
Using Parsl on Polaris¶
Parsl has a variety of possible configuration settings. As an example, we provide the configuration below that will run one task per GPU:
Known Issues¶
Warning
Starting in September 2025, users testing parsl in single node jobs may encounter an error that makes reference to OSError: AF_UNIX path too long. To fix this, include in the worker_init for cases using the PBSProProvider or in the job script for cases using the LocalProvider this environment variable setting: export TMPDIR=/tmp