# Ideas for cycle 11 ###### tags: `functional cycle 11` ## ICON/EXCLAIM - Python bindings generator (instead of C++ CudaIcoGenerator) \[**shape**\] - Remove dusk/dawn \[**postponed** interacts with python bindings\] - serialzation? move stuff to icon-exclaim repo - DSL preprocessor for verfication/integration \[**shape as research**\] - Finish dycore (and compare to dawn performance) \[**shape** together with refactoring\] - Refactoring in ICON4Py and icon-exclaim \[**shape** together with finish dycore\] - cleanup some dusk workaround - Fusing: calling field_operator from field_operators - ... - Rationalize ICON4Py, regroup, better names (Anruag, Abishek, Will?) \[**discuss** with Anurag\] - Optimizations \[**postponed** focus this cycle on preparation for optimizations\] - Transformations: neighbortable compression - Prototype (for communication) between Fortran and Python \[**shape**\] - Porting tracer advection \[**shape** a subset of stencils\] - Discuss SparseFields with domain scientists \[**schedule** a discussion\] - Add symbolic subdomain markers (in vertical and horizontal) \[**shape**\] - For vertical, research if subdomains are partially or totally ordered ## GT4Py - Plain CUDA backend \[**???**\] - CLI similar to what typical compiler toolchains do \[**postponed** (waiting for refactorings in GT4Py to conclude\] - C++ backend integration into Python \[**shape**\] - unstructured (neighbor tables, sparse fields) - positional fields (embedded.index_field) - goal: go through the list of disabled tests for `run_gtfn` - Shaping: embedded field view \[**shape** for cycle 12\] - Field view: \[**shape**] - absolute domain (as alternative to relative with respect to out field) in field view - expandable parameters (for tracer advection) - `if` (on scalars) - add tuple return for `where` - design: local iterative solver, e.g. functional local `while`(with max iter or not?) - Vertical indirection \[**design and shape** for cycle 12\] - maybe try if already works in iterator ir