mirror of
https://github.com/paboyle/Grid.git
synced 2024-11-09 23:45:36 +00:00
guard prevents multiple A64FX build messages
This commit is contained in:
parent
6b6bf537d3
commit
9e085bd04e
@ -39,16 +39,16 @@ Author: Nils Meyer <nils.meyer@ur.de> Regensburg University
|
||||
|
||||
// enable A64FX body
|
||||
#define WILSONKERNELSASMBODYA64FX
|
||||
#pragma message("Including A64FX Dslash: WilsonKernelsAsmBodyA64FX.h")
|
||||
#pragma message("A64FX Dslash: WilsonKernelsAsmBodyA64FX.h")
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
// If we are A64FX specialise the single precision routine
|
||||
///////////////////////////////////////////////////////////
|
||||
#if defined(DSLASHINTRIN)
|
||||
#pragma message ("including A64FX Dslash: intrin")
|
||||
#pragma message ("A64FX Dslash: intrin")
|
||||
#include <simd/Fujitsu_A64FX_intrin_single.h>
|
||||
#else
|
||||
#pragma message ("including A64FX Dslash: asm")
|
||||
#pragma message ("A64FX Dslash: asm")
|
||||
#include <simd/Fujitsu_A64FX_asm_single.h>
|
||||
#endif
|
||||
|
||||
|
@ -39,7 +39,7 @@
|
||||
|
||||
// gcc 10 features
|
||||
#if __ARM_FEATURE_SVE_BITS==512
|
||||
#pragma message("Fixed-size SVE ACLE")
|
||||
#pragma message("building for A64FX / fixed SVE data type size")
|
||||
/* gcc 10.0.1 and gcc 10.1 bug using ACLE data types CAS-159553-Y1K4C6
|
||||
workaround: use gcc's internal data types, bugfix expected for gcc 10.2
|
||||
typedef svbool_t pred __attribute__((arm_sve_vector_bits(512)));
|
||||
|
@ -120,11 +120,15 @@ accelerator_inline Grid_half sfw_float_to_half(float ff) {
|
||||
#if defined(A64FX) || defined(A64FXFIXEDSIZE) // breakout A64FX SVE ACLE here
|
||||
#include <arm_sve.h>
|
||||
#if defined(A64FX) // VLA
|
||||
#ifndef MSGVLA
|
||||
#pragma message("building for A64FX / SVE ACLE VLA")
|
||||
#define MSGVLA
|
||||
#endif
|
||||
#if defined(ARMCLANGCOMPAT)
|
||||
#ifndef MSGCOMPAT
|
||||
#pragma message("applying armclang fix")
|
||||
//#else
|
||||
//#pragma message("not applying armclang fix")
|
||||
#define MSGCOMPAT
|
||||
#endif
|
||||
#endif
|
||||
#include "Grid_a64fx-2.h"
|
||||
#endif
|
||||
@ -132,7 +136,10 @@ accelerator_inline Grid_half sfw_float_to_half(float ff) {
|
||||
#include "Grid_a64fx-fixedsize.h"
|
||||
#endif
|
||||
#else
|
||||
#ifndef MSGGEN
|
||||
#pragma message("building for GEN") // generic
|
||||
#define MSGGEN
|
||||
#endif
|
||||
#include "Grid_generic.h"
|
||||
#endif
|
||||
#endif
|
||||
|
@ -8,6 +8,22 @@
|
||||
../configure --with-lime=/home/men04359/lime/c-lime --without-hdf5 --enable-gen-simd-width=64 --enable-simd=GEN --enable-precision=double --enable-comms=none --enable-openmp CXX=g++-10.0.1 CC=gcc-10.0.1 CXXFLAGS="-std=c++11 -march=armv8-a+sve -msve-vector-bits=512 -fno-gcse -DA64FXFIXEDSIZE -DA64FXASM -DDSLASHINTRIN"
|
||||
|
||||
|
||||
* gcc 10.0.1 fixed-size ACLE (fjt) w/ MPI
|
||||
|
||||
export OMPI_CC=gcc-10.0.1
|
||||
export OMPI_CXX=g++-10.0.1
|
||||
export MPICH_CC=gcc-10.0.1
|
||||
export MPICH_CXX=g++-10.0.1
|
||||
|
||||
$ ../configure --without-hdf5 --enable-gen-simd-width=64 --enable-simd=GEN --enable-precision=double --enable-comms=mpi3 --enable-openmp CXX=mpiFCC CC=mpifcc CXXFLAGS="-std=c++11 -march=armv8-a+sve -msve-vector-bits=512 -fno-gcse -DA64FXFIXEDSIZE -DA64FXASM -DDSLASHINTRIN -DTOFU -I/opt/FJSVxtclanga/tcsds-1.2.24/include/mpi/fujitsu -lrt" LDFLAGS="-L/opt/FJSVxtclanga/tcsds-1.2.24/lib64 -lrt"
|
||||
|
||||
works! but binaries do not finish when running via job scheduler. problem with MPI_finalize ?
|
||||
|
||||
interactive login: mpirun -np 1 ./Benchmark_wilson_sweep --dslash-asm
|
||||
[WARN] PLE 0610 plexec The process terminated with the signal.(rank=0)(nid=0xff010008)(sig=9) ?
|
||||
|
||||
--------------------------------------------------------
|
||||
|
||||
* armclang 20.0 VLA (merlin)
|
||||
|
||||
../configure --with-lime=/home/men04359/lime/c-lime --without-hdf5 --enable-gen-simd-width=64 --enable-simd=GEN --enable-precision=double --enable-comms=none --enable-openmp CXX=armclang++ CC=armclang CXXFLAGS="-std=c++11 -fno-unroll-loops -mllvm -vectorizer-min-trip-count=2 -march=armv8-a+sve -DARMCLANGCOMPAT -DA64FX -DA64FXASM -DDSLASHINTRIN" LDFLAGS=-static GRID_LDFLAGS=-static MPI_CXXLDFLAGS=-static
|
||||
@ -29,6 +45,14 @@ TODO check ARMCLANGCOMPAT
|
||||
TODO check ARMCLANGCOMPAT
|
||||
|
||||
|
||||
* armclang 20.1 VLA (fjt cluster)
|
||||
|
||||
../configure --with-lime=$HOME/local --without-hdf5 --enable-gen-simd-width=64 --enable-simd=GEN --enable-precision=double --enable-comms=mpi3 --enable-openmp CXX=mpiFCC CC=mpifcc CXXFLAGS="-std=c++11 -mcpu=a64fx -DA64FX -DA64FXASM -DDSLASHINTRIN -DTOFU -I/opt/FJSVxtclanga/tcsds-1.2.24/include/mpi/fujitsu -lrt" LDFLAGS="-L/opt/FJSVxtclanga/tcsds-1.2.24/lib64"
|
||||
|
||||
No ARMCLANGCOMPAT -> still correct ?
|
||||
|
||||
--------------------------------------------------------
|
||||
|
||||
* Fujitsu fcc
|
||||
|
||||
../configure --with-lime=$HOME/grid-a64fx/lime/c-lime --without-hdf5 --enable-gen-simd-width=64 --enable-simd=GEN --enable-precision=double --enable-comms=none --enable-openmp --with-mpfr=/home/users/gre/gre-1/grid-a64fx/mpfr-build/install CXX=FCC CC=fcc CXXFLAGS="-Nclang -Kfast -DA64FX -DA64FXASM -DDSLASHINTRIN"
|
||||
|
Loading…
Reference in New Issue
Block a user