Use pinned memory for GPU version
Description
Add a special allocation function in C that will allocate pinned memory when running on GPUs for the wavefunctions. This increases the transfer speed by more than a factor of 2.
This function could in the future also be used to make the allocated memory aligned for CPU runs which would improve the usage of vectorization.
News snippet
Use pinned memory for the GPU version to improve transfer speeds.
Checklist
-
I have checked that my code follows the Octopus coding standards
Closes #223 (closed). Relates to #162 (closed).
Merge request reports
Activity
changed milestone to %10.0
added 1 commit
- c47f3fdb - Rename allocation functions and add C implementation
Codecov Report
Merging #669 into develop will decrease coverage by
0.15%
. The diff coverage is81.94%
.@@ Coverage Diff @@ ## develop #669 +/- ## =========================================== - Coverage 70.83% 70.68% -0.16% =========================================== Files 472 473 +1 Lines 89541 89590 +49 =========================================== - Hits 63429 63323 -106 - Misses 26112 26267 +155
Impacted Files Coverage Δ src/grid/batch_inc.F90 100% <100%> (ø)
src/states/states_elec.F90 84.04% <100%> (+0.03%)
src/grid/allocate_special.c 66.66% <66.66%> (ø)
src/grid/batch.F90 86.48% <81.81%> (-0.94%)
src/grid/subarray_inc.F90 53.65% <0%> (-43.91%)
src/basic/accel_inc.F90 71.11% <0%> (-28.89%)
src/grid/boundaries_inc.F90 79.73% <0%> (-14.06%)
src/grid/boundaries.F90 84.87% <0%> (-10.09%)
src/grid/nl_operator.F90 65.97% <0%> (-5.68%)
src/grid/nl_operator_inc.F90 64.25% <0%> (-4.26%)
... and 4 more
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 1f1f919...5f4cf9c. Read the comment docs.Edited by Codecovmentioned in merge request !673 (merged)
- Resolved by Sebastian Ohlmann
mentioned in commit 15ad4bcb
mentioned in issue #223 (closed)