Search found 1690 matches

by hines
Tue Feb 13, 2024 5:51 pm
Forum: Parallel NEURON
Topic: Calling MPI_Abort() from HOC
Replies: 5
Views: 15342

Re: Calling MPI_Abort() from HOC

You didn't mention how you launched the program. I'm guessing that you are running a NEURON version that dynamically loads mpi when you give it the -mpi arg. Otherwise the memory for nrnmpi_abort is NULL (hence the seg fault). Do you have a problem if you try mpiexec -n 1 nrniv -mpi -c 'mpiabort(-1)'
by hines
Wed Jan 03, 2024 1:06 pm
Forum: Parallel NEURON
Topic: Calling MPI_Abort() from HOC
Replies: 5
Views: 15342

Re: Calling MPI_Abort() from HOC

Try

Code: Select all

NEURON {SUFFIX nothing}

VERBATIM
extern void nrnmpi_abort(int);        
ENDVERBATIM

PROCEDURE mpiabort(errcode) {
VERBATIM
  {
    nrnmpi_abort((int)_lerrcode);  
  }
ENDVERBATIM
}
by hines
Fri Dec 15, 2023 1:36 pm
Forum: Parallel NEURON
Topic: Calling MPI_Abort() from HOC
Replies: 5
Views: 15342

Re: Calling MPI_Abort() from HOC

The internal wrapper for MPI_Abort is not exposed to the interpreter. You can do that with a mod file $ cat abrt.mod NEURON {SUFFIX nothing} VERBATIM extern "C" { void nrnmpi_abort(int); } ENDVERBATIM PROCEDURE mpiabort(errcode) { VERBATIM { nrnmpi_abort(int(_lerrcode)); } ENDVERBATIM } Th...
by hines
Fri Dec 15, 2023 1:20 pm
Forum: The GUI
Topic: Programmatic GUI control (pressing buttons, etc.)
Replies: 3
Views: 16832

Re: Programmatic GUI control (pressing buttons, etc.)

From the interpreter, there is no way to control the GUI directly. One can only execute the button/menu actions.
by hines
Wed Aug 30, 2023 8:02 pm
Forum: Reaction-diffusion in NEURON
Topic: MultiCompartmentReaction across sections
Replies: 6
Views: 13411

Re: MultiCompartmentReaction across sections

I've run the address sanitizer several times and upon ^C have always ended up at nrn-enable-sanitizer --preload python3 -i test.py ... Adding flux to exc. synapse 500/500 in spine 2/2: prend seg = spine[1](0.5), postnd seg = dend[65](0.5) Starting simulation ^CAddressSanitizer:DEADLYSIGNAL =========...
by hines
Wed Aug 30, 2023 4:35 pm
Forum: MSWin
Topic: MSWin11 + Anaconda, Neuron 8.2.2
Replies: 6
Views: 16026

Re: MSWin11 + Anaconda, Neuron 8.2.2

Perhaps this is now somewhat stale. But if your windows11 computer is available, I would be happy to have a zoom meeting where you could share your screen and we might work through the issue. If you wish to proceed, contact me at michael dot hines at yale dot edu. The first thing to diagnose is the ...
by hines
Wed Aug 30, 2023 2:23 pm
Forum: Other questions
Topic: Analyzing pointers
Replies: 1
Views: 11420

Re: Analyzing pointers

I'm sorry to say that in NEURON version 8 and before , the interpreters do not store the information used to determine the address. And in the internal implementation the only way to know what a pointer was pointing to was to search all internal data structures. This, of course, made it very inconve...
by hines
Wed Aug 30, 2023 1:37 pm
Forum: Reaction-diffusion in NEURON
Topic: MultiCompartmentReaction across sections
Replies: 6
Views: 13411

Re: MultiCompartmentReaction across sections

Code: Select all

python3 mycode.py 2 10
Gives me a segfault for NEURON version 8.1.0 but not for 8.2.2 or current master.

I also built the master using the address sanitizer and there were no substantive complaints (only some memory leaks), so there is a possibility that the bug was fixed after 8.1.0.
by hines
Wed Aug 09, 2023 8:13 pm
Forum: Adding new mechanisms and functions to NEURON
Topic: NMODL code no longer works in version 8.2
Replies: 7
Views: 14612

Re: NMODL code no longer works in version 8.2

scoplib_ansi.h was removed from the system back in Jan 2022. I expect you need a clean folder where you type nrnivmodl. Just remove all the *.o, *.c, *.cpp, *.dll files from your folder. (and remove the x86_64 folder if it exists in your folder)
by hines
Wed Aug 09, 2023 4:11 pm
Forum: Adding new mechanisms and functions to NEURON
Topic: NMODL code no longer works in version 8.2
Replies: 7
Views: 14612

Re: NMODL code no longer works in version 8.2

successful compilation
No warnings?
I would prefer accurate use of types. I.e.

Code: Select all

nrnran123_State*
instead of

Code: Select all

void*
and

Code: Select all

uint32_t
instead of

Code: Select all

int
(in that particular case)
by hines
Mon Aug 07, 2023 8:11 pm
Forum: Adding new mechanisms and functions to NEURON
Topic: NMODL code no longer works in version 8.2
Replies: 7
Views: 14612

Re: NMODL code no longer works in version 8.2

try replacing the three lines #define VOIDCAST void** vp = (void**)(&(_p_ptr)) extern void * nrnran123_newstream(int,int); extern void nrnran123_deletestream(void *); with the single line #define VOIDCAST nrnran123_State** vp = (nrnran123_State**)(&(_p_ptr)) and also *vp = nrnran123_newstrea...
by hines
Fri Jun 02, 2023 6:42 am
Forum: UNIX/Linux
Topic: configuring neuron on a cluster with a local install of python - and getting it to use that python with nrniv -python
Replies: 3
Views: 31531

Re: configuring neuron on a cluster with a local install of python - and getting it to use that python with nrniv -pytho

Perhaps this is beside the point since the configuration mentioned nothing about what in cmake is -DNRN_ENABLE_PYTHON_DYNAMIC=ON I mention it because usually it is in that context that multiple python installations allow the wrong choice at runtime for libpython..so If runtime dynamic loading is NOT...
by hines
Fri Jun 02, 2023 6:16 am
Forum: Parallel NEURON
Topic: Thread-safe non-voltage POINTER variables
Replies: 4
Views: 13004

Re: Thread-safe non-voltage POINTER variables

Multisplit will not provide a complete parallel solution as it is limited to voltage as the coupling variable between compartments. However it does suffice for the stiff (very small time constants can be a source of numerical instability and voltage coupling between small compartments is very large)...
by hines
Thu Jun 01, 2023 12:23 pm
Forum: Parallel NEURON
Topic: Thread-safe non-voltage POINTER variables
Replies: 4
Views: 13004

Re: Thread-safe non-voltage POINTER variables

I'm afraid the model that coelesced in my mind after reading your post is unlikely to be the same as your existing (working serial?) model. I'm imagining a few states per compartment of a cell that are coupled to the corresponding states of adjacent compartments of the same cell via fluxes that are ...
by hines
Tue Dec 20, 2022 8:39 pm
Forum: Parallel NEURON
Topic: NEURON: The total number of cells, 1, is different than the number of user partition cells, 0
Replies: 2
Views: 6991

Re: NEURON: The total number of cells, 1, is different than the number of user partition cells, 0

parcom.hoc is only for load balancing an already existing network model (or large cell). To make your 4 line fragment work , the 4 lines must be moved after cell = Section() However, I believe your purpose can be better achieved with pc = h.ParallelContext() pc.nthread(16) # assuming you have 16 cor...