holoviz / datashader

Quickly and accurately render even the largest data.
http://datashader.org
BSD 3-Clause "New" or "Revised" License
3.24k stars 363 forks source link

Refactor of CUDA *_n reductions #1261

Closed ianthomas23 closed 11 months ago

ianthomas23 commented 11 months ago

Builds on top of #1260, refactoring CUDA *_n reductions to reduce code duplication and make the GPU code more similar to the CPU code. It adds a new cuda_shift_and_insert function, separates out the 3D and 4D *_n combine functions, and adds *_impl functions for the shared functionality between the 3D and 4D combinations.

codecov[bot] commented 11 months ago

Codecov Report

Merging #1261 (fd6a50b) into main (81260ca) will increase coverage by 0.12%. The diff coverage is 34.14%.

@@            Coverage Diff             @@
##             main    #1261      +/-   ##
==========================================
+ Coverage   83.49%   83.62%   +0.12%     
==========================================
  Files          35       35              
  Lines        8955     8938      -17     
==========================================
- Hits         7477     7474       -3     
+ Misses       1478     1464      -14     
Files Changed Coverage Δ
datashader/reductions.py 79.16% <22.58%> (+1.02%) :arrow_up:
datashader/transfer_functions/_cuda_utils.py 26.38% <29.62%> (+5.75%) :arrow_up:
datashader/utils.py 82.71% <100.00%> (-0.20%) :arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more