---
# System prepended metadata

title: Brainstorming cycle 18
tags: [cycle 18]

---

Name in parenthesis means taking the lead in shaping. Please involve the right people or distribute the work.

## Blue line
- ~~Maintenance of blue line~~
- No need to shape, we reserve time for Abishek for what makes sense until presentation:
    - Overflow verification [tasks](https://hackmd.io/QbMJVJ6wS0iE4GQW7RrMwg) from cycle 16 and 17. 
        - Additionally, could explore if disabling fused-add-multiply could allow us to lower tolerances for verify mode and make probtest more robust
        - Zeman test for mixed-precision mode?
- (meeting with Anurag about testing infrastructure: Christoph invites)


## Green line 
- finish benchmarking project (both green and blue line) (Christoph)
  - [support for CPU target in DaCe backend](https://hackmd.io/GHaMoNxIRou_PIP14sHhbQ)
  - [support for GPU target in DaCe backend](https://hackmd.io/eWN8CQBERM6OheYgoViWTw)
  - optional: explore ELK stack integration
- make progress on model setup: 
    - grid manager 
        - translation between gridmanager and ICON index order (will be discussed Mon/Tue workshop): -> a mapping should be possible via Field index to coordinate mapping. We will use this for verification in the grid manager, but probably makes no sense to do for full model runs. There either use grid manager or icon fields ordering
        
    - [interpolation fields](https://hackmd.io/r7ub7IgwSwmwgAo46vypsg) (Christoph: Jonas would like to work on this), 
    
    - diffusion granule: incorporation of grid manager connectivity (multi-node)
- extend python drive for JW testcase using serialized interpolation/metric fields (Chia Rui/AD) 
- Cleanup ICON4Py (Magdalena)
    - use fused stencils in greenline (make sure toolchain performance is fixed)
    - renaming [cycle 17](https://hackmd.io/5325WLjjS-GZetlJwviDtA) -> touches blue line
    - in only greenline related: [reduce technical debt](https://hackmd.io/algYm0wpRw24QqQhycpOQQ)

- [greenline CI](https://hackmd.io/DV1wvNkxSku6HNl6p1m1cQ) test from serialized data (Magdalena)
- [validation for global model](https://hackmd.io/Wq-1v9f4Q8aZy6eThvSH3A): serialize a global experiment (Magdalena)
- ~~Jablonowski-Williamson test case in the green line~~

## GT4Py 
- workshop preparation (Enrique/Hannes)
    1. embedded field view
    2. exercises
- One unified type system: (Peter)
    - type inference for ITIR (shaped for last cycle [here](https://hackmd.io/-XyJg77PRjqzqQTnRjsO_Q))
    - decide: need constraints (yes/no) (team meeting)
    - task: create one clean & well-designed type system (shaping, cycle)
    - optional: replace frontend TS || replace ITIR TS (post/next-cycle)
- already shaped from previous cycle:
    - error messages (shaped [here](https://hackmd.io/wpHXE4pvQp6aC4vbWOYB1A))
- Continue test refactoring (Hannes)
    - move tests, markers, etc...
- Check if there are leftovers from Till's work from cycle 16 (Till)
- List of small features:
    - `max_value`, `min_value` for a type, should we make it a GT4Py builtin?
    - ...

## DaCe
(shaping will be discussed with Edoardo, Peter, Philip, Christos, Ben W.)
- [backend refactorings: software quality improvements for new devs](https://hackmd.io/V74Lk75ORNezvLBSAT6YpQ?view)
- [ITIR pass for field domain offsets](https://hackmd.io/n-uPcaDwTNahIKNwrpZYwQ)
- [ITIR pass to replace invalid identifiers](https://hackmd.io/9aV2DpvKRtKtkOuy_7USKA) and/or DaCe transformation(!)
- DaCe contribution: SourceLocationGroup
- DaCe contribution: JAX-to-DaCe (shaped for an unsuccessful CSCS internship [here](https://hackmd.io/84NQjpebS8KXLB9_0PmhIA))


