-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #409 from Hjorthmedh/init_redux
Init redux
- Loading branch information
Showing
11 changed files
with
2,020 additions
and
4 deletions.
There are no files selected for viewing
1,686 changes: 1,686 additions & 0 deletions
1,686
examples/parallel/KTH_PDC/lateral_inhibition/sten_3/Analyse Two Populations Sten 3.ipynb
Large diffs are not rendered by default.
Oops, something went wrong.
83 changes: 83 additions & 0 deletions
83
examples/parallel/KTH_PDC/lateral_inhibition/sten_3/Dardel_regenerate_input.job
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,83 @@ | ||
#!/bin/bash -l | ||
#SBATCH --partition=main | ||
#SBATCH -o log/runSnudda-%j-output.txt | ||
#SBATCH -e log/runSnudda-%j-error.txt | ||
#SBATCH -t 0:59:00 | ||
#SBATCH -J SnuddaInput | ||
#SBATCH -A naiss2023-5-231 | ||
#SBATCH --nodes=2 | ||
#SBATCH -n 128 | ||
#SBATCH --cpus-per-task=2 | ||
#SBATCH --mem-per-cpu=930M | ||
#SBATCH --mail-type=ALL | ||
module load snic-env | ||
|
||
|
||
#.. | ||
#export OMP_STACKSIZE=128G | ||
ulimit -s unlimited | ||
|
||
|
||
#let NWORKERS="$SLURM_NTASKS-2" | ||
#let NWORKERS="100" | ||
let NWORKERS="40" | ||
|
||
# REMEMBER TO CREATE THE "log" DIRECTORY | ||
|
||
|
||
export IPNWORKERS=$NWORKERS | ||
|
||
|
||
export IPYTHONDIR="/cfs/klemming/scratch/${USER:0:1}/$USER/.ipython" | ||
rm -r $IPYTHONDIR | ||
export IPYTHON_PROFILE=default | ||
source $HOME/Snudda/snudda_env/bin/activate | ||
|
||
|
||
#.. Start the ipcontroller | ||
export FI_CXI_DEFAULT_VNI=$(od -vAn -N4 -tu < /dev/urandom) | ||
srun -n 1 -N 1 -c 2 --exact --overlap --mem=0 ./../../ipcontroller_new.sh & | ||
|
||
|
||
echo ">>> waiting 60s for controller to start" | ||
sleep 60 | ||
|
||
#.. Read in CONTROLLERIP | ||
CONTROLLERIP=$(<controller_ip.txt) | ||
|
||
|
||
##.. Start the engines | ||
echo ">>> starting ${IPNWORKERS} engines " | ||
#srun -n ${IPNWORKERS} -c 2 --exact --overlap ipengine --location=${CONTROLLERIP} --profile=${IPYTHON_PROFILE} --mpi \ | ||
#--ipython-dir=${IPYTHONDIR} --timeout=30.0 --log-level=DEBUG \ | ||
#--BaseParallelApplication.verbose_crash=True --IPEngine.verbose_crash=True \ | ||
#--Kernel.stop_on_error_timeout=1.0 --IPythonKernel.stop_on_error_timeout=1.0 \ | ||
#Session.buffer_threshold=4096 Session.copy_threshold=250000 \ | ||
#Session.digest_history_size=250000 c.EngineFactory.max_heartbeat_misses=10 c.MPI.use='mpi4py' \ | ||
#1> ipe_${SLURM_JOBID}.out 2> ipe_${SLURM_JOBID}.err & | ||
|
||
#srun -n ${IPNWORKERS} -c 2 --exact --overlap valgrind --leak-check=full --show-leak-kinds=all \ | ||
#ipengine --location=${CONTROLLERIP} --profile=${IPYTHON_PROFILE} --mpi \ | ||
#--ipython-dir=${IPYTHONDIR} --timeout=30.0 c.EngineFactory.max_heartbeat_misses=10 c.MPI.use='mpi4py' \ | ||
#1> ipe_${SLURM_JOBID}.out 2> ipe_${SLURM_JOBID}.err & | ||
|
||
export FI_CXI_DEFAULT_VNI=$(od -vAn -N4 -tu < /dev/urandom) | ||
srun -n ${IPNWORKERS} -c 2 -N ${SLURM_JOB_NUM_NODES} --exact --overlap --mem=0 ipengine \ | ||
--location=${CONTROLLERIP} --profile=${IPYTHON_PROFILE} --mpi \ | ||
--ipython-dir=${IPYTHONDIR} --timeout=30.0 c.EngineFactory.max_heartbeat_misses=10 c.MPI.use='mpi4py' \ | ||
1> ipe_${SLURM_JOBID}.out 2> ipe_${SLURM_JOBID}.err & | ||
|
||
|
||
echo ">>> waiting 60s for engines to start" | ||
sleep 30 | ||
|
||
export FI_CXI_DEFAULT_VNI=$(od -vAn -N4 -tu < /dev/urandom) | ||
srun -n 1 -N 1 --exact --overlap --mem=0 ./Dardel_regenerate_input.sh | ||
|
||
|
||
echo " " | ||
|
||
echo "JOB END "`date` start_time_network_connect.txt | ||
|
||
wait | ||
|
60 changes: 60 additions & 0 deletions
60
examples/parallel/KTH_PDC/lateral_inhibition/sten_3/Dardel_regenerate_input.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
#!/bin/bash | ||
|
||
|
||
|
||
SNUDDA_DIR=$HOME/Snudda/snudda | ||
JOBDIR=../networks/sten_3 | ||
|
||
# SIMSIZE=50000 | ||
|
||
# If the BasalGangliaData directory exists, then use that for our data | ||
#/cfs/klemming/scratch/${USER:0:1}/$USER/BasalGangliaData/data | ||
#BasalGangliaData/Parkinson/PD0 | ||
if [[ -d "$HOME/BasalGangliaData/data" ]]; then | ||
export SNUDDA_DATA="$HOME/BasalGangliaData/data" | ||
echo "Setting SNUDDA_DATA to $SNUDDA_DATA" | ||
else | ||
echo "SNUDDA_DATA environment variable not changed (may be empty): $SNUDDA_DATA" | ||
fi | ||
|
||
mkdir -p $JOBDIR | ||
|
||
echo "Dardel_regenerate_input.sh should be started with srun -n 1, to only get one process" | ||
|
||
echo "SLURM_PROCID = $SLURM_PROCID" | ||
|
||
if [ "$SLURM_PROCID" -gt 0 ]; then | ||
mock_string="Not main process" | ||
else | ||
|
||
# For debug purposes: | ||
echo "PATH: "$PATH | ||
echo "IPYTHONDIR: "$IPYTHONDIR | ||
echo "PYTHONPATH: "$PYTHONPATH | ||
echo "LD_LIBRARY_PATH: "$LD_LIBRARY_PATH | ||
|
||
echo ">>>>>> Main process starting ipcluster" | ||
echo | ||
|
||
echo "Start time: " > start_time_network_connect.txt | ||
date >> start_time_network_connect.txt | ||
|
||
echo ">>> Input: "`date` | ||
# snudda input ${JOBDIR} --parallel --time 5 --input input.json | ||
snudda input ${JOBDIR} --parallel --time 18 --input input-B.json --networkFile ${JOBDIR}/network-synapses.hdf5 --inputFile ${JOBDIR}/input-spikes-B.hdf5 | ||
|
||
|
||
#.. Shut down cluster | ||
# ipcluster stop | ||
#.. Shutdown ipcontroller | ||
echo "Shutting down ipcontroller" | ||
|
||
python ../../ipcontroller_shutdown.py | ||
|
||
|
||
date | ||
#echo "JOB END "`date` start_time_network_connect.txt | ||
|
||
echo "EXITING Dardel_runjob_lateral.sh" | ||
|
||
fi |
96 changes: 96 additions & 0 deletions
96
examples/parallel/KTH_PDC/lateral_inhibition/sten_3/Dardel_simulate_lateral-B.job
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
#!/bin/bash -l | ||
#SBATCH --partition=main | ||
#SBATCH -o log/Simulate-%j-output.txt | ||
#SBATCH -e log/Simulate-%j-error.txt | ||
#SBATCH -t 9:30:00 | ||
#SBATCH --time-min=8:59:00 | ||
#SBATCH -J Simulate | ||
#SBATCH -A naiss2023-5-231 | ||
#SBATCH --nodes=60 | ||
#SBATCH --tasks-per-node=128 | ||
#SBATCH --mail-type=ALL | ||
|
||
# 2024-02-16: 40 cores per node worked, had 28% free... trying increasing to 45 cores per node | ||
# 2024-02-18: Increasing back up to 128 cores. Memory free is probably more | ||
# dependent on total number of nodes allocated | ||
|
||
# You need to point this as the directory where you created the network in | ||
#NETWORK_DIR=/cfs/klemming/home/${USER:0:1}/$USER/Snudda/examples/parallel/KTH_PDC/networks/test_10k | ||
NETWORK_DIR=../networks/sten_3 | ||
|
||
SIMULATION_CONFIG_WITH_SYNAPSES=experiment_config_sten_3-with-synapses-B.json | ||
SIMULATION_CONFIG_NO_SYNAPSES=experiment_config_sten_3-no-synapses-B.json | ||
|
||
|
||
# NETWORK_WITH_SYNAPSES_OUTPUT=$NETWORK_DIR/simulation/output-with-synapses-sten_1.hdf5 | ||
# NETWORK_NO_SYNAPSES_OUTPUT=$NETWORK_DIR/simulation/output-no-synapses-sten_1.hdf5 | ||
|
||
|
||
export N_WORKERS=$SLURM_NTASKS | ||
|
||
module load snic-env | ||
source $HOME/Snudda/snudda_env/bin/activate | ||
SNUDDA_DIR=/cfs/klemming/home/"${USER:0:1}"/$USER/Snudda | ||
|
||
# If the BasalGangliaData directory exists, then use that for our data | ||
if [[ -d "/cfs/klemming/home/${USER:0:1}/$USER/BasalGangliaData/data" ]]; then | ||
export SNUDDA_DATA="/cfs/klemming/home/${USER:0:1}/$USER/BasalGangliaData/data" | ||
echo "Setting SNUDDA_DATA to $SNUDDA_DATA" | ||
rm mechanisms | ||
ln -s $SNUDDA_DATA/neurons/mechanisms/ mechanisms | ||
else | ||
echo "SNUDDA_DATA environment variable not changed (may be empty): $SNUDDA_DATA" | ||
rm mechanisms | ||
ln -s ../../../../snudda/data/neurons/mechanisms/ | ||
fi | ||
|
||
|
||
NETWORK_INFO_FILE=$NETWORK_DIR/network-synapses.hdf5 | ||
# NETWORK_INFO_FILE=$NETWORK_DIR/network-synapses-minimal.hdf5 | ||
NETWORK_INPUT_FILE=$NETWORK_DIR/input-spikes-B.hdf5 | ||
# NETWORK_VOLTAGE_FILE=$NETWORK_DIR/simulation/voltage-trace-${SLURM_JOBID}.txt | ||
|
||
|
||
|
||
echo "Network dir: "$NETWORK_DIR | ||
|
||
export PATH=$SNUDDA_DIR/snudda_env/bin/:$PATH | ||
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CRAY_LD_LIBRARY_PATH | ||
export PYTHONPATH=$SNUDDA_DIR/snudda_env/lib/python3.9/ | ||
|
||
############## | ||
|
||
rm -r x86_64 | ||
|
||
export CXX=CC | ||
export CC=cc | ||
export FC=ftn | ||
export MPICC=cc | ||
export MPICXX=CC | ||
|
||
CC --version | ||
|
||
echo "About to run nrnivmodl" | ||
which nrnivmodl | ||
|
||
# srun -n nrnivmodl mechanisms/ | ||
|
||
srun -n 1 nrnivmodl -incflags "-lltdl=/usr/lib64/libltdl.so.7 -lreadline=/lib64/libreadline.so.7 -lncurses=/lib64/libncurses.so.6.1" -loadflags "-DLTDL_LIBRARY=/usr/lib64/libltdl.so.7 -DREADLINE_LIBRARY=/lib64/libreadline.so.7 -DNCURSES_LIBRARY=/lib64/libncurses.so.6.1" mechanisms/ | ||
|
||
# GJ disabled | ||
# srun -n $N_WORKERS $SNUDDA_DIR/examples/parallel/x86_64/special -mpi -python $SNUDDA_DIR/simulate/simulate.py $NETWORK_INFO_FILE $NETWORK_INPUT_FILE --disableGJ --time 3.5 --voltOut $NETWORK_VOLTAGE_FILE | ||
|
||
# GJ active | ||
# srun -n $N_WORKERS $SNUDDA_DIR/examples/parallel/KTH_PDC/x86_64/special -mpi -python $SNUDDA_DIR/snudda/simulate/simulate.py $NETWORK_INFO_FILE $NETWORK_INPUT_FILE --time 18 --outputFile $NETWORK_WITH_SYNAPSES_OUTPUT | ||
|
||
# srun -n $N_WORKERS $SNUDDA_DIR/examples/parallel/KTH_PDC/x86_64/special -mpi -python $SNUDDA_DIR/snudda/simulate/simulate.py $NETWORK_INFO_FILE $NETWORK_INPUT_FILE --time 18 --disableSyn --outputFile $NETWORK_NO_SYNAPSES_OUTPUT | ||
|
||
|
||
# Changed to using the simulation_config | ||
|
||
srun -n $N_WORKERS $SNUDDA_DIR/examples/parallel/KTH_PDC/x86_64/special -mpi -python $SNUDDA_DIR/snudda/simulate/simulate.py dummy_file dummy_file --simulation_config $SIMULATION_CONFIG_WITH_SYNAPSES | ||
|
||
srun -n $N_WORKERS $SNUDDA_DIR/examples/parallel/KTH_PDC/x86_64/special -mpi -python $SNUDDA_DIR/snudda/simulate/simulate.py dummy_file dummy_file --simulation_config $SIMULATION_CONFIG_NO_SYNAPSES | ||
|
||
|
||
# srun -n $N_WORKERS $SNUDDA_DIR/examples/parallel/KTH_PDC/x86_64/special -mpi -python $SNUDDA_DIR/snudda/simulate/simulate.py $NETWORK_INFO_FILE $NETWORK_INPUT_FILE --time 5 --noVolt |
11 changes: 11 additions & 0 deletions
11
...es/parallel/KTH_PDC/lateral_inhibition/sten_3/experiment_config_sten_3-no-synapses-B.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
{ | ||
"network_file": "../networks/sten_3/network-synapses.hdf5", | ||
"input_file": "../networks/sten_3/input-spikes-B.hdf5", | ||
"output_file": "../networks/sten_3/simulation/output-no-synapses-sten_3-B.hdf5", | ||
"log_file": "../networks/sten_3/log/network-simulation-no-synapses-log-3-B.txt", | ||
"sample_dt": 0.01, | ||
"time": 18.0, | ||
"disable_synapses": true, | ||
"record_all_soma": true, | ||
"record_all_compartments": [0, 500, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 7000, 7500] | ||
} |
10 changes: 10 additions & 0 deletions
10
.../parallel/KTH_PDC/lateral_inhibition/sten_3/experiment_config_sten_3-with-synapses-B.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
{ | ||
"network_file": "../networks/sten_3/network-synapses.hdf5", | ||
"input_file": "../networks/sten_3/input-spikes-B.hdf5", | ||
"output_file": "../networks/sten_3/simulation/output-with-synapses-sten_3-B.hdf5", | ||
"log_file": "../networks/sten_3/log/network-simulation-with-synapses-log-3-B.txt", | ||
"sample_dt": 0.01, | ||
"time": 18.0, | ||
"record_all_soma": true, | ||
"record_all_compartments": [0, 500, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 7000, 7500] | ||
} |
62 changes: 62 additions & 0 deletions
62
examples/parallel/KTH_PDC/lateral_inhibition/sten_3/input-B.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
{ | ||
"dSPN": { | ||
"cortical:1" : { | ||
"generator" : "poisson", | ||
"start" : [1, 4, 7, 10, 13, 16], | ||
"end" : [3, 6, 9, 12, 15, 18], | ||
"frequency" : [4, 4, 6, 6, 8, 8], | ||
"population_unit_id" : 1 | ||
}, | ||
|
||
"cortical:2" : { | ||
"generator" : "poisson", | ||
"start" : [4, 10, 16], | ||
"end" : [6, 12, 18], | ||
"frequency" : [10], | ||
"population_unit_id" : 2 | ||
}, | ||
|
||
"cortical:0" : { | ||
"generator" : "poisson", | ||
"start" : [0], | ||
"end" : [18], | ||
"frequency" : [2], | ||
"population_unit_id" : 0 | ||
} | ||
|
||
}, | ||
|
||
"iSPN": { | ||
"cortical:1" : { | ||
"generator" : "poisson", | ||
"start" : [1, 4, 7, 10, 13, 16], | ||
"end" : [3, 6, 9, 12, 15, 18], | ||
"frequency" : [4, 4, 6, 6, 8, 8], | ||
"population_unit_id" : 1 | ||
}, | ||
|
||
"cortical:2" : { | ||
"generator" : "poisson", | ||
"start" : [4, 10, 16], | ||
"end" : [6, 12, 18], | ||
"frequency" : [10], | ||
"population_unit_id" : 2 | ||
}, | ||
"cortical:0" : { | ||
"generator" : "poisson", | ||
"start" : [0], | ||
"end" : [18], | ||
"frequency" : [2], | ||
"population_unit_id" : 0 | ||
} | ||
|
||
}, | ||
"FS": { | ||
"cortical" : { | ||
"generator" : "poisson", | ||
"start" : [0], | ||
"end" : [18], | ||
"frequency" : [2] | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters