28 verbose(
"Global clock synchronized (offset = %ld ns); took %ld ns", offset_, t1 - t0);
46 for (
int j = 0; j < n_sync_round_trips_; j++) {
53 if (t2 - t0 < min_gap) {
55 offsets[i] = t1 -
static_cast<int64_t
>((t0 + t2) / 2);
63 offsets[i] += begin_time;
66 for (
int j = 0; j < n_sync_round_trips_; j++) {
82 int n_sync_round_trips_;
static auto & get()
Definition: util.hpp:180
Definition: wallclock.hpp:15
void sync()
Definition: wallclock.hpp:22
global_clock()
Definition: wallclock.hpp:17
wallclock_t gettime_ns() const
Definition: wallclock.hpp:31
rank_t inter_my_rank()
Definition: topology.hpp:215
MPI_Comm mpicomm()
Definition: topology.hpp:206
rank_t inter_n_ranks()
Definition: topology.hpp:216
rank_t intra_my_rank()
Definition: topology.hpp:211
MPI_Comm inter_mpicomm()
Definition: topology.hpp:214
MPI_Comm intra_mpicomm()
Definition: topology.hpp:210
Definition: wallclock.hpp:11
uint64_t wallclock_t
Definition: wallclock.hpp:13
wallclock_t gettime_ns()
Definition: wallclock.hpp:88
T mpi_bcast_value(const T &value, int root_rank, MPI_Comm comm)
Definition: mpi_util.hpp:145
T mpi_scatter_value(const T *sendbuf, int root_rank, MPI_Comm comm)
Definition: mpi_util.hpp:242
uint64_t clock_gettime_ns()
Definition: util.hpp:65
void mpi_barrier(MPI_Comm comm)
Definition: mpi_util.hpp:42
void mpi_send_value(const T &value, int target_rank, int tag, MPI_Comm comm)
Definition: mpi_util.hpp:84
void verbose(const char *fmt,...)
Definition: logger.hpp:11
monoid< T, max_functor<>, lowest< T > > max
Definition: reducer.hpp:104
Definition: options.hpp:123