MUSIC with MPI_DYNAMIC and PYTHON_DYNAMIC + coverage#2092
Conversation
|
Logfiles from GitLab pipeline #85410 (:no_entry:) have been uploaded here! Status and direct links: |
|
Logfiles from GitLab pipeline #85472 (:no_entry:) have been uploaded here! Status and direct links: |
|
Logfiles from GitLab pipeline #85548 (:no_entry:) have been uploaded here! Status and direct links: |
|
Logfiles from GitLab pipeline #85621 (:no_entry:) have been uploaded here! Status and direct links: |
|
Logfiles from GitLab pipeline #85817 (:no_entry:) have been uploaded here! Status and direct links: |
|
Logfiles from GitLab pipeline #85847 (:white_check_mark:) have been uploaded here! Status and direct links: |
|
Logfiles from GitLab pipeline #85849 (:white_check_mark:) have been uploaded here! Status and direct links: |
|
✔️ e303b33 -> Azure artifacts URL |
pramodk
left a comment
There was a problem hiding this comment.
quickly went through the PR and overall its looks ok to me
|
✔️ e303b33 -> Azure artifacts URL |
|
@alexsavulescu I see you changed the base branch to master and back again to enable-music. A master base seems like a good idea as I thought enable-music was merged. But I do see extensive differences between master and enable-music. The situation seems to be, or rather I am, confused. master has a number of mentions of MUSIC, most recently Dec 2, 2022 |
|
I think hines/music-dyamic is fairly complete. But there are a few commits in hines/music-wheel that make sense to put into this PR. In particular, the changes to src/neuronmusic/nrnmusic_dynam.cpp and test/music_tests/runtests.py in regard to the change from MUSIC_LIB_NRN_PATH to NRN_LIBMUSIC_PATH Then I thing this PR is ready to merge. hines/music-wheel needs a great deal of work. Mostly in regard to whether CI will robustly succeed in creating a wheel with MUSIC or whether we are setting ourselves up for regular failure. |
Yes, there were some merge conflicts so I switched back. It looks like
Well I was having issues building [ 34%] Linking CXX executable ../../bin/nrniv
/usr/bin/ld: ../../lib/libnrniv.so: undefined reference to `nrnpy_po2ho(_object*)'
/usr/bin/ld: ../../lib/libnrniv.so: undefined reference to `nrnpy_ho2po(Object*)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/nrniv/CMakeFiles/nrniv.dir/build.make:135: bin/nrniv] Error 1
make[1]: *** [CMakeFiles/Makefile2:1702: src/nrniv/CMakeFiles/nrniv.dir/all] Error 2
make: *** [Makefile:146: all] Error 2and that is related to
That will have to wait for a stable MUSIC release. As you can see in https://github.com/neuronsimulator/nrn/pull/2209/files I was thinking of testing agains MUSIC based on the MPI branch. But that is not robust enough for CI purposes (better than nothing since I'm also working on dropping distutils #2193 where I've also touched MUSIC setup). I will rebase this PR on top of master and get incorporate #2209 into it. |
Improve the FindPackage module for MUSIC Move around some of the tests and use find_path / find_library Fix cmake formatting Various minor fixes addressing @nrnhines' comments CMake module file name should correspond to find_package name. factor nrnmusic.cpp into neuronmusic folder nrnmusicapi.h valid for build time linkage or runtime dynamic loading Enabling music with dyamic mpi loads music dynamically. WIP. Dynamic MPI? Build a libnrnmusic for each mpi. tentative dynamic loading of nrnmusic neuronmusic.so for DYNAMIC needs linking against libnrnmusic...dylib Need to nrnmpi_load if -mpi or -music Temporary hack for music launching nrniv with music args. libnrnmusic.so does not depend on MPI version. Require MUSIC_LIB_NRN_PATH for dynamic loading of libmusic.so. Only dynamically load nrnmusic if a future nrnmusic_init will set nrnmusic=1 music_test sets PATH and MUSIC_LIB_NRN_PATH if needed. nrnmusic only exists if NRN_MUSIC defined revert nrnmpi_dynam.cpp to master.
e303b33 to
8539b70
Compare
I've resolved the merge conflicts and squashed all commits. Notice there is now a back-up branch: |
add coverage setup
|
✔️ f4e2885 -> Azure artifacts URL |
|
The code coverage failure is a puzzle As I was not able to reproduce on my ubuntu 22.04.1 desktop with As an aside, it is not clear to me why test numbering is different. |
ba147c3 to
1fa1d63
Compare
1fa1d63 to
cd41673
Compare
cd41673 to
aa0c02b
Compare
Codecov Report
@@ Coverage Diff @@
## master #2092 +/- ##
==========================================
+ Coverage 56.10% 56.15% +0.04%
==========================================
Files 618 620 +2
Lines 124114 124286 +172
==========================================
+ Hits 69629 69787 +158
- Misses 54485 54499 +14
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
neither was I, but have realized MUSIC was installed in
Numbering is relative to the number of test selected for run ( |
f92a52e to
dccc2c3
Compare
|
✔️ 8626c2b -> Azure artifacts URL |
|
✔️ d3831a9 -> Azure artifacts URL |
related