Skip to content

Gromacs build targets wrong architecture #176

Description

@wspear

The Spack environment in the x86_64 cuda 80 image targets x86_64_v3, but we see:

objdump -d $(spack location -i gromacs)/lib/libgromacs_mpi.so | grep -m5 -E 'zmm|k[0-7],|vpternlog|vpermt2|evex'
 1165371:       62 f1 7d 48 ef c0       vpxord %zmm0,%zmm0,%zmm0
 1165377:       62 f1 7c 48 28 c8       vmovaps %zmm0,%zmm1
 116537d:       62 f1 7c 48 28 d0       vmovaps %zmm0,%zmm2
 1165383:       62 f1 7c 48 28 d8       vmovaps %zmm0,%zmm3
 1165389:       62 f1 7c 48 28 e0       vmovaps %zmm0,%zmm4

...indicating it was built for AVX-512. Possibly the configure process detected the actual architecture of the build runner and ignored the arch spec that should have been passed through the Spack package.

This results in an 'illegal instruction' error from the gromacs test on 'athena' which only provides ZEN2 compatibility.

The gromacs-cuda test has been disabled until this can be resolved.

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