-
Notifications
You must be signed in to change notification settings - Fork 38
Conversation
See also #826, as some of these tests do not seem to pass at -O0 using NVHPC 22.5.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
Codecov Report
@@ Coverage Diff @@
## master #841 +/- ##
==========================================
+ Coverage 57.56% 58.36% +0.79%
==========================================
Files 101 102 +1
Lines 9189 9410 +221
==========================================
+ Hits 5290 5492 +202
- Misses 3899 3918 +19
Continue to review full report at Codecov.
|
cc: @nrnhines in case you have any particular suggestions about toy data characteristics/topologies that would provide useful extra coverage. So far the number/size of cells varies, as do the |
With the additional fixes in #842, I can build and run the new tests with NVHPC 22.5 and The At |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🚀
* As well as improving test coverage, these aim to demonstrate problems with nvc++ 22.5 at -O0 (BlueBrain/CoreNeuron#826). * OpenMP target offload support for the `cell_permute=0` solver implementation. * Unrelated: update NMODL submodule, which now requires Python 3.7+ CoreNEURON Repo SHA: BlueBrain/CoreNeuron@9523270
Description
Add some tests of the various CPU/OpenACC/OpenMP/CUDA implementations of the Hines matrix solver.
These use toy input data that is generated on the fly. Tests cover scenarios such as:
both with hardcoded constant values for the matrix elements and pseudorandom number generation.
The results (
d
andrhs
) from all available solver implementations are compared to one another in each scenario.See also #826, as some of these tests do not seem to pass at -O0 using NVHPC 22.5. See: #841 (comment).
Also update NMODL to the latest
master
, which now requires Python 3.7+.How to test this?
Build CoreNEURON with tests enabled (and Boost), run the
test-solver
test. Or just executebin/test-solver
.Test System
Use certain branches in CI pipelines.
CI_BRANCHES:NEURON_BRANCH=master,NMODL_BRANCH=master,SPACK_BRANCH=develop