Skip to content

Commit bc0ff96

Browse files
authored
Merge branch 'development' into remove_old_fortran_make
2 parents a7e65c4 + b1a5bf7 commit bc0ff96

File tree

3 files changed

+35
-8
lines changed

3 files changed

+35
-8
lines changed

Docs/source/design.rst

+33-4
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,13 @@ and the generic solvers:
4141

4242
* ``util/``: linear algebra solvers and other routines.
4343

44-
Design Philosophy
44+
45+
.. note::
46+
47+
All quantities are assumed to be in CGS units, unless otherwise
48+
specified.
49+
50+
Design philosophy
4551
=================
4652

4753
Any application that uses Microphysics will at minimum need to
@@ -67,7 +73,30 @@ solvers (ODE integration for the network and Newton-Raphson root
6773
finding for the EOS) are separated from the specific implementations of
6874
the microphysics.
6975

70-
.. note::
7176

72-
All quantities are assumed to be in CGS units, unless otherwise
73-
specified.
77+
78+
GPU considerations
79+
==================
80+
81+
.. index:: GPUs
82+
83+
All of the Microphysics routines are written to run on GPUs. This is
84+
enabled in application codes by using the AMReX lambda-capturing
85+
mechanism (see the [AMReX GPU
86+
documentation](https://amrex-codes.github.io/amrex/docs_html/GPU.html)
87+
for more information).
88+
89+
This means leveraging the AMReX data-structures, macros, and
90+
functions. The unit tests (see :ref:`sec:unit_tests`) provide a good
91+
reference for how to interface the Microphysics solvers and physics
92+
terms with an AMReX-based code.
93+
94+
There are a few places where Microphysics behaves slightly differently
95+
when running on a CPU vs. a GPU:
96+
97+
* In the VODE integrator, we disable Jacobian-caching to save memory.
98+
See :ref:`ch:networks:integrators`.
99+
100+
* In general we disable printing from GPU kernels, due to register
101+
pressure. Some output can be enabled by compiling with
102+
``USE_GPU_PRINTF=TRUE``.

Docs/source/unit_tests.rst

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
.. _sec:unit_tests:
2+
13
**********************
24
Overview of Unit Tests
35
**********************

Make.Microphysics

-4
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,6 @@ build_status:
5151
--git_names "Microphysics AMReX" \
5252
--git_dirs "$(TOP) $(AMREX_HOME)"
5353

54-
# Use a coarse grained OMP approach
55-
DEFINES += -DCRSEGRNDOMP
56-
57-
5854
# OpenACC support
5955
ifeq ($(USE_ACC), TRUE)
6056
DEFINES += -DACC

0 commit comments

Comments
 (0)