Chapter M10
CarpetLib

Could not find latex documentation for Carpet/CarpetLib (documentation.tex)

M10.1 Parameters




avoid_arraysize_bytes
Scope: private   INT



Description: Avoid array sizes that are multiples of this



Range    Default: (none)
don’t avoid anything
2:*






barrier_between_stages
Scope: private   BOOLEAN



Description: Add a barrier between the communication stages (slows down, but may make timing numbers easier to interpret)



   Default: no






barriers
Scope: private   BOOLEAN



Description: Insert barriers at strategic places for debugging purposes (slows down execution)



   Default: no






check_bboxes
Scope: private   BOOLEAN



Description: Check bounding box information for self-consistency



   Default: yes






check_communication_schedule
Scope: private   BOOLEAN



Description: Check the communication schedule at run time (expensive)



   Default: no






combine_recompose
Scope: private   BOOLEAN



Description: Recompose all grid functions of one refinement levels at once



   Default: yes






combine_sends
Scope: private   BOOLEAN



Description: Send data together and in order of processor ranks



   Default: no






commstate_verbose
Scope: private   BOOLEAN



Description: Print debug info from the commstate class



   Default: no






interleave_communications
Scope: private   BOOLEAN



Description: Try to interleave communications with each other; each processor begins to communicate with its ’right neighbour’ in rank, instead of with the root processor



   Default: no






max_allowed_memory_mb
Scope: private   INT



Description: Maximum allowed amount of memory per process that can be allocated for grid variables (in Megabytes)



Range    Default: (none)
-1
no maximum
no maximum
1:*
abort if more memory is used






max_core_size_mb
Scope: private   INT



Description: Maximum size of a core file, set via setrlimit



Range    Default: -2
-2
unchanged
-1
unlimited
0:*
limited






max_memory_size_mb
Scope: private   INT



Description: Maximum amount of memory per MPI process, set via setrlimit



Range    Default: -2
-2
unchanged
-1
unlimited
0:*
limited






memstat_file
Scope: private   STRING



Description: File name in which memstat output is collected (because stdout from the root node may not be enough)



Range    Default: carpetlib-memory-statistics
ˆ$
empty filename: no file output
.
ˆ  +$
file name






message_count_multiplier
Scope: private   INT



Description: Transmit messages this many times



Range    Default: 1
1:*






message_size_multiplier
Scope: private   INT



Description: Enlarge size of transmitted messages by this factor



Range    Default: 1
1:*






output_bboxes
Scope: private   BOOLEAN



Description: Output bounding box information to the screen



   Default: no






poison_new_memory
Scope: private   BOOLEAN



Description: Try to catch uninitialised data by setting newly allocated memory to values that will catch your attention



   Default: no






print_memstats_every
Scope: private   INT



Description: Report periodically how much memory is used per process



Range    Default: -1
-1
don’t report
report after setting up initial data
1:*
report every so many iterations






print_timestats_every
Scope: private   INT



Description: Print timing statistics periodically



Range    Default: -1
-1
don’t report
report after initialisation
1:*
report every so many iterations






timestat_file
Scope: private   STRING



Description: File name in which timestat output is collected (because stdout from the root node may not be enough)



Range    Default: carpetlib-timing-statistics
ˆ$
empty filename: no file output
.
ˆ  +$
file name






use_ipm_timing_regions
Scope: private   BOOLEAN



Description: Call IPM (via MPI_Pcontrol) to define regions



   Default: no






use_mpi_send
Scope: private   BOOLEAN



Description: Use MPI_Send instead of MPI_Isend



   Default: no






use_mpi_ssend
Scope: private   BOOLEAN



Description: Use MPI_Ssend instead of MPI_Isend



   Default: no






verbose
Scope: private   BOOLEAN



Description: Print info to the screen



   Default: no






deadbeef
Scope: restricted   INT



Description: A strange integer value that indicates that something has gone wrong; the integer equivalent of a nan



Range    Default: 666
*:*
should be large and positive






poison_value
Scope: restricted   INT



Description: Integer value (0..255) used to poison new timelevels (with memset)



Range    Default: 255
0:255
Must fit into a byte. Use 0 for zero, 255 for nan, and e.g. 113 for a large value.






out_dir
Scope: shared from IO  STRING



M10.2 Interfaces

General

Implements:

carpetlib

Adds header:

mpi_string.hh

defs.hh

dist.hh

typecase.hh

typeprops.hh

bbox.hh

bboxset.hh

fulltree.hh

region.hh

vect.hh

commstate.hh

mem.hh

timestat.hh

operator_prototypes_3d.hh

data.hh

gdata.hh

dh.hh

gf.hh

ggf.hh

gh.hh

th.hh

operators.hh

Uses header:

nompi.h

CarpetTimers.hh

loopcontrol.h

vectors.h

M10.3 Schedule

This section lists all the variables which are assigned storage by thorn Carpet/CarpetLib. 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

  carpetlib_registercycleclock

  register cycle based timer

 

 Before: driver_startup
 Language:c
 Options: global
 Type: function

CCTK_PARAMCHECK

  carpetlib_test_prolongate_3d_rf2

  test prolongation operators

 

 Language:c
 Options: global
 Type: function

CCTK_ANALYSIS

  carpetlib_printtimestats

  print timing statistics if desired

 

 Language:c
 Options: global
 Type: function

CCTK_ANALYSIS

  carpetlib_printmemstats

  print memory statistics if desired

 

 Language:c
 Options: global
 Type: function