-
- Downloads
Include reductions WIP state
Squashed commit of the following: commit d2f04568 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue May 6 09:43:47 2025 +0200 Add missing include of gpu atomics commit 013e6546 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon May 5 12:24:10 2025 +0200 Broadcast reduction init val as neutral element commit d9c3be85 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon May 5 12:23:38 2025 +0200 Minor typecheck fix commit 13e2c118 Merge: 0a095f83 3e664665 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon May 5 11:34:09 2025 +0200 Merge remote-tracking branch 'origin/rangersbach/reductions' into rangersbach/reductions commit 0a095f83 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon May 5 11:33:56 2025 +0200 Move simd horizontal op header commit c6bcdefb Author: zy69guqi <richard.angersbach@fau.de> Date: Mon May 5 11:31:51 2025 +0200 Move gpu atomics header commit e1c2c463 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon May 5 11:30:16 2025 +0200 Add reductions param to LoopVectorizer commit 83fcc73a Author: zy69guqi <richard.angersbach@fau.de> Date: Mon May 5 10:32:32 2025 +0200 Add reductions param to AddOpenMP commit c76b897f Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 30 16:09:09 2025 +0200 Drop ReductionFunctions and introduce PsReductionWriteBack commit 3e664665 Author: Frederik Hennig <frederik.hennig@fau.de> Date: Wed Apr 30 15:47:44 2025 +0200 Apply 1 suggestion(s) to 1 file(s) Co-authored-by:Frederik Hennig <frederik.hennig@fau.de> commit c4305590 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 30 15:39:06 2025 +0200 Fix missing resolution of ConstantFunctions on GPU platforms commit 2ca58226 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 30 15:28:14 2025 +0200 Minor adaptation of required gpu headers commit 65362ddf Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 30 13:55:29 2025 +0200 Fix typecheck note for match args of PsConstantFunction commit c0af39ae Merge: a9c8d6a7 d0f8a04e Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 30 13:30:40 2025 +0200 Merge branch 'v2.0-dev' into rangersbach/reductions commit a9c8d6a7 Author: Frederik Hennig <frederik.hennig@fau.de> Date: Sat Apr 26 21:01:57 2025 +0200 Apply 4 suggestion(s) to 2 file(s) Co-authored-by:
Frederik Hennig <frederik.hennig@fau.de> commit 0e2a548a Merge: a14f13fb 9c5b9bce Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 17:42:42 2025 +0200 Merge remote-tracking branch 'origin/rangersbach/reductions' into rangersbach/reductions commit a14f13fb Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 17:39:22 2025 +0200 Omit extra type context creation for scalar op in PsVecHorizontal commit 9c5b9bce Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 16:35:17 2025 +0200 Omit unnecessary type context creations for PsVecHorizontal commit 508701f6 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 16:32:16 2025 +0200 Fix lint commit 3757e179 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 16:27:07 2025 +0200 Omit unnecessary replace_symbol call commit f3105780 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 16:15:37 2025 +0200 Add unit test for ReductionAssignment commit 4106f9fd Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 15:57:33 2025 +0200 Parameterize test_reduction_assignments with reduction ops commit 490ec914 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 15:51:08 2025 +0200 Omit old stuff from reduction_op_to_expr commit 39483609 Merge: 1580a2b0 c0df001f Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 15:45:27 2025 +0200 Merge remote-tracking branch 'origin/rangersbach/reductions' into rangersbach/reductions commit 1580a2b0 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 15:45:11 2025 +0200 Adapt test_invalid_reduction_assignments to create new contexts for each subtest commit 325ca386 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 15:44:08 2025 +0200 Move checks and init value determination for ReductionAssignments to add_reduction_info commit 0c8654e3 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 15:36:58 2025 +0200 Extend KernelAnalysis to check for invalid references to reduction symbols commit 705ac531 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Apr 25 15:19:00 2025 +0200 Minor doc change commit c0df001f Author: Frederik Hennig <frederik.hennig@fau.de> Date: Fri Apr 25 12:59:07 2025 +0200 Apply 1 suggestion(s) to 1 file(s) Co-authored-by:
Frederik Hennig <frederik.hennig@fau.de> commit da00b78f Author: Frederik Hennig <frederik.hennig@fau.de> Date: Fri Apr 25 12:58:57 2025 +0200 Apply 1 suggestion(s) to 1 file(s) Co-authored-by:
Frederik Hennig <frederik.hennig@fau.de> commit 3010daed Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Apr 24 21:08:49 2025 +0200 Add typification test for PsVecHorizontal commit 94dcf3c5 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Apr 24 20:47:07 2025 +0200 Add unit test for freezing of ReductionAssignments commit f678a2fa Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Apr 24 20:36:36 2025 +0200 Add unit test for checking border cases of freezing illegal usages of ReductionAssignments commit eb6e8c0f Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Apr 24 20:35:16 2025 +0200 Check if reduction symbol is (illegally) accessed before/after reduction assignment commit f0aba2e9 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Apr 24 20:06:25 2025 +0200 Document attributes of ReductionInfo commit 081d11ad Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Apr 24 19:10:21 2025 +0200 Fix indent for error handling in freeze commit dae36dd6 Merge: 603e6a3f 6046db6e Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Apr 24 18:53:39 2025 +0200 Merge remote-tracking branch 'origin/rangersbach/reductions' into rangersbach/reductions commit 6046db6e Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Apr 24 17:54:31 2025 +0200 Move symbol handling for reductions to context and add more checks commit 603e6a3f Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 16:46:27 2025 +0200 Fix docs commit b0904d93 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 16:45:26 2025 +0200 Fix typecheck commit 3c3283cd Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 15:44:30 2025 +0200 Merge reduction user guides into one document commit b4cabdd8 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 14:57:25 2025 +0200 Add consistency check for PsVecHorizontal in typifier commit 935beb55 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 14:41:04 2025 +0200 Move kernel AST modifications for reductions to distinct function commit 8394f0f4 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 14:18:29 2025 +0200 Move reduction_op_mapping.py commit 7b74cafa Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 13:01:20 2025 +0200 Fix import commit 9e61cceb Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 12:58:38 2025 +0200 Omit lanes for match args in PsVecHorizontal commit 36124cd2 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 11:58:34 2025 +0200 Add check for typed symbols for ReductionAssignment constructor commit 427e5344 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 11:35:47 2025 +0200 Remove more parts of reduction_assignment_from_str commit f7142b16 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 11:32:47 2025 +0200 Remove lanes arg from PsVecHorizontal commit 99726a97 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 11:30:29 2025 +0200 Add docstring to PsVecHorizontal commit 21df6f4b Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 10:57:43 2025 +0200 Omit admonitions from docs commit a2060520 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 23 10:54:44 2025 +0200 Get rid of reduction_assignment_from_str commit bd99cd11 Merge: 5bef84a8 9d634352 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 2 19:47:55 2025 +0200 Merge remote-tracking branch 'origin/rangersbach/reductions' into rangersbach/reductions commit 5bef84a8 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 2 19:47:49 2025 +0200 Write howto guide for reductions commit f469e70e Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Apr 2 19:19:28 2025 +0200 Extend test_reduction_gpu with assume_warp_aligned_block_size and use_block_fitting parameters commit 9d634352 Merge: 492fb30a b008a9e9 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Mar 31 14:14:38 2025 +0200 Merge branch 'rangersbach/reductions' of i10git.cs.fau.de:pycodegen/pystencils into rangersbach/reductions commit 492fb30a Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Mar 31 13:53:34 2025 +0200 Adapt error messages for reduced assignments in freeze.py commit 3484e7f7 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Mar 31 13:49:47 2025 +0200 Rename compound op mapping funcs commit 7b43ffd2 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Mar 31 13:45:15 2025 +0200 Add minor comment to ReductionInfo dataclass commit b008a9e9 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Mar 28 13:26:09 2025 +0100 Adapt guards for generated avx512 horizontal ops commit 806dcb6b Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 27 17:02:57 2025 +0100 Move resolution of reductions to concrete gpu platform classes commit 4e5c89b9 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Mar 24 16:54:50 2025 +0100 Fix lint, typecheck commit f7790954 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Mar 24 16:22:40 2025 +0100 Use NPP library for numeric limits for CUDA, use std limits for HIP commit c31d4074 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 18:56:41 2025 +0100 Try fixing required headers for cuda and hip for reductions commit 6a6e57f0 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 18:19:03 2025 +0100 Fix wrong rank being used for obtaining default block sizes commit 2c507d79 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 18:18:10 2025 +0100 Fix required headers for cuda/hip platforms commit 16a6e80d Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 17:11:13 2025 +0100 Add missing type fold for loop vectorizer again commit 5ee715d0 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 17:04:47 2025 +0100 Reformat adapted files [skip ci] commit d7e6890c Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 16:23:54 2025 +0100 Fix typecheck commit 9ec813bd Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 16:07:01 2025 +0100 Employ optimized warp-level reduction based on check commit 90837d04 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 15:36:01 2025 +0100 Merge handling for GPU reductions into generic_gpu.py for the time being commit 0d7526c0 Merge: 974cf848 f8e5419f Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Mar 20 15:06:46 2025 +0100 Merge branch 'v2.0-dev' into rangersbach/reductions commit 974cf848 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Mar 12 16:40:25 2025 +0100 Fix header incl commit c7f1518e Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Mar 12 16:28:42 2025 +0100 Move manual atomic op implementations to new header commit 3202d8b8 Merge: 4a031fc1 cd25546f Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Mar 12 16:23:59 2025 +0100 Merge branch 'v2.0-dev' into rangersbach/reductions commit 4a031fc1 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Feb 27 11:49:00 2025 +0100 Fix lint commit a972d759 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Feb 26 19:15:45 2025 +0100 Fix getter for thread exec condition for dense/sparse iteration spaces in cuda.py commit 02be4d5e Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Feb 21 19:35:48 2025 +0100 Fix typecheck commit 89a6f36a Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Feb 21 18:17:44 2025 +0100 Fix lint commit a8479afa Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Feb 21 18:11:51 2025 +0100 Refactor reductionfunction mechanism commit bcd83842 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Feb 21 14:56:46 2025 +0100 Use full mask for CUDA reductions commit 2b6589b8 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Feb 19 19:06:30 2025 +0100 Introduce masks for warp reductions and fix errors when shuffling warp results commit c7b564be Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Feb 19 19:04:57 2025 +0100 Fix CUDARuntimeError import commit ad292c2b Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Feb 19 16:34:14 2025 +0100 Add initial version of warp-level reduction for CUDA commit ce816539 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Feb 19 16:33:25 2025 +0100 Encapsulate fetching of kernel conditions for iteration spaces in separate function commit d10c65d4 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Feb 18 17:29:22 2025 +0100 Catch CUDARuntimeError for mising CUDA capable device in reduction GPU test commit 99125ca7 Merge: 77a22268 c2c31e84 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Feb 18 17:09:02 2025 +0100 Merge branch 'v2.0-dev' into rangersbach/reductions commit 77a22268 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Feb 18 12:57:49 2025 +0100 Avoid duplicate definition of atomicMin/Max for HIP commit 0c40ed63 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 17 18:31:41 2025 +0100 Use import or skip mechanism for cupy commit ef185b4e Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 17 18:18:42 2025 +0100 Fix ImportError for cupy commit d1489837 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 17 17:54:40 2025 +0100 Fix typecheck commit 13569a61 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 17 17:31:23 2025 +0100 Fix lint commit 71881893 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 17 17:16:09 2025 +0100 Split reduction test into separate CPU/GPU tests commit fe3cd6cd Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 17 16:02:05 2025 +0100 Add generator for SIMD horizontal operations and the emitted code. commit 58cdb792 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 17 15:30:42 2025 +0100 Fix bug with doubly inverted sign for subtraction reductions commit 7306f4dd Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Feb 12 15:41:34 2025 +0100 Minor fix commit 8e0a7478 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Feb 12 15:22:45 2025 +0100 Refactor PsVecHorizontal as PsBinOp commit eb7823a5 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Feb 12 14:13:05 2025 +0100 Minor refactor of reduction ops commit b4b105be Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Feb 11 17:21:54 2025 +0100 Minor fix commit a9590829 Merge: d4b7e78f 60a348f1 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Feb 11 17:17:45 2025 +0100 Merge remote-tracking branch 'origin/rangersbach/reductions' into rangersbach/reductions commit d4b7e78f Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Feb 11 17:16:23 2025 +0100 Add initial implementation for horizontal reductions for vectorization commit 60a348f1 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 10 18:30:29 2025 +0100 Support atomic sub, min, max for fp reductions using custom implementations with CAS mechanism commit a71e0d31 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 10 18:03:52 2025 +0100 Temporarily change default CUDA block size for CUDA jit commit 5caafdd0 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Feb 10 15:13:51 2025 +0100 Add guard for INFINITY numeric limit macro used by cuda backend commit 4edb0f97 Merge: a2a59d40 4876f0b7 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Feb 6 15:57:14 2025 +0100 Merge branch 'v2.0-dev' into rangersbach/reductions commit a2a59d40 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Feb 4 18:04:15 2025 +0100 Wrap statement around generated atomic call [skip ci] commit d8ae9002 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Feb 4 17:49:37 2025 +0100 Use predefined macro values for numeric limits in cuda backend commit f60d9d5d Author: Richard Angersbach <iwia025h@csnhr.nhr.fau.de> Date: Tue Feb 4 16:31:16 2025 +0100 Minor adaptations for reduction test commit 826ee8e2 Author: Richard Angersbach <iwia025h@csnhr.nhr.fau.de> Date: Tue Feb 4 16:30:13 2025 +0100 Try supporting pointer dtypes for reductions in cupy gpu jit commit 4c7fd409 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 31 14:56:08 2025 +0100 Fix lint [skip ci] commit 616f609f Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 31 14:51:45 2025 +0100 Fix lint [skip ci] commit 0fb11858 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 30 20:06:00 2025 +0100 Add CUDA backend for numeric limits commit 10def05e Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 30 19:59:46 2025 +0100 Fix typecheck commit e15d3cf7 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 30 19:15:13 2025 +0100 Add first CUDA reduction impl using atomic operations commit 6e08683b Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 30 18:04:02 2025 +0100 Add dummy implementations for unfold_function in cuda/sycl platforms commit dd8f421d Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 30 16:38:46 2025 +0100 Introduce functions to be unfolded by platform into code blocks for reduction init and write-back commit 53807242 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 30 16:20:25 2025 +0100 Remove orig_symbol from reduction info as it is not needed commit a9da7d43 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 29 11:56:00 2025 +0100 Fix lint [skip ci] commit 06dc2344 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 29 11:48:26 2025 +0100 Use std::numeric_limits as NumericLimitsFunctions backend for cpu commit 2424c157 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 28 20:05:51 2025 +0100 Move reduction properties for local and ptr variable into single dataclass commit e94c4980 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 28 19:18:00 2025 +0100 Adapt reduction assignment interface and employ enums instead of strings for the binary operation employed commit f71ce708 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 28 18:00:53 2025 +0100 Enforce usage of typed symbols for reductions commit c73deaf6 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 28 13:11:14 2025 +0100 Fix mypy errors and move binop mapping function commit 3daaa5e5 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 28 12:47:15 2025 +0100 Fix typecheck commit 96b5cbf2 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 28 12:44:21 2025 +0100 Fix lint commit f0d2fde6 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 24 16:20:37 2025 +0100 Encapsulate mapping of binop strings to actual operands and now also use for considering initial value of passed reduction pointer value commit 4c726aa6 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 24 14:43:32 2025 +0100 Prepare reduction test for GPU support commit b352a2e2 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 23 18:18:24 2025 +0100 Fix lint for jit/cpu_extension_module.py commit 5ca40eae Merge: 3e595df6 72fa8672 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 23 18:11:54 2025 +0100 Merge remote-tracking branch 'origin/rangersbach/reductions' into rangersbach/reductions commit 3e595df6 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 17:35:50 2025 +0100 Refine test_reduction.py to check for result correctness commit ba697180 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 17:23:02 2025 +0100 Rewire existing code extraction of fields to support reduction pointer extraction commit f1c556e6 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 16:30:43 2025 +0100 Integrate reduction pointers to parameters.py commit 777ab888 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 16:01:51 2025 +0100 Use literals for C macros used for the numeric limits commit 3e0daa67 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 16:01:00 2025 +0100 Propagate properties of reduction pointer symbols to kernel parameters commit c6eedfcd Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 15:16:32 2025 +0100 Split reduction var property into local and pointer-based reduction var properties commit c51ae2b4 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 21 18:42:43 2025 +0100 Set type of reduced variable to pointer and write back via PsMemAcc commit 3c276118 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 21 17:34:06 2025 +0100 Fix declaration of local reduction var and write back to original variable commit 0a9abc2a Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 21 13:55:35 2025 +0100 Swap out neutral init values for reduced assignments with min/max op commit 45ab4e86 Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Jan 20 17:46:49 2025 +0100 Try initializing kernel-local reduction variable copy commit 6a7a251f Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 15:06:57 2025 +0100 Try fix mypy no-redef error commit 2c15b989 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 15:02:19 2025 +0100 Define type of init_val for reduction as Any commit dcdfff04 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 14:56:12 2025 +0100 Parameterize test_reduction.py for different reduction operations commit ffcd54e0 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 14:55:42 2025 +0100 Fix min/max reductions commit b4dd0c8c Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 14:29:10 2025 +0100 Fix usage of numerical limits for init value of reduction commit 6f8fbdfe Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 13:43:32 2025 +0100 Fix removal of function parameters for lhs symbols that are not declared in the kernel commit 55c98120 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 18:38:34 2025 +0100 Adapt comment of ReductionSymbolProperty commit 355d638a Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 18:15:58 2025 +0100 Rename min/max of numeric limits enum commit 97c171f3 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 17:38:46 2025 +0100 Adaptations to reduction test commit dc5898a7 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 17:30:25 2025 +0100 Omit distinction between normal and reduced assignments in AssignmentCollection commit 8fb5af39 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 16:20:14 2025 +0100 Fix header include of limits.h commit f30ca33b Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 16:19:23 2025 +0100 Fix inheritance of special math function enum classes commit 71aaf722 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 16:18:37 2025 +0100 Add back reduced_assign to sympyextensions interface commit f00708ed Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 16:15:24 2025 +0100 Reformat reduction.py commit 99a33351 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 15:52:05 2025 +0100 Add omp reduction clauses for reduced symbols commit c96a9461 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 13:33:12 2025 +0100 Add C function selection for numeric limits functions commit e5861425 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 12:59:16 2025 +0100 Minor adaptation on how symbols are given reduction property commit 3d592ab0 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 17:51:22 2025 +0100 Try fixing circular module import commit d8a71787 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 17:50:51 2025 +0100 Add dictionary of reduced symbols to codegen context commit 35c8160b Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 17:19:09 2025 +0100 Minor import fixes commit 54837529 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 16:42:00 2025 +0100 Introduce reduction symbol property and add to lhs of reduced symbol commit b263d752 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 16:39:39 2025 +0100 Add functions for numeric limits (to be supported by the backends) commit fae371d4 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 16:36:18 2025 +0100 Get rid of reduction using the division operator commit c7b9bb52 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 12:59:36 2025 +0100 Expose new reduced assignments to pystencils interface commit f54fa321 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 11:36:53 2025 +0100 Fix relative module imports for newly introduced sympyextensions for reductions commit 6b8bff09 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 14 18:13:18 2025 +0100 Initial work for introducing reduction capabilities to pystencils Signed-off-by:
zy69guqi <richard.angersbach@fau.de> commit 72fa8672 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 17:35:50 2025 +0100 Refine test_reduction.py to check for result correctness commit 4f6f5580 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 17:23:02 2025 +0100 Rewire existing code extraction of fields to support reduction pointer extraction commit 4e748308 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 16:30:43 2025 +0100 Integrate reduction pointers to parameters.py commit 6c8ee44f Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 16:01:51 2025 +0100 Use literals for C macros used for the numeric limits commit 350a4eac Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 16:01:00 2025 +0100 Propagate properties of reduction pointer symbols to kernel parameters commit b5dd2ef0 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 22 15:16:32 2025 +0100 Split reduction var property into local and pointer-based reduction var properties commit 6bc3cf3f Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 21 18:42:43 2025 +0100 Set type of reduced variable to pointer and write back via PsMemAcc commit 9fd1c2ad Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 21 17:34:06 2025 +0100 Fix declaration of local reduction var and write back to original variable commit e0347f54 Merge: 90ca9ead 3fc9a049 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 21 17:11:10 2025 +0100 Merge branch 'rangersbach/reductions' of i10git.cs.fau.de:pycodegen/pystencils into rangersbach/reductions commit 3fc9a049 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 21 13:55:35 2025 +0100 Swap out neutral init values for reduced assignments with min/max op commit 90ca9ead Author: zy69guqi <richard.angersbach@fau.de> Date: Mon Jan 20 17:46:49 2025 +0100 Try initializing kernel-local reduction variable copy commit 75ea862f Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 15:06:57 2025 +0100 Try fix mypy no-redef error commit 3c5a93b4 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 15:02:19 2025 +0100 Define type of init_val for reduction as Any commit 9bbb8181 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 14:56:12 2025 +0100 Parameterize test_reduction.py for different reduction operations commit a3025645 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 14:55:42 2025 +0100 Fix min/max reductions commit bb984679 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 14:29:10 2025 +0100 Fix usage of numerical limits for init value of reduction commit fff5a079 Author: zy69guqi <richard.angersbach@fau.de> Date: Fri Jan 17 13:43:32 2025 +0100 Fix removal of function parameters for lhs symbols that are not declared in the kernel commit 1a1c23b5 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 18:38:34 2025 +0100 Adapt comment of ReductionSymbolProperty commit f16d8e79 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 18:15:58 2025 +0100 Rename min/max of numeric limits enum commit e9ee769d Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 17:38:46 2025 +0100 Adaptations to reduction test commit 9a8e6f9b Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 17:30:25 2025 +0100 Omit distinction between normal and reduced assignments in AssignmentCollection commit 9741c024 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 16:20:14 2025 +0100 Fix header include of limits.h commit cf2ec066 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 16:19:23 2025 +0100 Fix inheritance of special math function enum classes commit ef9239ed Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 16:18:37 2025 +0100 Add back reduced_assign to sympyextensions interface commit 555a6a83 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 16:15:24 2025 +0100 Reformat reduction.py commit a16969bf Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 15:52:05 2025 +0100 Add omp reduction clauses for reduced symbols commit 4ae330dc Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 13:33:12 2025 +0100 Add C function selection for numeric limits functions commit af855492 Author: zy69guqi <richard.angersbach@fau.de> Date: Thu Jan 16 12:59:16 2025 +0100 Minor adaptation on how symbols are given reduction property commit b8718cb1 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 17:51:22 2025 +0100 Try fixing circular module import commit 53fc7ca4 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 17:50:51 2025 +0100 Add dictionary of reduced symbols to codegen context commit 66ce4395 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 17:19:09 2025 +0100 Minor import fixes commit 719a76fb Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 16:42:00 2025 +0100 Introduce reduction symbol property and add to lhs of reduced symbol commit 778cfd51 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 16:39:39 2025 +0100 Add functions for numeric limits (to be supported by the backends) commit ba145853 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 16:36:18 2025 +0100 Get rid of reduction using the division operator commit 558a0f20 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 12:59:36 2025 +0100 Expose new reduced assignments to pystencils interface commit 543bf118 Author: zy69guqi <richard.angersbach@fau.de> Date: Wed Jan 15 11:36:53 2025 +0100 Fix relative module imports for newly introduced sympyextensions for reductions commit 8a2bf664 Author: zy69guqi <richard.angersbach@fau.de> Date: Tue Jan 14 18:13:18 2025 +0100 Initial work for introducing reduction capabilities to pystencils Signed-off-by:
zy69guqi <richard.angersbach@fau.de>
Showing
- docs/source/backend/gpu_codegen.md 1 addition, 0 deletionsdocs/source/backend/gpu_codegen.md
- docs/source/index.rst 1 addition, 0 deletionsdocs/source/index.rst
- docs/source/user_manual/reductions.md 202 additions, 0 deletionsdocs/source/user_manual/reductions.md
- src/pystencils/__init__.py 15 additions, 6 deletionssrc/pystencils/__init__.py
- src/pystencils/backend/ast/analysis.py 1 addition, 1 deletionsrc/pystencils/backend/ast/analysis.py
- src/pystencils/backend/ast/vector.py 71 additions, 11 deletionssrc/pystencils/backend/ast/vector.py
- src/pystencils/backend/emission/ir_printer.py 13 additions, 2 deletionssrc/pystencils/backend/emission/ir_printer.py
- src/pystencils/backend/functions.py 31 additions, 4 deletionssrc/pystencils/backend/functions.py
- src/pystencils/backend/kernelcreation/analysis.py 17 additions, 0 deletionssrc/pystencils/backend/kernelcreation/analysis.py
- src/pystencils/backend/kernelcreation/context.py 87 additions, 1 deletionsrc/pystencils/backend/kernelcreation/context.py
- src/pystencils/backend/kernelcreation/freeze.py 43 additions, 15 deletionssrc/pystencils/backend/kernelcreation/freeze.py
- src/pystencils/backend/kernelcreation/typification.py 34 additions, 2 deletionssrc/pystencils/backend/kernelcreation/typification.py
- src/pystencils/backend/platforms/cuda.py 109 additions, 1 deletionsrc/pystencils/backend/platforms/cuda.py
- src/pystencils/backend/platforms/generic_cpu.py 40 additions, 7 deletionssrc/pystencils/backend/platforms/generic_cpu.py
- src/pystencils/backend/platforms/generic_gpu.py 112 additions, 27 deletionssrc/pystencils/backend/platforms/generic_gpu.py
- src/pystencils/backend/platforms/hip.py 15 additions, 1 deletionsrc/pystencils/backend/platforms/hip.py
- src/pystencils/backend/platforms/platform.py 5 additions, 2 deletionssrc/pystencils/backend/platforms/platform.py
- src/pystencils/backend/platforms/sycl.py 5 additions, 2 deletionssrc/pystencils/backend/platforms/sycl.py
- src/pystencils/backend/platforms/x86.py 32 additions, 6 deletionssrc/pystencils/backend/platforms/x86.py
- src/pystencils/backend/reduction_op_mapping.py 24 additions, 0 deletionssrc/pystencils/backend/reduction_op_mapping.py
Loading
Please register or sign in to comment