Skip to content

Numpy 1.20.0+: GCC 6.4.0 issue on PPC64le #19017

@ax3l

Description

@ax3l

Reproducing code example:

Installing numpy from source on PPC64le (Power9) on Summit at OLCF fails with compiler errors.
The 1.19 release line is not affected.

Works:

  • python3 -m pip install numpy==1.19.0
  • python3 -m pip install numpy==1.19.5

Fails:

  • python3 -m pip install numpy (latest: 1.20.0)
  • python3 -m pip install numpy (latest: 1.20.3)

Error message:

For 1.20.3:

  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_s8':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_u16':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_s16':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_u32':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_s32':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_u64':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_s64':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_f32':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~
  In file included from build/src.linux-ppc64le-3.7/numpy/core/src/_simd/_simd.dispatch.vsx3.c:10:0:
  numpy/core/src/_simd/_simd.dispatch.c.src: In function 'simd__intrin_cmpneq_f64':
  numpy/core/src/_simd/_simd.dispatch.c.src:314:1: error: AltiVec argument passed to unprototyped function
   SIMD_IMPL_INTRIN_2(@intrin@_@sfx@, v@bsfx@, v@sfx@, v@sfx@)
   ^~~~~~~~~~~~~~~~~~

Full build log:
numpy_1-20-3_ppc64le_gcc6_4.txt

NumPy/Python version information:

Affected releases: 1.20.0-1.20.3

System information:

  • Summit (OLCF) with IBM POWER9 processors
  • uname -a: Linux login2 4.14.0-115.21.2.el7a.ppc64le #1 SMP Thu May 7 22:22:31 UTC 2020 ppc64le ppc64le ppc64le GNU/Linux
  • $ lsb_release -a
LSB Version:	:core-4.1-noarch:core-4.1-ppc64le
Distributor ID:	RedHatEnterpriseServer
Description:	Red Hat Enterprise Linux Server release 7.6 (Maipo)
Release:	7.6
Codename:	Maipo
  • gcc: 6.4.0
  • Cython: 0.29.23
  • OpenBLAS: 0.3.9 OpenMP
  • LAPACK: Netlib-Lapack 3.8.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions