-
Notifications
You must be signed in to change notification settings - Fork 119
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI: enable optimisations, use master of reporting libraries #2186
CI: enable optimisations, use master of reporting libraries #2186
Conversation
In the
and in the
so the change is being propagate correctly. This will inevitably involve building |
e32f653
to
c6c5a9b
Compare
Codecov Report
📣 This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more @@ Coverage Diff @@
## master #2186 +/- ##
==========================================
- Coverage 55.72% 55.72% -0.01%
==========================================
Files 615 615
Lines 123849 123849
==========================================
- Hits 69018 69016 -2
- Misses 54831 54833 +2
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
✔️ c6c5a9b9da546bbf5e7820d9a5828990a7f224b4 -> Azure artifacts URL |
50809a8
to
b172934
Compare
✔️ b17293416a610ff452e5984771aaeb7496a50657 -> Azure artifacts URL |
✔️ 544bbbc9f89f7b11c5ef645410f45783680c92d9 -> Azure artifacts URL |
544bbbc
to
fce8c70
Compare
✔️ fce8c70797f3a0aedc6ff11d7b8b00ed1afb6732 -> Azure artifacts URL |
GPU failures potentially related to BlueBrain/CoreNeuron#885 |
This should be picked up from GitHub PR descriptions using the CI_BRANCHES syntax, or if it is set manually when launching a pipeline using the GitLab UI.
- Add explicit mapping clauses to avoid a crash in test-solver when compiled with optimisations enabled. - Use an explicit if (nt->compute_gpu) block instead of relying on if clauses in OpenACC and OpenMP directives; nvc++ 22.3 does not seem to respect these clauses at least in some cases. - To avoid code duplication, introduce a solve_interleaved2_loop_body function that combines the triangularisation and back substitution steps. - Because the compiler cannot deal with many layers of function calls in device code, manually inline function calls into solve_interleaved2_loop_body.
fce8c70
to
b6620ae
Compare
✔️ b6620ae -> Azure artifacts URL |
✔️ 6c40a0d -> Azure artifacts URL |
✔️ 3355611 -> Azure artifacts URL |
* libsonata-report, reportinglib: default to building master * libsonata-report, reportinglib: single %gcc build * neuron: no more debug variant, prefer build_type=FastDebug * BLUECONFIGS_BRANCH: support dynamic setting This should be picked up from GitHub PR descriptions using the CI_BRANCHES syntax, or if it is set manually when launching a pipeline using the GitLab UI. * [email protected] + OpenMP: fixes including for -O1 - Add explicit mapping clauses to avoid a crash in test-solver when compiled with optimisations enabled. - Use an explicit if (nt->compute_gpu) block instead of relying on if clauses in OpenACC and OpenMP directives; nvc++ 22.3 does not seem to respect these clauses at least in some cases. - To avoid code duplication, introduce a solve_interleaved2_loop_body function that combines the triangularisation and back substitution steps. - Because the compiler cannot deal with many layers of function calls in device code, manually inline function calls into solve_interleaved2_loop_body. * tqperf: bump past tqperf#14.
This PR aims to make two changes:
In pursuit of these two goals, a few other changes crept in:
solve_interleaved2
gains two workarounds for issues innvc++
22.3:if (nt->compute_gpu)
condition is made explicit, as this was being ignored. some other re-organisation (solve_interleaved2_loop_body
) avoids code duplication.map
clause is added tonrn_pragma_omp(target teams loop ...)
to avoid a crash wherenvc++
appeared to mis-deduce the length of an array
tqperf
tests not to use cryptographic hashes but instead compute basic statistics of network events. this allows the test to have a fuzzy comparisons, which allows it to pass with compiler optimisations enabledTODO:
CI_BRANCHES:SPACK_BRANCH=olupton/neuron-fast-debug,BLUECONFIGS_BRANCH=olupton/neuron-fast-debug