Chapter M19
LoopControl

Author(s): Erik Schnetter <schnetter@cct.lsu.edu>

Date: August 20 2007



M19.1 Abstract

M19.2 Introduction

M19.3 Physical System

M19.4 Numerical Implementation

M19.5 Using This Thorn

M19.5.1 Obtaining This Thorn

M19.5.2 Basic Usage

M19.5.3 Special Behaviour

M19.5.4 Interaction With Other Thorns

M19.5.5 Examples

M19.5.6 Support and Feedback

M19.6 History

M19.6.1 Thorn Source Code

M19.6.2 Thorn Documentation

M19.6.3 Acknowledgements

M19.7 Parameters




check_type_sizes
Scope: private   BOOLEAN



Description: Check that Fortran and C types match



   Default: yes






cycle_j_tilings
Scope: private   BOOLEAN



Description: Cycle through all available tilings in the j-direction



   Default: no






debug
Scope: private   BOOLEAN



Description: Output debug information



   Default: no






delayed_overhead_threshold
Scope: private   REAL



Description: The maximum overhead (ratio of current to best known time) allowed during an excursion



Range    Default: 0.1
0.0:*






do_selftest
Scope: private   BOOLEAN



Description: Perform (expensive) self-tests in every loop



   Default: no






ignore_initial_overhead
Scope: private   BOOLEAN



Description: Ignore the overhead from the initial setup



   Default: yes






immediate_overhead_threshold
Scope: private   REAL



Description: The maximum overhead (ratio of current to best known time) allowed during an excursion



Range    Default: 1.0
0.0:*






lc_inpoints
Scope: private   INT



Description: Number of grid points in the i-direction



Range    Default: -1
-1
choose automatically
1:*
user-specified value






lc_inthreads
Scope: private   INT



Description: Number of threads in the i-direction



Range    Default: -1
-1
choose automatically
1:*
user-specified value






lc_jnpoints
Scope: private   INT



Description: Number of grid points in the j-direction



Range    Default: -1
-1
choose automatically
1:*
user-specified value






lc_jnthreads
Scope: private   INT



Description: Number of threads in the j-direction



Range    Default: -1
-1
choose automatically
1:*
user-specified value






lc_knpoints
Scope: private   INT



Description: Number of grid points in the k-direction



Range    Default: -1
-1
choose automatically
1:*
user-specified value






lc_knthreads
Scope: private   INT



Description: Number of threads in the k-direction



Range    Default: -1
-1
choose automatically
1:*
user-specified value






legacy_init
Scope: private   BOOLEAN



Description: Initialise with legacy configuration (usually slower)



   Default: yes






max_jump_attempts
Scope: private   INT



Description: Maximum number of attempts to find a random unknown location



Range    Default: 10
0:*






maximum_setup_overhead
Scope: private   REAL



Description: Maximum allowable administrative overhead



Range    Default: 0.01
0.0:*






overhead_threshold_delay
Scope: private   INT



Description: Number of steps in an excursion before the delayed overhead criterion is applied



Range    Default: 20
0:*






printstats
Scope: private   BOOLEAN



Description: Output timing statistics



   Default: yes






printstats_every_minutes
Scope: private   REAL



Description: Output timing statistics every so many minutes



Range    Default: 60.0
0.0:*






printstats_threshold
Scope: private   REAL



Description: Output timing statistics for loops costing at least this many percent



Range    Default: 2.0
0.0:100.0






printstats_verbosity
Scope: private   INT



Description: Level of detail for statistics



Range    Default: 1
Output only a global summary
1
Output summary for every loop
2
Output summary for every loop parameter set
3
Output everything






probability_random_jump
Scope: private   REAL



Description: Probability for a random jump once a local minimum has been reached



Range    Default: 0.01
0.0:1.0






probability_small_jump
Scope: private   REAL



Description: Probability for a small jump once a local minimum has been reached



Range    Default: 0.1
0.0:1.0






siman_iters_fixed_t
Scope: private   INT



Description:



Range    Default: 1
1:*






siman_k
Scope: private   REAL



Description: energy scale



Range    Default: 1.0e-9
(0:*






siman_mu_t
Scope: private   REAL



Description: speed



Range    Default: 1.005
(0:*






siman_probability_change_topology
Scope: private   REAL



Description:



Range    Default: 0.1
0:1






siman_step_size
Scope: private   REAL



Description:



Range    Default: 3.0
(1.0:*






siman_t_initial
Scope: private   REAL



Description: initial variability



Range    Default: 1.0
(0:*






siman_t_min
Scope: private   REAL



Description: stopping criterion



Range    Default: 0.01
(0:*






small_jump_distance
Scope: private   INT



Description: Maximum distance for a small jump



Range    Default: 3
0:*






use_random_restart_hill_climbing
Scope: private   BOOLEAN



Description: http://en.wikipedia.org/wiki/Hill_climbing http://en.wikipedia.org/wiki/Tabu_search



   Default: no






use_simulated_annealing
Scope: private   BOOLEAN



Description: Find a good loop configuration through simulated annealing



   Default: no






verbose
Scope: private   BOOLEAN



Description: Verbosity



   Default: no



M19.8 Interfaces

General

Implements:

loopcontrol

Adds header:

loopcontrol.h

Uses header:

vectors.h

M19.9 Schedule

This section lists all the variables which are assigned storage by thorn Carpet/LoopControl. Storage can either last for the duration of the run (Always means that if this thorn is activated storage will be assigned, Conditional means that if this thorn is activated storage will be assigned for the duration of the run if some condition is met), or can be turned on for the duration of a schedule function.

Storage

NONE

Scheduled Functions

CCTK_STARTUP (conditional)

  lc_check_type_sizes

  check that sizes of control structures are identical in c and fortran

 

 Language:c
 Options: meta
 Type: function

CCTK_ANALYSIS (conditional)

  lc_printstats_analysis

  output loop control statistics

 

 Language:c
 Options: meta
 Type: function

CCTK_TERMINATE (conditional)

  lc_printstats_terminate

  output loop control statistics

 

 Language:c
 Options: meta
 Type: function