Memory

memory.param

namespace picongpu

Typedefs

typedef mCT::shrinkTo<mCT::Int<8, 8, 4>, simDim>::type picongpuSuperCellSize

size of a superCell

volume of a superCell must be <= 1024

typedef MappingDescription<simDim, SuperCellSize> picongpuMappingDesc

define mapper which is used for kernel call mappings

Variables

constexpr size_t picongpureservedGpuMemorySize = 350 *1024*1024
constexpr uint32_t picongpuGUARD_SIZE = 1
constexpr uint32_t picongpuBYTES_EXCHANGE_X = 4 * 256 * 1024

how many bytes for buffer is reserved to communication in one direction

constexpr uint32_t picongpuBYTES_EXCHANGE_Y = 6 * 512 * 1024
constexpr uint32_t picongpuBYTES_EXCHANGE_Z = 4 * 256 * 1024
constexpr uint32_t picongpuBYTES_CORNER = 8 * 1024
constexpr uint32_t picongpuBYTES_EDGES = 32 * 1024
constexpr uint32_t picongpufieldTmpNumSlots = 1

number of scalar fields that are reserved as temporary fields

constexpr bool picongpufieldTmpSupportGatherCommunication = true

can FieldTmp gather neighbor information

If true it is possible to call the method asyncCommunicationGather() to copy data from the border of neighboring GPU into the local guard. This is also known as building up a “ghost” or “halo” region in domain decomposition and only necessary for specific algorithms that extend the basic PIC cycle, e.g. with dependence on derived density or energy fields.

precision.param

namespace picongpu

mallocMC.param

namespace picongpu

Typedefs

using picongpu::DeviceHeap = typedef mallocMC::Allocator< mallocMC::CreationPolicies::Scatter< DeviceHeapConfig >, mallocMC::DistributionPolicies::Noop, mallocMC::OOMPolicies::ReturnNull, mallocMC::ReservePoolPolicies::SimpleCudaMalloc, mallocMC::AlignmentPolicies::Shrink<> >
struct picongpuDeviceHeapConfig

Public Types

using picongpu::DeviceHeapConfigpagesize = boost::mpl::int_<2 * 1024 * 1024>
using picongpu::DeviceHeapConfigaccessblocks = boost::mpl::int_<4>
using picongpu::DeviceHeapConfigregionsize = boost::mpl::int_<8>
using picongpu::DeviceHeapConfigwastefactor = boost::mpl::int_<2>
using picongpu::DeviceHeapConfigresetfreedpages = boost::mpl::bool_<true>