Skip to content

Translate tests[dace]: multiple source files generated for tests with multiple savepoints #49

@romanc

Description

@romanc

Describe the bug

When running a translate tests with the dace backend (dace:cpu was used to reproduce), we see one cpp file generated in the dacecache/ per savepoint. This is odd since we'd expect only one source file to be generated as there's only one SDFG. When multiple source files are generated (in case of multiple savepoints), they are all semantically identical and only differ in variable names of temporaries and functions names.

To Reproduce

Run the translate test for XPPM with dace:cpu backend. Observe how the dacecache/ contains five cpp files in the src/cpu folder and only one program.sdfg.

Image

Expected behavior

We'd expect one single SDFG and one single cpp source file in the dacecache/ folder.

System Environment

Describe the system environment, include:

  • OS: OpenSuse 15.6
  • NDSL Version: 2025.03.00
export FV3_DACEMODE=BuildAndRun
export PACE_FLOAT_PRECISION=64

rm -r .gt_cache_*
rm -r .translate-*

python  -m pytest -vs \
        --backend=dace:cpu \
        --data_path=./test_data/8.1.3/c12_6ranks_standard/dycore \
        --threshold_overrides_file=./tests/savepoint/translate/overrides/standard.yaml \
        --which_modules=XPPM \
        --which_rank=0 \
        ./tests/savepoint

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions