ClimaCore.jl
ClimaCore.jl copied to clipboard
Store 1D SE differentiation matrix
Store 1D SE differentiation matrix to avoid recomputation in spectral element kernels
- [x] Code follows the style guidelines OR N/A.
- [x] Unit tests are included OR N/A.
- [x] Code is exercised in an integration test OR N/A.
- [x] Documentation has been added/updated OR N/A.
bors try
bors r-
bors try
bors try
try
Build succeeded!
The publicly hosted instance of bors-ng is deprecated and will go away soon.
If you want to self-host your own instance, instructions are here. For more help, visit the forum.
If you want to switch to GitHub's built-in merge queue, visit their help page.
Does this make any difference? Since it's an SArray
, it should just get baked into the kernel.
Does this make any difference? Since it's an
SArray
, it should just get baked into the kernel.
This will 1) reduce op count for each thread in the kernel, 2) eliminate storage of full differentiation matrix on each thread (insteading of just loading one entry per thread onto shmem) 3) potentially reduce register usage for busy kernels!
I don't quite see how this would help with that: basically the only difference is that this would pass it through as a kernel parameter, rather than as a compile-time constant. Do you have a benchmark?