mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 05:54:32 +00:00 
			
		
		
		
	SITMO I/O for NERSC working now bit repro
This commit is contained in:
		@@ -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<RngEngine>                             _generators;
 | 
			
		||||
 
 | 
			
		||||
@@ -41,7 +41,7 @@ int main (int argc, char ** argv)
 | 
			
		||||
 | 
			
		||||
  std::vector<int> simd_layout = GridDefaultSimd(4,vComplex::Nsimd());
 | 
			
		||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
			
		||||
  std::vector<int> latt_size  ({32,32,32,32});
 | 
			
		||||
  std::vector<int> latt_size  ({16,16,16,16});
 | 
			
		||||
  std::vector<int> 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<int>({45,12,81,9});
 | 
			
		||||
  sRNGa.SeedFixedIntegers(std::vector<int>({45,12,81,9});
 | 
			
		||||
  pRNGa.SeedFixedIntegers(std::vector<int>({45,12,81,9}));
 | 
			
		||||
  sRNGa.SeedFixedIntegers(std::vector<int>({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<LatticeColourMatrix> 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<Nd;mu++){
 | 
			
		||||
@@ -147,8 +153,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
  std::string clone2x3("./ckpoint_clone2x3.4000");
 | 
			
		||||
  std::string clone3x3("./ckpoint_clone3x3.4000");
 | 
			
		||||
 | 
			
		||||
  int precision32 = 1;
 | 
			
		||||
  int tworow      = 1;
 | 
			
		||||
  NerscIO::writeConfiguration(Umu,clone3x3,0,precision32);
 | 
			
		||||
  NerscIO::writeConfiguration(Umu,clone2x3,1,precision32);
 | 
			
		||||
  
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
SUBDIRS = core forces hmc solver debug smearing
 | 
			
		||||
SUBDIRS = core forces hmc solver debug smearing IO
 | 
			
		||||
 | 
			
		||||
if BUILD_CHROMA_REGRESSION
 | 
			
		||||
  SUBDIRS+= qdpxx
 | 
			
		||||
 
 | 
			
		||||
@@ -63,7 +63,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -65,7 +65,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -62,7 +62,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -130,7 +130,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  */
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  // RNG definition (Name: RandomNumberGenerator)
 | 
			
		||||
  RNGModuleParameters RNGpar(Reader);
 | 
			
		||||
 
 | 
			
		||||
@@ -60,7 +60,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -62,7 +62,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -61,7 +61,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -62,7 +62,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -54,7 +54,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 20;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -55,7 +55,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 20;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -65,7 +65,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -62,7 +62,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -51,10 +51,10 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CheckpointerParameters CPparams;  
 | 
			
		||||
  CPparams.config_prefix = "ckpoint_lat";
 | 
			
		||||
  CPparams.rng_prefix = "ckpoint_rng";
 | 
			
		||||
  CPparams.saveInterval = 20;
 | 
			
		||||
  CPparams.saveInterval = 1;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -74,7 +74,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -61,7 +61,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -62,7 +62,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -64,7 +64,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -61,7 +61,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -62,7 +62,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -62,7 +62,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
@@ -61,7 +61,7 @@ int main(int argc, char **argv) {
 | 
			
		||||
  CPparams.saveInterval = 5;
 | 
			
		||||
  CPparams.format = "IEEE64BIG";
 | 
			
		||||
  
 | 
			
		||||
  TheHMC.Resources.LoadBinaryCheckpointer(CPparams);
 | 
			
		||||
  TheHMC.Resources.LoadNerscCheckpointer(CPparams);
 | 
			
		||||
 | 
			
		||||
  RNGModuleParameters RNGpar;
 | 
			
		||||
  RNGpar.serial_seeds = "1 2 3 4 5";
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user