Menu

#1016 #error "SSSE3 instruction set not enabled"

Developer_(v3.11.x)
closed-fixed
None
5
2016-02-01
2015-12-27
No

When building ATLAS 3.11.38 on this system:

Linux sagebu14_32s02 3.13.0-74-generic #118-Ubuntu SMP Thu Dec 17 22:52:10 UTC 2015 i686 i686 i686 GNU/Linux

using

gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

the ATLAS build fails with

make[6]: Entering directory `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/tune/blas/gemm'
/usr/bin/gcc -DL2SIZE=4194304 -I/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/include -I/mnt/highperf/buildbot/jdemeyer/sa
ge/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/../ATLAS//include -I/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-buil
d/../ATLAS//include/contrib -DAdd_ -DF77_INTEGER=int -DStringSunStyle -DATL_PTR32 -DATL_OS_Linux -DATL_ARCH_Corei3 -DATL_CPUMHZ=3805 -DATL_SSE3 -DATL_SSE2 -DATL_SSE1 -D
ATL_GAS_x8632 -m32 -DATL_FULL_LAPACK -DATL_NCPU=8 -fomit-frame-pointer -mfpmath=sse -O2 -fPIC -Wl,-rpath,/mnt/highperf/buildbot/jdemeyer/sage/local/lib -Wl,-rpath,/mnt/
highperf/buildbot/jdemeyer/sage/local/lib64  -m32 -o xgmmsearch /mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/../ATLAS//tu
ne/blas/gemm/gmmsearch.c -lm
/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/../ATLAS//tune/blas/gemm/gmmsearch.c:1:0: warning: SSE instruction set disab
led, using 387 arithmetics [enabled by default]
 /*
 ^
./xgmmsearch -p s -f 4
ERROR IN COMMAND: make xsammtime_pt mb=120 nb=120 kb=120 mmrout=ATL_samm120_4m_4x4x1.c mu=4 nu=4 ku=1 mvA=1 mvB=1 mvC=0 kmoves=" -DATL_MOVEA -DATL_MOVEB" beta=1 outF="-
f res/tmpout.ktim" > /dev/null 2>&1
   PROPOSED FILENAME: res/tmpout.ktim
   GENSTR='make gen_amm pre=s rt=ATL_samm120_4m_4x4x1.c vec=mdim vlen=4 mu=4 nu=4 ku=1 bcast=1'
TIMING BCAST VS SPLAT MVEC WITH: B=(120,120,120) U=(1,4,1)
make[6]: *** [res/snreg] Error 255
make[6]: Leaving directory `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/tune/blas/gemm'
make[5]: *** [res/snreg] Error 2
make[5]: Leaving directory `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/tune/sysinfo'
xsyssum: /mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/../ATLAS//tune/sysinfo/GetSysSum.c:129: getmmnreg: Assertion `syste
m(fnam) == 0' failed.
make[4]: *** [/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/include/atlas_ssysinfo.h] Aborted (core dumped)
make[4]: *** Deleting file `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/include/atlas_ssysinfo.h'
make[4]: Leaving directory `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/tune/sysinfo'
make[3]: *** [/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/include/atlas_ssysinfo.h] Error 2
make[3]: Leaving directory `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/src/auxil'
make[2]: *** [IStage1] Error 2
make[2]: Leaving directory `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/bin'
ERROR 539 DURING CACHESIZE SEARCH!!.  CHECK INSTALL_LOG/Stage1.log FOR DETAILS.

Executing the failed command gives

rm -f smm.c                                                                                                                                                             
make sammtime_pt_b1.o
make[1]: Entering directory `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/tune/blas/gemm'
make[1]: `sammtime_pt_b1.o' is up to date.
make[1]: Leaving directory `/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/tune/blas/gemm'
/usr/bin/gcc -DL2SIZE=4194304 -I/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/include -I/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/../ATLAS//include -I/mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/../ATLAS//include/contrib -DAdd_ -DF77_INTEGER=int -DStringSunStyle -DATL_PTR32 -DATL_OS_Linux -DATL_ARCH_Corei3 -DATL_CPUMHZ=3805 -DATL_SSE3 -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -m32 -DATL_FULL_LAPACK -DATL_NCPU=8 -fomit-frame-pointer -mfpmath=sse -O2 -msse3 -fPIC -Wl,-rpath,/mnt/highperf/buildbot/jdemeyer/sage/local/lib -Wl,-rpath,/mnt/highperf/buildbot/jdemeyer/sage/local/lib64  -m32 -DBETA1=1 -DMB=120 -DNB=120 -DKB=120 \
               -DSREAL=1 -DATL_MOVEA -DATL_MOVEB -o sammmKT.o -c ATL_samm120_4m_4x4x1.c
In file included from /mnt/highperf/buildbot/jdemeyer/sage/local/var/tmp/sage/build/atlas-3.11.38/src/ATLAS-build/../ATLAS//include/atlas_simd.h:650:0,
                 from ATL_samm120_4m_4x4x1.c:8:
/usr/lib/gcc/i686-linux-gnu/4.8/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
 # error "SSSE3 instruction set not enabled"
   ^
make: *** [xsammtime_pt] Error 1
1 Attachments

Discussion

  • Jeroen Demeyer

    Jeroen Demeyer - 2015-12-28

    Fixed by using GCC 4.9.2 instead of 4.8.4.

     
  • R. Clint Whaley

    R. Clint Whaley - 2015-12-28
    • status: open --> closed-fixed
    • assigned_to: R. Clint Whaley
     
  • R. Clint Whaley

    R. Clint Whaley - 2015-12-28

    glad you found it!

     
  • Robert Warmbier

    Robert Warmbier - 2016-02-01

    Good morning,
    I actually have the same problem on an openSUSE Leap 42.1 x86_64 machine (gcc 4.8.5) with an Core2Duo based Xeon since atlas 3.11.36 (didn't check 35). Changing the compiler is no option.
    I'm not quite sure about the logic, but cat /proc/cpuinfo shows SSSE3, but not SSE3 (not sure, whether it is always like that). Changing the compile flag -msse3 to -mssse3 manually after the configure makes the atlas compile just fine.

    Best Robert

     

    Last edit: Robert Warmbier 2016-02-01

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.