aboutsummaryrefslogtreecommitdiff
path: root/Carpet/CarpetLib/param.ccl
blob: b278f1dbd6b9e3e6c47a20cd72dbcca5f21c1f6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# Parameter definitions for thorn CarpetLib

private:

BOOLEAN verbose "Print info to the screen" STEERABLE=always
{
} "no"

BOOLEAN barriers "Insert barriers at strategic places for debugging purposes (slows down execution)" STEERABLE=always
{
} "no"



#BOOLEAN omit_prolongation_points_when_restricting "Do not restrict to points which are used to prolongate the boundary" STEERABLE=always
#{
#} "no"

#INT proper_nesting_distance "Minimum distance (in grid points) between two level interfaces" STEERABLE=always
#{
#  0:* :: "any non-negative value is fine; the default value is just a guess"
#} 4



BOOLEAN output_bboxes "Output bounding box information to the screen" STEERABLE=always
{
} "no"

BOOLEAN check_bboxes "Check bounding box information for self-consistency" STEERABLE=always
{
} "yes"



BOOLEAN poison_new_memory "Try to catch uninitialised data by setting newly allocated memory to values that will catch your attention" STEERABLE=always
{
} "no"

CCTK_INT poison_value "Integer value (0..255) used to poison new timelevels (with memset)" STEERABLE=always
{
  0:255 :: "Must fit into a byte.  Use 0 for zero, 255 for nan, and e.g. 113 for a large value."
} 255



INT print_timestats_every "Print timing statistics periodically" STEERABLE=always
{
  -1  :: "don't report"
  0   :: "don't report"
  1:* :: "report every so many iterations"
} 0

STRING timestat_file "File name in which timestat output is collected (because stdout from the root node may not be enough)" STEERABLE=always
{
  "^$"   :: "empty filename: no file output"
  "^.+$" :: "file name"
} "carpetlib-timing-statistics"



INT print_memstats_every "Report periodically how much memory is used per process" STEERABLE=always
{
  -1  :: "don't report"
  0   :: "don't report"
  1:* :: "report every so many iterations"
} 0

INT max_allowed_memory_MB "Maximum allowed amount of memory per process (in Megabytes)" STEERABLE=always
{
  -1  :: "no maximum"
  0   :: "no maximum"
  1:* :: "abort if more memory is used"
} 0

STRING memstat_file "File name in which memstat output is collected (because stdout from the root node may not be enough)" STEERABLE=always
{
  "^$"   :: "empty filename: no file output"
  "^.+$" :: "file name"
} "carpetlib-memory-statistics"



# Experimental communication parameters

BOOLEAN interleave_communications "Try to interleave communications with each other; each processor begins to communicate with its 'right neighbour' in rank, instead of with the root processor" STEERABLE=always
{
} "no"

BOOLEAN vary_tags "Use different tags for each communication" STEERABLE=always
{
} "no"

BOOLEAN barrier_between_stages "Add a barrier between the communication stages (slows down, but may make timing numbers easier to interpret)" STEERABLE=always
{
} "no"

BOOLEAN combine_sends "Send data together and in order of processor ranks" STEERABLE=always
{
} "no"

BOOLEAN reduce_mpi_waitall "Call MPI_Waitall only for requests that are not null" STEERABLE=always
{
} "no"

BOOLEAN use_mpi_send "Use MPI_Send instead of MPI_Isend" STEERABLE=always
{
} "no"

BOOLEAN use_mpi_ssend "Use MPI_Ssend instead of MPI_Isend" STEERABLE=always
{
} "no"



SHARES: IO

USES STRING out_dir