diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2012-02-02 13:36:18 -0600 |
---|---|---|
committer | Barry Wardell <barry.wardell@gmail.com> | 2012-09-11 18:17:58 +0100 |
commit | 4e3b65463a16a0fc66724ab72c4dec9b3f31dbd4 (patch) | |
tree | e96dee0cd32584cff8beb01ced0ee9bee15f0781 /Carpet/Carpet/src/Cycle.cc | |
parent | ead4d3203389858d2982ceaba4f235a7b51c7e30 (diff) |
Support accelerator data transfer
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(-)
Diffstat (limited to 'Carpet/Carpet/src/Cycle.cc')
-rw-r--r-- | Carpet/Carpet/src/Cycle.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Carpet/Carpet/src/Cycle.cc b/Carpet/Carpet/src/Cycle.cc index 89be14882..bd0acac0a 100644 --- a/Carpet/Carpet/src/Cycle.cc +++ b/Carpet/Carpet/src/Cycle.cc @@ -99,6 +99,10 @@ namespace Carpet { } // if storage } // for group + if (CCTK_IsFunctionAliased("Accelerator_Cycle")) { + Accelerator_Cycle(cctkGH); + } + if (errors > 0) { CCTK_VWarn (CCTK_WARN_ABORT, __LINE__, __FILE__, CCTK_THORNSTRING, "Errors in %d groups detected; aborting", errors); |