This repository was archived by the owner on Mar 20, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 41
Run CoreNEURON MOD file functional tests in online mode #310
Copy link
Copy link
Closed
Labels
Milestone
Description
Similar to #308 but we should make sure the tests are running with direct in-memory transfer as well as file based transfer.
Here is I manually do this:
# install neuron
git clone https://github.com/neuronsimulator/nrn.git
mkdir nrn/build
cd nrn/build
cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/install -DPYTHON_EXECUTABLE=`which python3.6` -DNRN_ENABLE_INTERVIEWS=OFF -DNRN_ENABLE_MOD_COMPATIBILITY=ON
make -j install
# install coreneuron
git clone https://github.com/BlueBrain/CoreNeuron.git
mkdir CoreNeuron/build
cd CoreNeuron/build
cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/install
make -j install
And build testcorenrn:
git clone https://github.com/nrnhines/testcorenrn.git
cd /testcorenrn
$HOME/install/bin/nrnivmodl mod
$HOME/install/bin/nrnivmodl-core mod
And run tests from readme:
#!/bin/sh
names="deriv gf kin conc watch vecplay"
# run neuron
for i in $names ; do
x86_64/special -c sim_time=100 test${i}.hoc
cat out${i}.dat | sort -k 1n,1n -k 2n,2n > out_nrn_${i}.spk
rm out${i}.dat
done
# run coreneuron direct memory mode
for i in $names ; do
x86_64/special -c sim_time=100 -c coreneuron=1 test${i}.hoc
cat out.dat | sort -k 1n,1n -k 2n,2n > out_core_online_${i}.spk
rm out.dat
done
# run coreneuron file transfer mode
for i in $names ; do
x86_64/special-core -d test${i}dat --cell-permute 1 -e 100
cat out.dat | sort -k 1n,1n -k 2n,2n > out_core_file_${i}.spk
rm out.dat
done
for i in $names ; do
diff -w -q out_nrn_${i}.spk out_core_online_${i}.spk
diff -w -q out_nrn_${i}.spk out_core_file_${i}.spk
done