mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 05:54:32 +00:00 
			
		
		
		
	Small corrections to the NEON port
This commit is contained in:
		@@ -108,7 +108,7 @@ void WilsonFlow<Gimpl>::evolve_step_adaptive(typename Gimpl::GaugeField &U, Real
 | 
			
		||||
    if (maxTau - taus < epsilon){
 | 
			
		||||
        epsilon = maxTau-taus;
 | 
			
		||||
    }
 | 
			
		||||
    std::cout << GridLogMessage << "Integration epsilon : " << epsilon << std::endl;
 | 
			
		||||
    //std::cout << GridLogMessage << "Integration epsilon : " << epsilon << std::endl;
 | 
			
		||||
    GaugeField Z(U._grid);
 | 
			
		||||
    GaugeField Zprime(U._grid);
 | 
			
		||||
    GaugeField tmp(U._grid), Uprime(U._grid);
 | 
			
		||||
@@ -138,10 +138,10 @@ void WilsonFlow<Gimpl>::evolve_step_adaptive(typename Gimpl::GaugeField &U, Real
 | 
			
		||||
    // adjust integration step
 | 
			
		||||
    
 | 
			
		||||
    taus += epsilon;
 | 
			
		||||
    std::cout << GridLogMessage << "Adjusting integration step with distance: " << diff << std::endl;
 | 
			
		||||
    //std::cout << GridLogMessage << "Adjusting integration step with distance: " << diff << std::endl;
 | 
			
		||||
    
 | 
			
		||||
    epsilon = epsilon*0.95*std::pow(1e-4/diff,1./3.);
 | 
			
		||||
    std::cout << GridLogMessage << "New epsilon : " << epsilon << std::endl;
 | 
			
		||||
    //std::cout << GridLogMessage << "New epsilon : " << epsilon << std::endl;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -166,7 +166,6 @@ void WilsonFlow<Gimpl>::smear(GaugeField& out, const GaugeField& in) const {
 | 
			
		||||
    out = in;
 | 
			
		||||
    for (unsigned int step = 1; step <= Nstep; step++) {
 | 
			
		||||
        auto start = std::chrono::high_resolution_clock::now();
 | 
			
		||||
        std::cout << GridLogMessage << "Evolution time :"<< tau(step) << std::endl;
 | 
			
		||||
        evolve_step(out);
 | 
			
		||||
        auto end = std::chrono::high_resolution_clock::now();
 | 
			
		||||
        std::chrono::duration<double> diff = end - start;
 | 
			
		||||
@@ -191,7 +190,7 @@ void WilsonFlow<Gimpl>::smear_adaptive(GaugeField& out, const GaugeField& in, Re
 | 
			
		||||
    unsigned int step = 0;
 | 
			
		||||
    do{
 | 
			
		||||
        step++;
 | 
			
		||||
        std::cout << GridLogMessage << "Evolution time :"<< taus << std::endl;
 | 
			
		||||
        //std::cout << GridLogMessage << "Evolution time :"<< taus << std::endl;
 | 
			
		||||
        evolve_step_adaptive(out, maxTau);
 | 
			
		||||
        std::cout << GridLogMessage << "[WilsonFlow] Energy density (plaq) : "
 | 
			
		||||
            << step << "  "
 | 
			
		||||
 
 | 
			
		||||
@@ -6,9 +6,9 @@
 | 
			
		||||
 | 
			
		||||
    Copyright (C) 2015
 | 
			
		||||
 | 
			
		||||
Author: Nils Meyer <nils.meyer@ur.de>
 | 
			
		||||
Author: Peter Boyle <paboyle@ph.ed.ac.uk>
 | 
			
		||||
Author: neo <cossu@post.kek.jp>
 | 
			
		||||
    Author: Nils Meyer <nils.meyer@ur.de>
 | 
			
		||||
    Author: Peter Boyle <paboyle@ph.ed.ac.uk>
 | 
			
		||||
    Author: neo <cossu@post.kek.jp>
 | 
			
		||||
 | 
			
		||||
    This program is free software; you can redistribute it and/or modify
 | 
			
		||||
    it under the terms of the GNU General Public License as published by
 | 
			
		||||
@@ -27,7 +27,7 @@ Author: neo <cossu@post.kek.jp>
 | 
			
		||||
    See the full license in the file "LICENSE" in the top level distribution directory
 | 
			
		||||
    *************************************************************************************/
 | 
			
		||||
    /*  END LEGAL */
 | 
			
		||||
//----------------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 | 
			
		||||
  ARMv8 NEON intrinsics layer by
 | 
			
		||||
@@ -37,9 +37,6 @@ Author: neo <cossu@post.kek.jp>
 | 
			
		||||
  SFB/TRR55
 | 
			
		||||
 | 
			
		||||
*/
 | 
			
		||||
//----------------------------------------------------------------------
 | 
			
		||||
//#ifndef ARM_NEON
 | 
			
		||||
//#define ARM_NEON
 | 
			
		||||
 | 
			
		||||
#ifndef GEN_SIMD_WIDTH
 | 
			
		||||
#define GEN_SIMD_WIDTH 16u
 | 
			
		||||
@@ -606,6 +603,4 @@ namespace Optimization {
 | 
			
		||||
  typedef Optimization::TimesMinusI TimesMinusISIMD;
 | 
			
		||||
  typedef Optimization::TimesI      TimesISIMD;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//#endif // ARM_NEON
 | 
			
		||||
}
 | 
			
		||||
@@ -53,7 +53,7 @@ directory
 | 
			
		||||
#if defined IMCI
 | 
			
		||||
#include "Grid_imci.h"
 | 
			
		||||
#endif
 | 
			
		||||
#ifdef NEONv8
 | 
			
		||||
#ifdef NEONV8
 | 
			
		||||
#include "Grid_neon.h"
 | 
			
		||||
#endif
 | 
			
		||||
#if defined QPX
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user