mirror of
https://github.com/paboyle/Grid.git
synced 2025-04-11 14:40:46 +01:00
SVE_readme update, update Grid_vector_types.h
This commit is contained in:
parent
499edc0636
commit
5abec5b8a9
@ -118,11 +118,10 @@ accelerator_inline Grid_half sfw_float_to_half(float ff) {
|
|||||||
#ifdef GEN
|
#ifdef GEN
|
||||||
#if defined(A64FX) // breakout A64FX SVE ACLE here
|
#if defined(A64FX) // breakout A64FX SVE ACLE here
|
||||||
//#pragma message("building for A64FX / SVE ACLE")
|
//#pragma message("building for A64FX / SVE ACLE")
|
||||||
#if defined(HOTFIX)
|
#if defined(ARMCLANGCOMPAT)
|
||||||
#pragma message("applying armclang hotfix")
|
#pragma message("applying armclang fix")
|
||||||
#define ARMCLANGHOTFIX // armclang 20.0 compiles, but binaries give wrong results without hotfix
|
//#else
|
||||||
#else
|
// #pragma message("not applying armclang fix")
|
||||||
#pragma message("not applying armclang hotfix")
|
|
||||||
#endif
|
#endif
|
||||||
#include <arm_sve.h>
|
#include <arm_sve.h>
|
||||||
#include "Grid_a64fx-2.h"
|
#include "Grid_a64fx-2.h"
|
||||||
@ -241,7 +240,7 @@ public:
|
|||||||
return sizeof(Vector_type) / sizeof(Scalar_type);
|
return sizeof(Vector_type) / sizeof(Scalar_type);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ARMCLANGHOTFIX
|
#ifdef ARMCLANGCOMPAT
|
||||||
accelerator_inline Grid_simd &operator=(const Grid_simd &&rhs) {
|
accelerator_inline Grid_simd &operator=(const Grid_simd &&rhs) {
|
||||||
svint8_t tmp = svld1(svptrue_b8(), (int8_t*)&(rhs.v));
|
svint8_t tmp = svld1(svptrue_b8(), (int8_t*)&(rhs.v));
|
||||||
svst1(svptrue_b8(), (int8_t*)this, tmp);
|
svst1(svptrue_b8(), (int8_t*)this, tmp);
|
||||||
|
@ -7,14 +7,14 @@ armclang 20.0 VLA
|
|||||||
|
|
||||||
../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
|
../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
|
||||||
|
|
||||||
must use armclang 20.0 with ARMCLANGCOMPAT applied, otherwise Benchmark_wilson gives wrong result
|
must use armclang 20.0 with ARMCLANGCOMPAT, otherwise Benchmark_wilson gives wrong result
|
||||||
|
|
||||||
|
|
||||||
armclang 20.1 VLA
|
armclang 20.1 VLA
|
||||||
|
|
||||||
../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 -mcpu=a64fx -DA64FX -DA64FXASM -DDSLASHINTRIN" LDFLAGS=-static GRID_LDFLAGS=-static MPI_CXXLDFLAGS=-static
|
../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 -mcpu=a64fx -DARMCLANGCOMPAT -DA64FX -DA64FXASM -DDSLASHINTRIN" LDFLAGS=-static GRID_LDFLAGS=-static MPI_CXXLDFLAGS=-static
|
||||||
|
|
||||||
must use armclang 20.1 with ARMCLANGCOMPAT applied, otherwise Benchmark_wilson gives wrong result
|
must use armclang 20.1 with ARMCLANGCOMPAT, otherwise Benchmark_wilson gives wrong result
|
||||||
Test_simd build error caused by -mcpu=a64fx ?
|
Test_simd build error caused by -mcpu=a64fx ?
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user