Skip to content

NeuroGPU example on L5_TTPC1_cADpyr232_1 (Ben-Shalom 2022)(Ramaswamy et al., 2015)

Notifications You must be signed in to change notification settings

ModelDBRepository/267384

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

NeuroGPU + BBP TTPC Example

Prerequisites

  • CUDA > 10
  • NEURON > 7.6.7
  • Makefile
  • GCC > 8.3.0
  • see requirements.txt for other python requirments

Getting Started

There are a few steps for porting NEURON models to NeuroGPU:

  1. Upload hoc/mod files to a directory (like BBP_TTPC_Example folder).
  2. Compile with nrnivmodl.
  3. run python extractModel.pyto build a directory called PyNeuroGPU_Unix.
  4. run moveFiles.sh to copy files into PyNeuroGPU_Unix.
  5. chdir to PyNeuroGPU_Unix/python
  6. Inside that directory you run python extractModel.py again.
  7. Then run python extractModel_mappings.py.
  8. Now you can run NeuroGPU by running python runBBP.py

Moving the Model

  • We commonly move the simulation (NeuroGPU executable in PyNeuroGPU_Unix folder) to other repos / places for convienence.
  • To do this you can just move the whole PyNeuroGPU_Unix folder to wherever you want to run the simulation.
  • NeuroGPU requires that:
    • If you change the params you use allparams_from_mapping(param_values).
    • There needs to be two folders available one directory up from the directory NeuroGPU is being called from -- Data and src. Data contains files NeuroGPU needs to accesss and src contains the source code for the CUDA model.

Building Out from the Example

  • To use another model one just needs to replace the hoc/mod files in BBP_TTPC_Example folder.
  • Not all hoc and mod files are supported.

Please reach out to [email protected] or [email protected] if you encounter any issues. Or you can open an issue in https://github.com/roybens/NeuroGPU.

Changelog

2022-12: MOD-C-2-CPP: Compatibility fixed for NEURON 9.0, 8.2 and 8.1 2023-04: Remove generated C files and hidden files. Update branching.mod for compatibility with new data structures coming in NEURON 9.0.