Pool

class Pool

Define a pool of threads, each with their own MonteCarlo object and relevant quantities for reversion.

class Prefetch : public feasst::MonteCarlo

Farm a trial to each processor, then reconstruct the serial Markov chain.

Public Functions

Prefetch(const argtype &args = argtype())

args:

  • steps_per_check: number of steps between check (default: 1e5)

  • load_balance: batches contain all of the same trial type (default: true). This violates detailed balance, but “local detailed balance” is still satisfied. https://doi.org/10.1063/1.477973

  • synchronize: synchronize data with accepted thread (default: false).

int steps_per_check() const

Return the number of steps between checking equality of threads.

void activate_prefetch(const bool active = true)

Activate prefetch.

void reset_trial_stats()

Reset stats of trials of all threads.