mirror of
https://github.com/paboyle/Grid.git
synced 2025-04-25 05:05:56 +01:00
specialized A64FX Dslash kernels
This commit is contained in:
parent
5cdbb7e71e
commit
19eef97503
@ -30,7 +30,9 @@ Author: paboyle <paboyle@ph.ed.ac.uk>
|
|||||||
/* END LEGAL */
|
/* END LEGAL */
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#if defined(DSLASHA64FX)
|
#if defined(A64FX)
|
||||||
|
|
||||||
|
#pragma message("invoking A64FX Dslash")
|
||||||
|
|
||||||
// undefine everything
|
// undefine everything
|
||||||
#include <simd/Fujitsu_A64FX_undef.h>
|
#include <simd/Fujitsu_A64FX_undef.h>
|
||||||
@ -194,9 +196,9 @@ WilsonKernels<ZWilsonImplFH>::AsmDhopSiteDagExt(StencilView &st, DoubledGaugeFie
|
|||||||
int ss,int ssU,int Ls,int Ns,const FermionFieldView &in, FermionFieldView &out)
|
int ss,int ssU,int Ls,int Ns,const FermionFieldView &in, FermionFieldView &out)
|
||||||
#include <qcd/action/fermion/implementation/WilsonKernelsAsmBody.h>
|
#include <qcd/action/fermion/implementation/WilsonKernelsAsmBody.h>
|
||||||
|
|
||||||
#undef MAYBEPERM
|
//#undef MAYBEPERM
|
||||||
//#undef MULT_2SPIN
|
//#undef MULT_2SPIN
|
||||||
#define MAYBEPERM(A,B)
|
//#define MAYBEPERM(A,B)
|
||||||
//#define MULT_2SPIN(ptr,pf) MULT_ADDSUB_2SPIN_LS(ptr,pf)
|
//#define MULT_2SPIN(ptr,pf) MULT_ADDSUB_2SPIN_LS(ptr,pf)
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////
|
||||||
@ -346,7 +348,7 @@ WilsonKernels<ZDomainWallVec5dImplFH>::AsmDhopSiteDagExt(StencilView &st, Double
|
|||||||
//#undef MAYBEPERM
|
//#undef MAYBEPERM
|
||||||
//#undef MULT_2SPIN
|
//#undef MULT_2SPIN
|
||||||
|
|
||||||
// undefine everything
|
// undefine
|
||||||
#include <simd/Fujitsu_A64FX_undef.h>
|
#include <simd/Fujitsu_A64FX_undef.h>
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
@ -359,7 +361,7 @@ WilsonKernels<ZDomainWallVec5dImplFH>::AsmDhopSiteDagExt(StencilView &st, Double
|
|||||||
#include <simd/Fujitsu_A64FX_asm_double.h>
|
#include <simd/Fujitsu_A64FX_asm_double.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// KNL stuff
|
// former KNL
|
||||||
//#define MAYBEPERM(A,perm) if (perm) { A ; }
|
//#define MAYBEPERM(A,perm) if (perm) { A ; }
|
||||||
//#define MULT_2SPIN(ptr,pf) MULT_ADDSUB_2SPIN(ptr,pf)
|
//#define MULT_2SPIN(ptr,pf) MULT_ADDSUB_2SPIN(ptr,pf)
|
||||||
//#define COMPLEX_SIGNS(isigns) vComplexD *isigns = &signsD[0];
|
//#define COMPLEX_SIGNS(isigns) vComplexD *isigns = &signsD[0];
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -34,9 +34,11 @@ directory
|
|||||||
|
|
||||||
#ifndef AVX512
|
#ifndef AVX512
|
||||||
#ifndef QPX
|
#ifndef QPX
|
||||||
|
#ifndef A64FX
|
||||||
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
#include <Grid/qcd/action/fermion/implementation/WilsonKernelsAsmImplementation.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
NAMESPACE_BEGIN(Grid);
|
NAMESPACE_BEGIN(Grid);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include "Version.h"
|
//#include "Version.h"
|
||||||
namespace Grid {
|
namespace Grid {
|
||||||
void printHash(){
|
void printHash(){
|
||||||
#ifdef GITHASH
|
#ifdef GITHASH
|
||||||
|
Loading…
x
Reference in New Issue
Block a user