bccp / nbodykit

Analysis kit for large-scale structure datasets, the massively parallel way
http://nbodykit.rtfd.io
GNU General Public License v3.0
111 stars 60 forks source link

Problems running SimulationBox3PCF at NERSC #590

Open mmarianav opened 5 years ago

mmarianav commented 5 years ago

Hello I am trying to run SimualtionBox3PCF with many nodes, using the following job

source /usr/common/contrib/bccp/conda-activate.sh 3.6 srun -n 16 python 3pcf_example.py

And I got the following error Ylm expressions... Traceback (most recent call last): File "3pcf_example.py", line 15, in result = SimulationBox3PCF(catalog, ells, edges=numpy.linspace(0, 200, 8+1), BoxSize=1024.) File "/dev/shm/local/lib/python3.6/site-packages/nbodykit/algorithms/threeptcf.py", line 252, in init self.poles = self.run() File "/dev/shm/local/lib/python3.6/site-packages/nbodykit/algorithms/threeptcf.py", line 288, in run return self._run(pos, w, pos_sec, w_sec, boxsize=boxsize) File "/dev/shm/local/lib/python3.6/site-packages/nbodykit/algorithms/threeptcf.py", line 56, in _run Ylm_cache = YlmCache(self.attrs['poles'], self.comm) File "/dev/shm/local/lib/python3.6/site-packages/nbodykit/algorithms/threeptcf.py", line 453, in init expr = expr.replace(var[0], 'from_cache(%s, %s)' %var[1:]) File "/dev/shm/local/lib/python3.6/site-packages/sympy/core/basic.py", line 1459, in replace "first argument to replace() must be a " TypeError: first argument to replace() must be a type, an expression or a callable Traceback (most recent call last):

Thanks!

rainwoodman commented 5 years ago

I think this is supposed to be fixed in #581, in 0.3.11.

I wonder why NERSC didn't get this update though..

Could you do

srun -n 1 python -c 'import nbodykit; print(nbodykit.__version__)'
rainwoodman commented 5 years ago

I think I figured out why it is not updating. nbodykit on Cori is updated to 0.3.11. If you run your scripts again it should be fixed.