From 697c0603ce7e5ae819c99acf1c7ed33012b12306 Mon Sep 17 00:00:00 2001 From: paboyle Date: Fri, 5 May 2017 16:54:44 +0100 Subject: [PATCH] SITMO I/O for NERSC working now bit repro --- lib/lattice/Lattice_rng.h | 2 +- tests/IO/Test_nersc_io.cc | 14 +++++++++----- tests/Makefile.am | 2 +- tests/hmc/Test_hmc_EODWFRatio.cc | 2 +- tests/hmc/Test_hmc_EODWFRatioLsVectorised.cc | 2 +- tests/hmc/Test_hmc_EODWFRatio_Gparity.cc | 2 +- tests/hmc/Test_hmc_EOMobiusRatio.cc | 2 +- tests/hmc/Test_hmc_EOWilsonFermionGauge.cc | 2 +- tests/hmc/Test_hmc_EOWilsonRatio.cc | 2 +- tests/hmc/Test_hmc_GparityIwasakiGauge.cc | 2 +- tests/hmc/Test_hmc_GparityWilsonGauge.cc | 2 +- tests/hmc/Test_hmc_IwasakiGauge.cc | 2 +- tests/hmc/Test_hmc_RectGauge.cc | 2 +- tests/hmc/Test_hmc_WilsonAdjointFermionGauge.cc | 2 +- tests/hmc/Test_hmc_WilsonFermionGauge.cc | 2 +- tests/hmc/Test_hmc_WilsonGauge.cc | 4 ++-- ...t_hmc_WilsonMixedRepresentationsFermionGauge.cc | 2 +- tests/hmc/Test_hmc_WilsonRatio.cc | 2 +- tests/hmc/Test_hmc_WilsonTMFermionGauge.cc | 2 +- ...Test_hmc_WilsonTwoIndexSymmetricFermionGauge.cc | 2 +- tests/hmc/Test_rhmc_EOWilson1p1.cc | 2 +- tests/hmc/Test_rhmc_EOWilsonRatio.cc | 2 +- tests/hmc/Test_rhmc_Wilson1p1.cc | 2 +- tests/hmc/Test_rhmc_WilsonRatio.cc | 2 +- 24 files changed, 33 insertions(+), 29 deletions(-) diff --git a/lib/lattice/Lattice_rng.h b/lib/lattice/Lattice_rng.h index 0ea8b724..6dc50fd2 100644 --- a/lib/lattice/Lattice_rng.h +++ b/lib/lattice/Lattice_rng.h @@ -158,7 +158,7 @@ namespace Grid { #ifdef RNG_SITMO typedef sitmo::prng_engine RngEngine; typedef uint64_t RngStateType; - static const int RngStateCount = 4; + static const int RngStateCount = 13; #endif std::vector _generators; diff --git a/tests/IO/Test_nersc_io.cc b/tests/IO/Test_nersc_io.cc index 6d50d8f0..cb33cfab 100644 --- a/tests/IO/Test_nersc_io.cc +++ b/tests/IO/Test_nersc_io.cc @@ -41,7 +41,7 @@ int main (int argc, char ** argv) std::vector simd_layout = GridDefaultSimd(4,vComplex::Nsimd()); std::vector mpi_layout = GridDefaultMpi(); - std::vector latt_size ({32,32,32,32}); + std::vector latt_size ({16,16,16,16}); std::vector clatt_size ({4,4,4,8}); int orthodir=3; int orthosz =latt_size[orthodir]; @@ -54,8 +54,8 @@ int main (int argc, char ** argv) GridSerialRNG sRNGa; GridSerialRNG sRNGb; - pRNGa.SeedFixedIntegers(std::vector({45,12,81,9}); - sRNGa.SeedFixedIntegers(std::vector({45,12,81,9}); + pRNGa.SeedFixedIntegers(std::vector({45,12,81,9})); + sRNGa.SeedFixedIntegers(std::vector({45,12,81,9})); std::string rfile("./ckpoint_rng.4000"); NerscIO::writeRNGState(sRNGa,pRNGa,rfile); @@ -80,8 +80,14 @@ int main (int argc, char ** argv) std::vector U(4,&Fine); + SU3::ColdConfiguration(pRNGa,Umu); + NerscField header; std::string file("./ckpoint_lat.4000"); + + int precision32 = 0; + int tworow = 0; + NerscIO::writeConfiguration(Umu,file,tworow,precision32); NerscIO::readConfiguration(Umu,header,file); for(int mu=0;mu