You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 20, 2023. It is now read-only.
Like OpenACC/CUDA, ABI compatibility of OpenMP and shipping duplicate OpenMP runtime library is problematic.
To Reproduce
Build the wheel on manylinux2014_aarch64
Try to use the wheel on Ubuntu20 Aarch64 (circle-ci) gives:
(nrn_test_venv_39) circleci@ip-172-28-90-45:~/project$ python test/coreneuron/test_direct.py
NEURON: unable to open font "*helvetica-medium-r-normal*--14*", using "fixed"
/lib/aarch64-linux-gnu/libgomp.so.1: cannot allocate memory in static TLS block
NEURON: Could not dlopen CoreNEURON mechanism library : /home/circleci/project/aarch64/libcorenrnmech.so
near line 0
create soma
^
ParallelContext[0].psolve(5)
Traceback (most recent call last):
File "/home/circleci/project/test/coreneuron/test_direct.py", line 92, in<module>test_direct_memory_transfer()
File "/home/circleci/project/test/coreneuron/test_direct.py", line 70, in test_direct_memory_transfer
run(mode)
File "/home/circleci/project/test/coreneuron/test_direct.py", line 52, in run
pc.psolve(h.tstop)
RuntimeError: hocobj_call error
(nrn_test_venv_39) circleci@ip-172-28-90-45:~/project$ ls /usr/lib/aarch64-linux-gnu/libgomp*/usr/lib/aarch64-linux-gnu/libgomp.so.1 /usr/lib/aarch64-linux-gnu/libgomp.so.1.0.0
And forcing this library makes thing "better":
(nrn_test_venv_39) circleci@ip-172-28-90-45:~/project$ LD_PRELOAD=/usr/lib/aarch64-linux-gnu/libgomp.so.1 python test/coreneuron/test_direct.pyNEURON: unable to open font "*helvetica-medium-r-normal*--14*", using "fixed"================ MECHANISMS COUNT BY TYPE ================== Id Name Count 0 (null) 0 1 (null) 0 2 morphology 0 3 capacitance 1 4 pas 0 5 extracellular 0 6 fastpas 0 7 IClamp 1 8 AlphaSynapse 0 9 ExpSyn 0 10 Exp2Syn 0 11 SEClamp 0 12 VClamp 0 13 OClamp 0 14 APCount 0 15 na_ion 1 16 k_ion 1 17 hh 1 18 NetStim 0 19 IntFire1 0 20 IntFire2 0 21 IntFire4 0 22 PointProcessMark 0 23 PatternStim 0 24 ba1 0 25 ba0 0 26 ForNetConTest 0 27 IntervalFire 0 28 DAsyn 0 29 Sample 1 30 Bounce 0=============================================================Memory size information for all NrnThreads per rank------------------------------------------------------------------ field min max avg n_cell 1 1 1.00....
Describe the issue
Like OpenACC/CUDA, ABI compatibility of OpenMP and shipping duplicate OpenMP runtime library is problematic.
To Reproduce
Expected behavior
Wheel should work without any issue.
Additional context
auditwheel
packages extra libraries like OpenMPOn the host machine OpenMP runtime exists in:
And forcing this library makes thing "better":
@ferdonline : we have similar issue with GPU (OpenACC runtime) and you can see @olupton's hack in https://github.com/neuronsimulator/nrn/pull/1661/files. One of previous discussion was if we should workaround this in auditwheel.
The text was updated successfully, but these errors were encountered: