Changes between Version 8 and Version 9 of Tutorials/JobSizes


Ignore:
Timestamp:
12/16/13 11:44:37 (11 years ago)
Author:
Erica Kaminski
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Tutorials/JobSizes

    v8 v9  
    1313$M_{tot}=8\cdot(mx\cdot my\cdot mz)\cdot (N_{qvars}+N_{auxvars})\quad [\text{bytes}]$
    1414}}}
    15 where ''N,,auxvars,,'' is nonzero only with MHD, in 2D (5 extra variables) or 3D (12 extra). ''N,,qvars,,'' represents the state variables--in hydro there are 4 in 2D & 2.5D and 5 in both 2.5D+angular momentum and 3D; in MHD there are always 8 plus 5 or 12 aux fields in 2D & 3D, respectively--as well as any tracer variables.
     15where ''mx,my,mz'' are the number of zones in each direction, ''N,,qvars,,'' is the number of variables in the q-array (that is, the state variables of the fluid), and ''N,,auxvars,,'' is the number of "auxillary" variables, that is variables initialized for MHD simulations. The q-array contains the  cell-centered quantities, and the aux-array contains face and edge centered quantities. Each cell contains a q-array and an aux-array, therefore the total number of cells x the total variables x 8 bytes gives you the total memory you are expected to allocate for the physical domain (not including the ghost cells or any other redundant calculations). We find that the total memory calculated this way is usually off by a factor of 10 from what astrobear actually uses (as given in the standard out, on the global info allocations line). This is likely due to ghost cell calculations. '''Therefore for all memory estimates, you should multiply your number by 10 to get a truer estimate.'''
     16
     17For hydro simulations, ''N,,auxvars,, = 0'', so only need to count up the total ''N,,qvars,,''. In 2D there are 4 hydro q variables: density, x-momentum, y-momentum, energy. There are also 4 in 2.5D. In 3D, there are 5: density, x-momentum, y-momentum, z-momentum, and energy. There are also 5 in 2.5D with angular momentum.
     18
     19The situation is a little different for MHD simulations, where now each component of the momenta is coupled to the equations. Therefore, ''N,,qvars,,'' now contains all 8 state variables regardless of the dimension of the simulation: density, 3-momenta, E, Bx, By, Bz. In addition to these 8 q-variables, there are additional variables initialized in MHD, these are called the auxiliary variables. These include the B-fields on the faces of the cells as well as the EMFs from the edges of the cells. We also store parent-child EMFs. Therefore in 2D, ''N,,auxvars,, = 5'', which are: Bx, By, Ez, Ez_child, and Ez_parent. In 3D, ''N,,auxvars,, = 12 '', which are: Bx, By, Bz, Ex, Ey, Ez, Ex_child, Ey_child, Ez_child, and Ex_parent, Ey_parent, and Ez_parent.
     20
     21For both hydro and MHD simulations, you must also add to the total number of variables, the total number of tracers you are using, as this will be initialized in the q-array.
    1622
    1723Luckily, AstroBEAR takes advantage of ''distributed memory,'' meaning that the more compute nodes which are allocated, the more memory it can access. In practice, this is the default thing to do if a simulation is very large.
     
    125131
    126132Ideally, the user would set up data frames so that the last ones are created only shortly before the job is killed (so as to not waste computation time).
    127