From e7f51e5fb1f523f96276d00b8ed23f275ec7e700 Mon Sep 17 00:00:00 2001 From: Peter Boyle Date: Mon, 11 Aug 2025 21:10:20 +0100 Subject: [PATCH] Timer pointers for hadrons compat. Reluctantly, this interface is silly to pass timers around. --- Grid/qcd/utils/A2Autils.h | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/Grid/qcd/utils/A2Autils.h b/Grid/qcd/utils/A2Autils.h index 8998126c..0afb382d 100644 --- a/Grid/qcd/utils/A2Autils.h +++ b/Grid/qcd/utils/A2Autils.h @@ -63,15 +63,36 @@ public: std::vector gammas, const std::vector &mom, int orthogdim); + template + static void MesonField(TensorType &mat, + const FermionField *lhs_wi, + const FermionField *rhs_vj, + std::vector gammas, + const std::vector &mom, + int orthogdim,double *timer) + { + MesonField(mat,lhs_wi,rhs_vj,gammas,mom,orthogdim); + } template // output: rank 5 tensor, e.g. Eigen::Tensor static void AslashField(TensorType &mat, - const FermionField *lhs_wi, - const FermionField *rhs_vj, - const std::vector &emB0, - const std::vector &emB1, - int orthogdim); + const FermionField *lhs_wi, + const FermionField *rhs_vj, + const std::vector &emB0, + const std::vector &emB1, + int orthogdim); + template // output: rank 5 tensor, e.g. Eigen::Tensor + static void AslashField(TensorType &mat, + const FermionField *lhs_wi, + const FermionField *rhs_vj, + const std::vector &emB0, + const std::vector &emB1, + int orthogdim,double *timer) + { + AslashField(mat,lhs_wi,rhs_vj,emB0,emB1,orthogdim); + } + template typename std::enable_if<(std::is_same, TensorType>::value || std::is_same>, TensorType>::value),