| Commit message (Collapse) | Author | Age |
|
|
|
| |
Add new load balancing mechanism "balanced".
|
|
|
|
| |
Correct types of Carpet_Requirements_CheckReads and Carpet_Requirements_NotifyWrites
|
|
|
|
| |
reads and writes
|
|
|
|
|
|
| |
THe external interface seems ok, but the internals will be rewritten to
avoid repeated string parsing, memory allocation and internal std::map
manipulations.
|
| |
|
|
|
|
| |
When calculating the speed of a simulation, ignore ghost zones. Use two counters, one including the outer boundaries, the other excluding it.
|
| |
|
|
|
|
|
|
|
| |
Determine and store host/process association.
Provide aliased function API to query this.
Improve performance of multi-model API.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch provides a function interface for accelerator (GPU) devices
to be called at certain points when Carpet traverses the schedule
tree. This can be used to copy data between the host (CPU) and the
device (GPU) as it is needed.
---
Carpet/Carpet/interface.ccl | 28 ++++++++++++++++++++++++++++
Carpet/Carpet/param.ccl | 6 ++++++
Carpet/Carpet/src/CallFunction.cc | 12 ++++++++++++
Carpet/Carpet/src/Comm.cc | 8 ++++++++
Carpet/Carpet/src/Cycle.cc | 4 ++++
Carpet/Carpet/src/Evolve.cc | 2 ++
Carpet/Carpet/src/Initialise.cc | 2 ++
Carpet/Carpet/src/Requirements.cc | 34 ++++++++++++++++++++++------------
Carpet/Carpet/src/variables.cc | 3 +++
Carpet/Carpet/src/variables.hh | 3 +++
10 files changed, 90 insertions(+), 12 deletions(-)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
single mechanism provided by CarpetLib.
Use this mechanism everywhere.
|
|
|
|
|
|
|
| |
Add a new aliased function GetLocalComponents which returns the number
of process-local components. Some code can handle only one component
per MPI process, and GetLocalComponents can be used to test this at
run time.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ignore-this: ac4962293cd7c0313a0f17f3ccd59e96
Set the cGH and cGroupDynamicData entries correctly if padding is
used.
cctk_lsh then contains the number of grid points that have been
allocated, cctk_lssh contains the number of grid points that should be
used. cctk_lssh is also used for staggered grid functions, although
this kind of staggering is not supported by Carpet.
|
|
|
|
| |
Ignore-this: 309b4dd613f4af2b84aa5d6743fdb6b3
|
| |
|
|
|
|
|
|
|
|
|
| |
Introduce a tree data structure "fulltree", which decomposes a single,
rectangular region into a tree of non-overlapping, rectangular sub-regions.
Move the processor decomposition from the regridding thorns into Carpet.
Create such trees during processor decomposition.
Store these trees with the grid hierarchy.
|
|
|
|
|
|
|
| |
Schedule wrappers are routines that can be registered with Carpet. They
will be called before and after any scheduled routine is called. This
allows custom debugging and profiling routines, such as e.g. single-stepping
through the schedule.
|
|
|
|
|
|
|
| |
Use MultiPatch_ConvertFromPhysicalBoundary instead of CoordBase's
ConvertFromPhysicalBoundary, if it is available.
darcs-hash:20080219172824-dae7b-a63ad0a3897917f703c5c65a0a05beb4bf690b24.gz
|
|
|
|
|
|
| |
Provide aliased functions GetRefinementLevel and GetRefinementLevels.
darcs-hash:20071103170601-dae7b-41512ac0bd0c0e0af644de7c046b9ef70a1b28c3.gz
|
|
|
|
|
|
|
|
| |
Improve Carpet's timing mechanism to record also the time spent in I/O
and in communication. Also count the number of files written,
messages sent, and bytes transferred.
darcs-hash:20071003194325-dae7b-b7a908e8c49aa674de44d67c4a4c81844ca123ca.gz
|
|
|
|
| |
darcs-hash:20070825060648-dae7b-f20ba780d7215cb1f3375a33ab20d972bb37eb59.gz
|
|
|
|
|
|
|
|
| |
GetCoordRange returns the lower and upper coordinates, the grid
spacing, and the number of grid points for a given refinement level on
a given patch.
darcs-hash:20070614004919-dae7b-29bbe29bfb33715fefe7ac192f0d920de8159b49.gz
|
|
|
|
|
|
|
|
| |
By default, call MoLNumIntegratorSubsteps to find out how many time
integrator substeps there are. Can be overridden by setting
Carpet::num_integrator_substeps.
darcs-hash:20070524214138-dae7b-4b8eb8aca92f62461460f937bbb3feb54b06f455.gz
|
|
|
|
|
|
|
|
|
|
| |
Make buffer zones always inner buffer zones (but update CarpetRegrid2
to increase the domain automatically).
Calculate the base grids before creating the gh. Use information
about the outer boundaries for this.
darcs-hash:20070419015830-dae7b-da010f022aa948a955b818256a0c0c4e68ba42ce.gz
|
|
|
|
|
|
| |
Store also the total number of grid point updates.
darcs-hash:20070228022945-dae7b-67d68f41e0ef70fdaf2e411865bb58d3405a9279.gz
|
|
|
|
|
|
|
|
| |
Calculate both processor-local and total number of grid points
updates. Store grid point updates in a 1d grid array, so that
statistics (sum, average) can be easily output.
darcs-hash:20070227202839-dae7b-74b51ea240995de247a6eed5d973b0a4f3d84b13.gz
|
|
|
|
|
|
|
|
|
|
| |
Change the regridding API to use region_t. This is a major API
change.
Use the information in region_t to correct the load balancing when
outer buffer zones are used.
darcs-hash:20070113014409-dae7b-33f78948a7b826ea7806513d7864730fe64c14a9.gz
|
|
|
|
| |
darcs-hash:20060509130637-dae7b-5c371443457f8b17bad6cb0bed7bf0607d8b9cca.gz
|
|
|
|
|
|
|
| |
Calculate processor distribution for all maps at once instead of for
each map separately. This leads to more efficient distributions.
darcs-hash:20060804133816-dae7b-b16a915db7764714debb4523b1f70b586b5d8719.gz
|
|
|
|
|
|
|
|
|
|
|
|
| |
Store physical timing information in grid scalars for easier output.
Introduce a parameter "Carpet::silent" to switch off periodic output
of the physical timing information.
Add detailed timers for Carpet's main evolution loop, using Cactus
timers. Their output would usually be written to files.
darcs-hash:20060727165144-dae7b-aac1f402b3d23351153dfa8b48ee52a29d05e94e.gz
|
|
|
|
|
|
|
|
|
| |
Pass MPI communicators as pointers instead of ints because they may
not be implemented as ints.
Use MPI_COMM_NULL instead of -1 as illegal communicator.
darcs-hash:20050826144511-891bb-324a5d22efcbbd53cac35899e30559b06cfdfdb6.gz
|
|
|
|
|
|
|
|
|
|
| |
Split MPI_COMM_WORLD according to a new parameter Carpet::model into
different sets, and evolve these sets independently.
Add aliased functions to query the MPI communicators for this
simulation and for all models.
darcs-hash:20050825084739-891bb-7f102b46ec495f884be5197eaf077eef93f89dac.gz
|
|
|
|
|
|
|
|
|
| |
Introduce aliased functions MultiPatch_GetBoundarySpecification and
Multipatch_GetDomainSpecification which can be provided by a
multipatch thorn. This will make it possible to have different grid
setups on different patches.
darcs-hash:20050705103636-891bb-4f03733ed93abf1d70efa1c64e13dc4066a91cf1.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change the way in which the grid hierarchy is stored. The new hierarchy is
map
mglevel
reflevel
component
timelevel
i.e., mglevel moved from the bottom to almost the top. This is
because mglevel used to be a true multigrid level, but is now meant to
be a convergence level.
Do not allocate all storage all the time. Allow storage to be
switched on an off per refinement level (and for a single mglevel,
which prompted the change above). Handle storage management with
CCTK_{In,De}creaseGroupStorage instead of
CCTK_{En,Dis}ableGroupStorage.
darcs-hash:20050201225827-891bb-eae3b6bd092ae8d6b5e49be84c6f09f0e882933e.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Turn most of the templates in CarpetLib, which used to have the form
template<int D> class XXX
into classes, i.e., into something like
class XXX
by setting D to the new global integer constant dim, which in turn is set to 3.
The templates gf and data, which used to be of the form
template<typename T, int D> class XXX
are now of the form
template<typename T> class XXX
The templates vect, bbox, and bboxset remain templates.
This change simplifies the code somewhat.
darcs-hash:20050101182234-891bb-c3063528841f0d078b12cc506309ea27d8ce730d.gz
|
|
|
|
| |
darcs-hash:20050101162121-891bb-ac9d070faecc19f91b4b57389d3507bfc6c6e5ee.gz
|
|
|
|
|
|
|
|
| |
Made all Carpet thorns to include the "typecase" file from the Carpet
thorn using the "include header: .. in .." mechanism, getting rid of
explicit file paths.
darcs-hash:20041201161810-32473-75f4594a4d9c19a11dbe9d07741678a84bd6f694.gz
|
|
|
|
|
|
| |
truncate existing output files
darcs-hash:20041117183557-3fd61-35b878baefc7f13303163f54eb4489cbfc9f8690.gz
|
|
|
|
|
|
| |
Replace all CVS header tags with the standard "$Header:$".
darcs-hash:20040918132147-891bb-dea889bdd94a479ec412d14d08e9efca63e5c24d.gz
|
|
|
|
|
|
|
| |
Use "requires thorns" to ensure that the thorns are activated in the
correct order.
darcs-hash:20040608190925-07bb3-70b0ac8ee8e570c0b7fff50b02395a288482257d.gz
|
|
|
|
| |
darcs-hash:20040602050932-5b8bb-86a304db4f18e864ab93e244d6d96e8b6f82f6cc.gz
|
|
|
|
| |
darcs-hash:20040527102744-07bb3-15c69883d02f9194d48e1ea129063d4f31779986.gz
|
|
|
|
| |
darcs-hash:20040521160917-07bb3-ba8f658aa8ca6ee067c3a47119a912be0cce4d2f.gz
|
|
|
|
| |
darcs-hash:20040510115624-58737-87e5be19cc09dcd80dee90260028780c3ca30dcd.gz
|
|
|
|
|
|
|
|
| |
Undo interface/capability update, because now Carpet conflicts with
PUGH. Need to sort things out, maybe switch temporarily back to the
"requires thorns" mechanism.
darcs-hash:20040504205239-07bb3-771c6ec96a2b454d63c87a6dc7a1f44f62cd8fd7.gz
|
|
|
|
| |
darcs-hash:20040504200954-07bb3-cd9f17c981ce37247fa2122858b10b46425f678a.gz
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove the parameters Carpet::prolongate_initial_data; this is now
always done.
Remove arguments initialise_from and do_prolongate from Regrid().
Regridding is now done in level mode instead of meta mode.
Furthermore, CarpetRegrid is called in singlemape mode.
darcs-hash:20040418112943-07bb3-2e392df1737ab75f3f0d553bb53bde2ed41f8773.gz
|