charmplusplus / charm4py

Parallel Programming with Python and Charm++
https://charm4py.readthedocs.io
Apache License 2.0
289 stars 21 forks source link

Charm Pool Examples: Add check for more than 1 PE #263

Open Sara-KS opened 2 weeks ago

Sara-KS commented 2 weeks ago

Description: Running locally on my Mac with a python virtual environment, the charm pool examples and some of the Ray examples start with a default of 1 PE. This leads to error messages stating that charm.pool should run with more than 1 PE.

Example:

(charmpp_env) python3 ./examples/pool/pool_simple.py

Error message:

site-packages/charm4py/pool.py", line 105, in __start__
    assert self.num_workers > 0, 'Run with more than 1 PE to use charm.pool'
------------- Processor 0 Exiting: Called CmiAbort ------------
Reason: AssertionError: Run with more than 1 PE to use charm.pool

Possible Solution: In the examples, add a check for `charm.numPes() >1'. If the check fails, it would be helpful to point the user to the documentation on how to adjust the number of processes.