Skip to content

Better integration of halo exchange #417

@FlorianDeconinck

Description

@FlorianDeconinck

The current version of the integration of halo exchange uses WrappedHaloExchange class to allow orchestration and stencil backends to co-exists (due to DaCe parsing limitations).

This has two issues:

  • Goes against the "state-less" design of the code by requiring the same state to be passed to __init__ and __call__ of the model
  • Performance of the orchestration is limited by the callback which acts as a black-box funnel for the data-flow

Solutions:

  • Using literal list, which is pending a DaCe feature to be finished, we could keep the callback but remove the state from __init__
  • Furthermore, we could recode the custom pack/unpack in a language that DaCe can parse then do away with the wrapper altogether

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions