Dear Johan,
You do not tell us what the “result” number is that you print out. But I notice that the
value you get when running with 10 MPI processes on PDC, is about 10 times smaller than
the value you see with one process on your PC.
I’ll venture a guess and assume you have a network of N neurons which you connect to one
spike detector. You simulate, read out the number of spikes and convert it into a firing
rate, dividing number of spikes by N * simtime.
In an MPI-parallel simulation, the spike detector on each MPI process only gets the spikes
of neurons simulated on that MPI process. If you still divide by the full number of
neurons to compute the rate, one would expect exactly the behavior you observe.
In the future, please provide more details about what you are doing, so we can provide
more pointed advice.
Best,
Hans Ekkehard
--
Prof. Dr. Hans Ekkehard Plesser
Head, Department of Data Science
Faculty of Science and Technology
Norwegian University of Life Sciences
PO Box 5003, 1432 Aas, Norway
Phone +47 6723 1560
Email hans.ekkehard.plesser@nmbu.no<mailto:hans.ekkehard.plesser@nmbu.no>
Home
http://arken.nmbu.no/~plesser
On 19/02/2021, 22:20, "JOHAN LILJEFORS"
<JOHAN@liljefors.eu<mailto:JOHAN@liljefors.eu>> wrote:
Dear Nest users,
I am fairly new to Nest having used it only for a few months and it has been working
without any problems on my PC running Linux. Recently I was given access to a PDC where I
have been submitting jobs but I am encountering a problem with my model. I'm running
Python 3.7.3 and Nest 2.18.
On both my PC and on the PDC, I run the following python script:
------------------------------
import Nest
For counter in range(0,10):
nest.resetkernel()
___run___script
print(result)
------------------------------
I execute this with "srun -n=1 python3 run.py"
This outputs 10 numbers, ranging from 0.35-0.4.
On the PDC, i run the same scripts but without the for loop:
------------------------------
import Nest
nest.resetkernel()
___run___script
print(result)
------------------------------
I execute this with "srun -n=10 python3 run.py"
this outputs 10 numbers, but this time much smaller around 0.04.
I am not doing any file operations, nor any MPI communication between the tasks and I am
genuinely confused as to how submitting multiple tasks can yield a different result than a
single task.
Has anyone encountered anything similar?
Regards
Johan Liljefors