1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-06-14 22:07:05 +01:00

Adding a better controlled threading class, preparing to

force in deterministic reduction.
This commit is contained in:
Peter Boyle
2015-05-11 18:59:03 +01:00
parent f5dcca7b1b
commit 22d384b07d
14 changed files with 199 additions and 97 deletions

View File

@ -45,8 +45,11 @@
#include <Grid_aligned_allocator.h>
#include <Grid_simd.h>
#include <Grid_math.h>
#include <Grid_threads.h>
#include <Grid_cartesian.h>
#include <Grid_math.h>
#include <Grid_lattice.h>
#include <Grid_comparison.h>
#include <Grid_cshift.h>
@ -60,6 +63,7 @@ namespace Grid {
void Grid_init(int *argc,char ***argv);
void Grid_finalize(void);
// internal, controled with --handle
void Grid_sa_signal_handler(int sig,siginfo_t *si,void * ptr);
void Grid_debug_handler_init(void);
void Grid_quiesce_nodes(void);
@ -68,6 +72,11 @@ namespace Grid {
// C++11 time facilities better?
double usecond(void);
const std::vector<int> &GridDefaultSimd(void);
const std::vector<int> &GridDefaultLatt(void);
const std::vector<int> &GridDefaultMpi(void);
const int &GridThreads(void) ;
void GridSetThreads(int t) ;
// Common parsing chores
std::string GridCmdOptionPayload(char ** begin, char ** end, const std::string & option);
@ -75,8 +84,8 @@ namespace Grid {
void GridParseIntVector(std::string &str,std::vector<int> & vec);
void GridParseLayout(char **argv,int argc,
std::vector<int> &simd,
std::vector<int> &latt,
std::vector<int> &simd,
std::vector<int> &mpi);