devitocodes / devito

DSL and compiler framework for automated finite-differences and stencil computation
http://www.devitoproject.org
MIT License
537 stars 221 forks source link

compiler: Improve quality of generated code #2263

Closed FabioLuporini closed 7 months ago

FabioLuporini commented 8 months ago

This PR, and its sibling in PRO, dramatically improve the quality of the generated code when running production-level kernels. This is mostly evident in PRO, when compression, serialization, mpi, and data streaming are all used in combination in the same Operator. A lot of code is now nicely abstracted away into routines, which significantly decreases the final code size.

review-notebook-app[bot] commented 8 months ago

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

codecov[bot] commented 8 months ago

Codecov Report

Attention: 181 lines in your changes are missing coverage. Please review.

Comparison is base (21ef56c) 86.91% compared to head (4dfc228) 86.80%.

Files Patch % Lines
tests/test_gpu_common.py 0.00% 74 Missing :warning:
devito/passes/iet/asynchrony.py 7.69% 36 Missing :warning:
devito/passes/iet/engine.py 61.97% 23 Missing and 4 partials :warning:
devito/ir/iet/visitors.py 69.04% 9 Missing and 4 partials :warning:
devito/ir/iet/efunc.py 59.09% 9 Missing :warning:
devito/passes/iet/orchestration.py 0.00% 8 Missing :warning:
devito/passes/iet/languages/openacc.py 44.44% 4 Missing and 1 partial :warning:
devito/core/gpu.py 60.00% 2 Missing :warning:
devito/passes/__init__.py 50.00% 1 Missing and 1 partial :warning:
devito/symbolics/printer.py 33.33% 2 Missing :warning:
... and 3 more
Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #2263 +/- ## ========================================== - Coverage 86.91% 86.80% -0.12% ========================================== Files 229 229 Lines 42156 42296 +140 Branches 7787 7830 +43 ========================================== + Hits 36641 36715 +74 - Misses 4865 4921 +56 - Partials 650 660 +10 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.