Class List

Here are the classes, structs, unions and interfaces with brief descriptions:
LibGeoDecomp::PatchLink< GRID_TYPE >::Accepter
LibGeoDecomp::HpxSimulator::PatchLink< GRID_TYPE, UPDATE_GROUP >::Accepter
LibGeoDecomp::TopologiesHelpers::Accessor< 1 >
LibGeoDecomp::TopologiesHelpers::Accessor< 2 >
LibGeoDecomp::TopologiesHelpers::Accessor< 3 >
LibGeoDecomp::RemoteSteererHelpers::Action< CELL_TYPE >This class can be used as a base for functors which extend the functionality of the CommandServer within the RemoteSteerer
LibGeoDecomp::NeighborhoodIteratorHelpers::Adapter< NEIGHBORHOOD_ITERATOR >This is a shim to let MultiContainerCell handle members of type BoxCell (which use this NeighborhoodIterator for accessing the surrounding particles) identically to ContainerCells (which rely on NeighborhoodAdapter)
LibGeoDecomp::APITraits::AlwaysVoid< T >Helper class for specializations
LibGeoDecomp::BoxCell< CONTAINER >::API
LibGeoDecomp::ContainerCell< CARGO, SIZE, KEY >::API
LibGeoDecomp::APITraitsAPITraits contains a set of classes which can be used to describe/discover the interface between a user-supplied model (cell class) and LibGeoDecomp
LibGeoDecomp::MultiContainerCellHelpers::ArgumentType< Type >
LibGeoDecomp::MultiContainerCellHelpers::ArgumentType< ReturnType(Argument)>
LibGeoDecomp::ASCIIWriter< CELL_TYPE, ATTRIBUTE_SELECTOR >An output plugin for writing text files
LibGeoDecomp::BiasBalancerThis class is for testing purposes
LibGeoDecomp::LinePointerNeighborhoodHelper::Bottom< CELL, STENCIL, FLAG >Empty dummy
LibGeoDecomp::LinePointerNeighborhoodHelper::Bottom< CELL, STENCIL, true >
LibGeoDecomp::BOVWriter< CELL_TYPE >Writes simulation snapshots compatible with VisIt's Brick of Values (BOV) format using MPI-IO
LibGeoDecomp::BoxCell< CONTAINER >This class is an adapter for implementing n-body codes and molecular dynamics (MD) applications with LibGeoDecomp
LibGeoDecomp::LinePointerAssemblyHelpers::CalcXCoord< 0 >
LibGeoDecomp::LinePointerAssemblyHelpers::CalcXCoord< 1 >
LibGeoDecomp::LinePointerAssemblyHelpers::CalcXCoord<-1 >
LibGeoDecomp::SimpleCellPlotterHelpers::CellToColor< CELL, MEMBER, PALETTE >
LibGeoDecomp::CheckerboardingPartition< DIM >
LibGeoDecomp::TestCellHelpers::CheckNeighbor< STENCIL, INDEX >
LibGeoDecomp::ChronometerThis class can be used to measure execution time of different parts of our code
LibGeoDecomp::Clonable< BASE, IMPLEMENTATION >This class adds a virtual copy constructor to child classes
LibGeoDecomp::ClonableInitializer< CELL >This extension of the Initializer interface allows library classes to create copies (clones) of a particular instance, which is necessary in some use cases, e.g
LibGeoDecomp::ClonableInitializerWrapper< INITIALIZER >This class adds a default clone() to any Initializer via its copy c-tor
LibGeoDecomp::CollectingWriter< CELL_TYPE >Adapter class whose purpose is to use legacy Writer objects together with a DistributedSimulator
LibGeoDecomp::CollectionInterfaceThis class allows library code to interface with various collection classes (e.g
LibGeoDecomp::RemoteSteererHelpers::CommandServer< CELL_TYPE >A server which can be reached by TCP (nc, telnet, ...)
LibGeoDecomp::HiParSimulator::CommonStepper< CELL_TYPE >
LibGeoDecomp::RegionStreakIteratorHelpers::Compare< DIM >
LibGeoDecomp::RegionStreakIteratorHelpers::Compare< 0 >
LibGeoDecomp::GridBase< CELL, DIMENSIONS >::ConstIteratorConvenice class for reading multiple cells
LibGeoDecomp::RegionHelpers::ConstructStreakFromIterators< DIM >
LibGeoDecomp::RegionHelpers::ConstructStreakFromIterators< 0 >
LibGeoDecomp::ContainerCell< CARGO, SIZE, KEY >This class is useful for writing irregularly shaped codes with LibGeoDecomp (e.g
LibGeoDecomp::Coord< 1 >
LibGeoDecomp::Coord< 2 >
LibGeoDecomp::Coord< 3 >
LibGeoDecomp::CoordBox< DIM >CoordBox describes a rectangular, N-dimensional set of coordinates
LibGeoDecomp::CoordBoxMPIDatatypeHelperThe MPI typemap generator need to find out for which template parameter values it should generate typemaps
LibGeoDecomp::CoordMap< CELL_TYPE, GRID_TYPE >Access to neighboring cells in a grid via relative coordinates
LibGeoDecomp::LinePointerAssemblyHelpers::CopyCellPointer< STENCIL, INDEX >
LibGeoDecomp::Stencils::Cross< DIMENSIONS, RAD >This neighborhood was dubbed "Cross" by Prof
LibGeoDecomp::Topologies::Cube< DIM >
LibGeoDecomp::CUDAArray< ELEMENT_TYPE >Handles memory allocation and data transfer (intra and inter GPU) on CUDA-capable NVIDIA GPUs
LibGeoDecomp::CUDAGrid< CELL_TYPE, TOPOLOGY, TOPOLOGICALLY_CORRECT >A lightweight AoS-style (Array of Structs) grid class, to manage memory allocation and bulk data transfer on NVDIA GPUs
LibGeoDecomp::CUDARegion< DIM >Region is optimized for CPUs, CUDARegion is optimized for iteration on GPUs
LibGeoDecomp::CudaSimulator< CELL_TYPE >CudaSimulator delegates all the work to the current Nvidia GPU
LibGeoDecomp::HiParSimulator::CUDAStepper< CELL_TYPE >The CUDAStepper offloads cell updates to a CUDA enabled GPU
LibGeoDecomp::DataAccessor< CELL_TYPE, MEMBER_TYPE >Manages access to member variables of cells from generic Writer/Steerer classes
LibGeoDecomp::DefaultFilter< CELL, MEMBER, EXTERNAL >The DefaultFilter just copies ofer the specified member -- sans modification
LibGeoDecomp::APITraitsHelpers::DefaultMPIDataTypeLookup< PROVIDER, CELL >
LibGeoDecomp::CollectionInterface::Delegate< CELL, CONTAINER, ITERATOR, CONST_ITERATOR >This can be used to delegate calls to a member of the given CELL -- useful if your CELL contains multiple collections, e.g
LibGeoDecomp::LinePointerAssemblyHelpers::DetermineLinePointerCoord< 1 >
LibGeoDecomp::LinePointerAssemblyHelpers::DetermineLinePointerCoord< 2 >
LibGeoDecomp::LinePointerAssemblyHelpers::DetermineLinePointerCoord< 3 >
LibGeoDecomp::SimulationParametersHelpers::DiscreteSet< VALUE_TYPE >
LibGeoDecomp::DisplacedGrid< CELL_TYPE, TOPOLOGY, TOPOLOGICALLY_CORRECT >A grid whose origin has been shiftet by a certain offset
LibGeoDecomp::DistributedSimulator< CELL_TYPE >This class encompasses all Simulators which can run on multiple nodes (e.g
LibGeoDecomp::LinePointerNeighborhoodHelper::East< CELL, STENCIL, FLAG >Empty dummy
LibGeoDecomp::LinePointerNeighborhoodHelper::East< CELL, STENCIL, true >
LibGeoDecomp::VoronoiMesherHelpers::Element< COORD, ID >
LibGeoDecomp::VoronoiMesherHelpers::Equation< COORD, ID >
LibGeoDecomp::ChronometerHelpers::EventUtil< ID >
LibGeoDecomp::FileOpenExceptionMore specific error class for errors during file opening
LibGeoDecomp::FileReadExceptionMore specific error class for errors during reading
LibGeoDecomp::FileWriteExceptionMore specific error class for errors during writing
LibGeoDecomp::GridHelpers::FillCoordBox< 1 >
LibGeoDecomp::GridHelpers::FillCoordBox< 2 >
LibGeoDecomp::GridHelpers::FillCoordBox< 3 >
LibGeoDecomp::Filter< CELL, MEMBER, EXTERNAL, ARITY >Derive from this class if you wish to add custom data adapters/converters to your Selector
LibGeoDecomp::FilterBase< CELL >Base class for adding user-defined data filters to a Selector
LibGeoDecomp::FixedArray< T, SIZE >This is an alternative array with a fixed maximum size
LibGeoDecomp::FixedCoord< DIM_X, DIM_Y, DIM_Z >Not meant to be used with actual instances, but rather to bind template parameters in a convenient way
LibGeoDecomp::FixedNeighborhood< CELL, TOPOLOGY, DIM_X, DIM_Y, DIM_Z, INDEX, SOA_ACCESSOR_IN, SOA_ACCESSOR_OUT >Similar to LinePointerNeighborhood, this class serves as a proxy for cells to acccess their neighbors during update
LibGeoDecomp::FloatCoord< 1 >
LibGeoDecomp::FloatCoord< 2 >
LibGeoDecomp::FloatCoord< 3 >
LibGeoDecomp::FloatCoordMPIDatatypeHelperThe MPI typemap generator need to find out for which template parameter values it should generate typemaps
LibGeoDecomp::SoAGridHelpers::GenIndex< DIM_X, DIM_Y, DIM_Z >A simple functor for wrapping index calculation within the SoA layout
LibGeoDecomp::RemoteSteererHelpers::GetAction< CELL_TYPE >
LibGeoDecomp::RemoteSteererHelpers::GetHandler< CELL_TYPE, MEMBER_TYPE >
LibGeoDecomp::SelectorHelpers::GetMemberOffset< CELL, MEMBER >
LibGeoDecomp::FilterHelpers::GetMPIDatatype< MEMBER >This class is a shim to deduce a member's MPI data type via, different methods are tried:
LibGeoDecomp::FilterHelpers::GetMPIDatatype0< MEMBER, 0 >See below
LibGeoDecomp::FilterHelpers::GetMPIDatatype0< MEMBER, 1 >See below
LibGeoDecomp::FilterHelpers::GetMPIDatatype1< MEMBER, 0 >See below
LibGeoDecomp::FilterHelpers::GetMPIDatatype1< MEMBER, 1 >See below
LibGeoDecomp::FilterHelpers::GetTypeName< MEMBER >We're intentionally giving only few specializations for this helper as it's mostly meant to be used with VisIt's BOV format, and this is only defined on tree types
LibGeoDecomp::FilterHelpers::GetTypeName< bool >See above
LibGeoDecomp::FilterHelpers::GetTypeName< char >See above
LibGeoDecomp::FilterHelpers::GetTypeName< double >See above
LibGeoDecomp::FilterHelpers::GetTypeName< float >See above
LibGeoDecomp::FilterHelpers::GetTypeName< int >See above
LibGeoDecomp::FilterHelpers::GetTypeName< long >See above
LibGeoDecomp::Grid< CELL_TYPE, TOPOLOGY >A multi-dimensional regular grid
LibGeoDecomp::GridBase< CELL, DIMENSIONS >This is an abstract base class for all grid classes
LibGeoDecomp::GridTypeSelector< CELL_TYPE, TOPOLOGY, TOPOLOGICALLY_CORRECT, APITraits::FalseType >
LibGeoDecomp::GridTypeSelector< CELL_TYPE, TOPOLOGY, TOPOLOGICALLY_CORRECT, APITraits::TrueType >
LibGeoDecomp::RemoteSteererHelpers::Handler< CELL_TYPE >A Handler is similar to an Action in the sense it will act upon commands invoked by the user
LibGeoDecomp::APITraits::HasAutoGeneratedMPIDataType< PROVIDER >This specifier indicates that some PROVIDER class can deliver the MPI data type for the cell class via a lookup() function
LibGeoDecomp::APITraits::HasBoostSerializationThis class can be used to flag cell classes which can be marshalled with Boost.Serialization
LibGeoDecomp::APITraits::HasCoordType< COORD >This trait is used by unstructured grid and meshfree codes to set the coordinate type by which the elements are represemted
LibGeoDecomp::APITraits::HasCubeTopology< DIM >Convenience overload to simplify most common topology specifications
LibGeoDecomp::APITraits::HasCustomMPIDataType< CELL >Use this specifier to give LibGeoDecomp access to the MPI data type which can be used to communicate instances of a cell
LibGeoDecomp::APITraits::HasCustomPositionCheckerThis is a hook which allows user code to provide its own position checker
LibGeoDecomp::APITraits::HasCustomRegularGridUse this trait to flag models which contain a regular grid that have a non-stanard spacing
LibGeoDecomp::APITraits::HasFixedCoordsOnlyUpdateUse this if your model can restrict itself to use only FixedCoord to address its neighbors (via the neighborhood object to update())
LibGeoDecomp::APITraits::HasIDType< ID >Like HasCoordType, this trait can be used to set the type which is used in meshfree and unstructured grid codes to uniquely identify elements
LibGeoDecomp::APITraits::HasLookupMemberFunction< T, RESULT, PARAM >Type trait which allows external code to detect if a class has a member function value()
LibGeoDecomp::APITraits::HasNanoSteps< CELL_NANO_STEPS >Defines how many logical time steps constitute one physically correct time step (e.g
LibGeoDecomp::APITraits::HasOpaqueMPIDataType< CELL >Use this specifyer if your cell is bitwise serializable
LibGeoDecomp::APITraits::HasPointMeshIndicates that the model has particles or features other entities that can be represented by a point mesh
LibGeoDecomp::APITraits::HasPredefinedMPIDataType< BASE_TYPE >This specifier indicates that some PROVIDER class can deliver the MPI data type for the cell class via a lookup() function
LibGeoDecomp::APITraits::HasSeparateCUDAUpdateSometime cells may need to roll different code on CUDA than on the CPU
LibGeoDecomp::APITraits::HasSoAUse this qualifier in a cell's API to hint that it supports a Struct of Arrays memory layout
LibGeoDecomp::APITraits::HasSpeedGuideUse this, if you want to use your cell in a heterogenous environment, to specify architecture-specific efficiency hints
LibGeoDecomp::APITraits::HasStaticData< STATIC_DATA >Some models have a need for static, but mutable data blocks, e.g
LibGeoDecomp::APITraits::HasStencil< STENCIL >Allows cells to override the default stencil shape/radius
LibGeoDecomp::APITraits::HasThreadedUpdateSome models (e.g
LibGeoDecomp::APITraits::HasTopology< TOPOLOGY >Here cells can specify whether they expect a different topology (number of spatial dimensions, type of boundary conditions) than defined in the default
LibGeoDecomp::APITraits::HasTorusTopology< DIM >Same as for HasCubeTopology: overload purely for convenience
LibGeoDecomp::APITraits::HasUnstructuredGridIf a model is based on an unstructred grid, then we assume that it can be represented a set of polygonal zones
LibGeoDecomp::APITraits::HasUpdateLineXThis qualifier should be used to flag models which sport a static updateLineX() function, which is expected to update a streak of cells along the X axis
LibGeoDecomp::APITraits::HasValueFunction< T, RESULT >Type trait which allows external code to detect if a class has a member function value()
LibGeoDecomp::HIndexingPartitionThis class implements the H-Indexing scheme for arbitrary rectangles
LibGeoDecomp::HiParSimulator::HiParSimulator< CELL_TYPE, PARTITION, STEPPER >
LibGeoDecomp::HoodType< CELL_TYPE >
LibGeoDecomp::HpxSimulator::HpxSimulator< CELL_TYPE, PARTITION, STEPPER >
LibGeoDecomp::HiParSimulator::HpxStepper< CELL_TYPE >
LibGeoDecomp::HpxWriterCollector< CELL_TYPE, CONVERTER >
LibGeoDecomp::HpxWriterSink< CELL_TYPE, CONVERTER >
LibGeoDecomp::HpxWriterSinkServer< CELL_TYPE, CONVERTER >
LibGeoDecomp::IdentityConverter< CELL_TYPE >
LibGeoDecomp::SerializationBufferHelpers::Implementation< CELL, SUPPORTS_SOA, SUPPORTS_BOOST_SERIALIZATION >This is an n-way switch to allow other classes to select the appropriate type to buffer regions of a grid; for use with GridVecConv
LibGeoDecomp::SerializationBufferHelpers::Implementation< CELL, typename CELL::API::SupportsSoA, void >
LibGeoDecomp::SerializationBufferHelpers::Implementation< CELL, void, typename CELL::API::SupportsBoostSerialization >
LibGeoDecomp::HpxSimulator::UpdateGroup< CELL_TYPE, PARTITION, STEPPER >::InitData
LibGeoDecomp::Initializer< CELL >The initializer sets up the initial state of the grid
LibGeoDecomp::RemoteSteererHelpers::InteractorThis class can be used to encapsulate synchronous/asynchronous communication with a RemoteSteerer's CommandServer
LibGeoDecomp::SimulationParametersHelpers::Interval< VALUE_TYPE >
LibGeoDecomp::IOExceptionException class which is suitable for all I/O errors
LibGeoDecomp::SpaceFillingCurve< DIM >::Iterator
LibGeoDecomp::ZCurvePartition< DIMENSIONS >::Iterator
LibGeoDecomp::GridBase< CELL, DIMENSIONS >::IteratorConvenice class for reading/writing multiple cells
LibGeoDecomp::Region< DIM >::Iterator
LibGeoDecomp::CoordBox< DIM >::Iterator
LibGeoDecomp::LinePointerAssembly< STENCIL >Will initialize an array of pointers so that it can be used with LinePointerNeighborhood
LibGeoDecomp::LinePointerNeighborhood< CELL, STENCIL, BOUNDARY_WEST, BOUNDARY_EAST, BOUNDARY_TOP, BOUNDARY_BOTTOM, BOUNDARY_SOUTH, BOUNDARY_NORTH >Gives cells access to their neighboring cells in a given stencil shape
LibGeoDecomp::LinePointerUpdateFunctor< CELL, DIM, HIGH, CUR_DIM, BOUNDARY_TOP, BOUNDARY_BOTTOM, BOUNDARY_SOUTH, BOUNDARY_NORTH >Functor which (tada) updates a single row (or the fraction described by the Streak) in the grid
LibGeoDecomp::LinePointerUpdateFunctor< CELL, DIM, true, 0, BOUNDARY_TOP, BOUNDARY_BOTTOM, BOUNDARY_SOUTH, BOUNDARY_NORTH >See class above for documentation
LibGeoDecomp::PatchLink< GRID_TYPE >::Link
LibGeoDecomp::HpxSimulator::PatchLink< GRID_TYPE, UPDATE_GROUP >::Link
LibGeoDecomp::HiParSimulator::CUDAStepperHelpers::LoadAbsoluteCoord< 2 >
LibGeoDecomp::HiParSimulator::CUDAStepperHelpers::LoadAbsoluteCoord< 3 >
LibGeoDecomp::SoAGridHelpers::LoadMember< CELL, DIM >
LibGeoDecomp::LoggerLogger provides a set of functions and macros to selectively print different amounts/levels of debugging information
LibGeoDecomp::MemoryWriter< CELL_TYPE >The MemoryWriter is good for debugging a Simulator
LibGeoDecomp::MeshlessAdapter< TOPOLOGY >A utility class which supports users in porting meshless codes to LibGeoDecomp by superimposing a stencil structure, even though the actual cells may be connected by an irregular graph
LibGeoDecomp::HiParSimulator::MockPatchAccepter< GRID_TYPE >
LibGeoDecomp::MockSteerer< CELL_TYPE >
LibGeoDecomp::MonolithicSimulator< CELL_TYPE >A MonolithicSimulator is a Simulator which runs on a
LibGeoDecomp::Stencils::Moore< DIMENSIONS, RAD >The classic Moore neighborhood contains all cells whose spatial distance to the orign (i.e
MPIGlobalFixtureOpenMPI can't run multiple MPI_Init() - MPI_Finalize() cycles during one program execution
LibGeoDecomp::MPIIOInitializer< CELL_TYPE >This class can set up a simulation from a snapshot generated by MPIIOWriter/ParallelMPIIOWriter
LibGeoDecomp::MPIIOWriter< CELL_TYPE >This writer uses MPI I/O to dump simulation snapshots to disk
LibGeoDecomp::MPILayerMPILayer is a wrapper that provides a mostly 1:1 identical access to MPI functions, but with a number of convenient twists, where appropriate
MPITestThis test suite ensures that MPI has been successfully initialized
LibGeoDecomp::ContainerCell< CARGO, SIZE, KEY >::NeighborhoodAdapter< NEIGHBORHOOD, COLLECTION_INTERFACE >
LibGeoDecomp::NeighborhoodAdapter< NEIGHBORHOOD, DIM, COLLECTION_INTERFACE >This class is most useful for interfacing meshless codes with LibGeoDecomp
LibGeoDecomp::NeighborhoodIterator< NEIGHBORHOOD, DIM, COLLECTION_INTERFACE >This class is meant to be used with BoxCell and alike to interface MD and n-body codes with our standard neighborhood types
LibGeoDecomp::NonPoDTestCellThis class is a test vehicle for checking whether a Simulator handles cells which are not plain old datatypes (PoDs) correctly
LibGeoDecomp::NoOpBalancerThis class is for testing purposes and will not not modify the given work loads
LibGeoDecomp::FixedNeighborhoodHelpers::NormalizeCoord< DIM, DISTANCE >
LibGeoDecomp::TopologiesHelpers::NormalizeCoord< TOPOLOGY >
LibGeoDecomp::TopologiesHelpers::NormalizeEdges< TOPOLOGY >
LibGeoDecomp::LinePointerNeighborhoodHelper::North< CELL, STENCIL, FLAG >Empty dummy
LibGeoDecomp::LinePointerNeighborhoodHelper::North< CELL, STENCIL, true >
LibGeoDecomp::HiParSimulator::OffsetHelper< INDEX, DIM, TOPOLOGY >
LibGeoDecomp::Stencils::OffsetHelper< Moore< DIM, RADIUS >, X, Y, Z >
LibGeoDecomp::Stencils::OffsetHelper< VonNeumann< DIM, RADIUS >, X, Y, Z >
LibGeoDecomp::HiParSimulator::OffsetHelper<-1, DIM, TOPOLOGY >
LibGeoDecomp::OozeBalancerThe OozeBalancer is based on the (false) assumption that each node is equally fast, that each item (see LoadBalancer) costs about the same time to be computed (this is also false) and that these costs don't change all too much during the runtime (again: plain wrong)
LibGeoDecomp::HiParSimulator::OpenCLStepper< CELL_TYPE >
LibGeoDecomp::SimulationParametersHelpers::OptimizableParameterVirtual interface which allows the implementation of auto-tuners and parameter optimizers without them having to unterstand the actual meaning of the parameters
LibGeoDecomp::TopologiesHelpers::OutOfBounds< TOPOLOGY >
LibGeoDecomp::Palette< VALUE >This class is a simple way to describe a mapping of a range of values to colors
LibGeoDecomp::ParallelMemoryWriter< CELL_TYPE >The ParallelMemoryWriter is the MemoryWriters's cousin which is compatible with a DistributedSimulator
LibGeoDecomp::ParallelMPIIOWriter< CELL_TYPE >Just like MPIIOWriter, this class will generate snapshots of the simulation for checkpoint/restart capabilities
LibGeoDecomp::ParallelTestWriterThis class serves to verify the callback behavior of implementations of DistributedSimulator
LibGeoDecomp::ParallelWriter< CELL_TYPE >ParallelWriter is the parent class for all parallel IO
LibGeoDecomp::HiParSimulator::ParallelWriterAdapter< GRID_TYPE, CELL_TYPE >ParallelWriterAdapter translates the interface of a ParallelWriter to a PatchAccepter, so that we can treat IO similarly to sending ghost zones
LibGeoDecomp::Partition< DIM >
LibGeoDecomp::PartitionManager< TOPOLOGY >
LibGeoDecomp::CollectionInterface::PassThrough< CELL, CARGO, ITERATOR, CONST_ITERATOR >This is basically a non-operate: begin() and end() are passed on to the consumer of this class
LibGeoDecomp::RemoteSteererHelpers::PassThroughAction< CELL_TYPE >This Action is helpful if a given user command has to be executed by a Handler on the simulation node (i.e
LibGeoDecomp::PatchAccepter< GRID_TYPE >The PatchAccepter collects grid snippets from steppers, either for IO or for ghostzone synchronization
LibGeoDecomp::PatchBuffer< GRID_TYPE1, GRID_TYPE2 >
LibGeoDecomp::PatchBufferFixed< GRID_TYPE1, GRID_TYPE2, SIZE >The PatchBuffer's cousin can only store a fixed number of regions at a time, but avoids the memory allocation hassle during put()
LibGeoDecomp::HpxSimulator::PatchLink< GRID_TYPE, UPDATE_GROUP >
LibGeoDecomp::PatchLink< GRID_TYPE >PatchLink encapsulates the transmission of patches to and from remote processes
LibGeoDecomp::PatchProvider< GRID_TYPE >PatchProvider fills in grid patches into a Stepper, which is important for ghostzone synchronization, but could be used for steering, too
LibGeoDecomp::RemoteSteererHelpers::CommandServer< CELL_TYPE >::PingActionThis class is just a NOP, which may be used by the client to retrieve new steering feedback
LibGeoDecomp::RemoteSteererHelpers::PipeThe purpose of the Pipe is to forward steering data between the connection node and the execution nodes
LibGeoDecomp::Plotter< CELL, CELL_PLOTTER >
LibGeoDecomp::PointerNeighborhood< CELL, STENCIL >Neighborhood which can be adressed by parameters known at compile time
LibGeoDecomp::Stencils::Power< BASE, EXP >
LibGeoDecomp::Stencils::Power< BASE, 0 >
LibGeoDecomp::PPMWriter< CELL_TYPE, CELL_PLOTTER >This writer will periodically write images in PPM format
LibGeoDecomp::SelectorHelpers::PrimitiveSelector< CELL >Primitive datatypes don't have member pointers (or members in the first place)
LibGeoDecomp::HpxSimulator::PatchLink< GRID_TYPE, UPDATE_GROUP >::Provider
LibGeoDecomp::PatchLink< GRID_TYPE >::Provider
LibGeoDecomp::QuickPalette< VALUE >This class is similar to Palette, but trades flexibility for speed
LibGeoDecomp::RemoteSteererHelpers::CommandServer< CELL_TYPE >::QuitActionThis helper class lets us and the user safely close the CommandServer's network service, which is nice as it is using blocking IO and it's a major PITA to cancel that
LibGeoDecomp::RandomBalancerThis class is for testing purposes
LibGeoDecomp::TopologiesHelpers::RawTopology< DIMENSIONS, WRAP_DIM0, WRAP_DIM1, WRAP_DIM2 >
LibGeoDecomp::RecursiveBisectionPartition< DIM >
LibGeoDecomp::Region< DIM >Region stores a set of coordinates
LibGeoDecomp::HpxWriterSinkServer< CELL_TYPE, CONVERTER >::RegionInfo
LibGeoDecomp::RegionHelpers::RegionInsertHelper< DIM >
LibGeoDecomp::RegionHelpers::RegionInsertHelper< 0 >
LibGeoDecomp::RegionHelpers::RegionIntersectHelper< DIM >
LibGeoDecomp::RegionHelpers::RegionIntersectHelper< 0 >
LibGeoDecomp::RegionHelpers::RegionLookupHelper< DIM >
LibGeoDecomp::RegionHelpers::RegionLookupHelper< 0 >
LibGeoDecomp::RegionHelpers::RegionRemoveHelper< DIM >
LibGeoDecomp::RegionHelpers::RegionRemoveHelper< 0 >
LibGeoDecomp::RegionStreakIterator< DIM, REGION >
LibGeoDecomp::Stencils::Repeat< NUM, TEMPLATE, PARAM >
LibGeoDecomp::Stencils::Repeat< 0, TEMPLATE, PARAM >
LibGeoDecomp::SoAGridHelpers::SaveMember< CELL, DIM >
LibGeoDecomp::APITraits::SelectAPI< CELL, HAS_API >
LibGeoDecomp::APITraits::SelectAPI< CELL, typename AlwaysVoid< typename CELL::API >::Type >Allows library code to pull in a model's whole API without requiring the user to specify one at all (if none is defined, we'll return an empty class)
LibGeoDecomp::APITraits::SelectBoostSerialization< CELL, HAS_BOOST_SERIALIZATION >Decide whether a model can be (de-)serialized with Boost.Serialization
LibGeoDecomp::APITraits::SelectBoostSerialization< CELL, typename CELL::API::SupportsBoostSerialization >
LibGeoDecomp::APITraits::SelectCoordType< CELL, HAS_COORD_TYPE >
LibGeoDecomp::APITraits::SelectCoordType< CELL, typename CELL::API::SupportsCoordType >
LibGeoDecomp::APITraits::SelectFixedCoordsOnlyUpdate< CELL, HAS_FIXED_COORDS_ONLY_UPDATE >Does CELL restrict itself to FixedCoord when accessing neighboring cells?
LibGeoDecomp::APITraits::SelectFixedCoordsOnlyUpdate< CELL, typename CELL::API::SupportsFixedCoordsOnlyUpdate >
LibGeoDecomp::APITraits::SelectIDType< CELL, HAS_ID_TYPE >
LibGeoDecomp::APITraits::SelectIDType< CELL, typename CELL::API::SupportsIDType >
LibGeoDecomp::APITraits::SelectMPIDataType< CELL, typename CELL::API::SupportsMPIDataType, typename CELL::API::SupportsAutoGeneratedMPIDataType >
LibGeoDecomp::APITraits::SelectMPIDataType< CELL, typename CELL::API::SupportsMPIDataType, typename CELL::API::SupportsCustomMPIDataType >
LibGeoDecomp::APITraits::SelectMPIDataType< CELL, typename CELL::API::SupportsMPIDataType, typename CELL::API::SupportsPredefinedMPIDataType >
LibGeoDecomp::APITraits::SelectNanoSteps< CELL, HAS_NANO_STEPS >Of how many nano steps (intermediate steps) is a whole cell cycle composed?
LibGeoDecomp::APITraits::SelectNanoSteps< CELL, typename CELL::API::SupportsNanoSteps >
LibGeoDecomp::Selector< CELL >A Selector can be used by library code to extract data from user code, e.g
LibGeoDecomp::UpdateFunctorHelpers::Selector< CELL >
LibGeoDecomp::Selector< char >We provide these specializations to allow our unit tests to use grids with primitive datatypes
LibGeoDecomp::Selector< double >
LibGeoDecomp::Selector< float >
LibGeoDecomp::Selector< int >
LibGeoDecomp::Selector< unsigned >
LibGeoDecomp::APITraits::SelectPointMesh< CELL, HAS_POINT_MESH >
LibGeoDecomp::APITraits::SelectPointMesh< CELL, typename CELL::API::SupportsPointMesh >
LibGeoDecomp::APITraits::SelectPositionChecker< CELL, HAS_TEMPLATE_NAME >
LibGeoDecomp::APITraits::SelectPositionChecker< CELL, typename CELL::API::SupportsCustomPositionChecker >
LibGeoDecomp::APITraits::SelectRegularGrid< CELL, HAS_REGULAR_GRID >All stencil codes are based on a regular grid, but even particle-in-cell codes may use such a grid to organizing the particles and computing certain variables (e.g
LibGeoDecomp::APITraits::SelectRegularGrid< CELL, typename CELL::API::SupportsCustomRegularGrid >
LibGeoDecomp::APITraits::SelectRegularGrid< CELL, typename CELL::API::SupportsNoRegularGrid >
LibGeoDecomp::APITraits::SelectSeparateCUDAUpdate< CELL, HAS_SEPARATE_CUDA_UPDATE >
LibGeoDecomp::APITraits::SelectSeparateCUDAUpdate< CELL, typename CELL::API::SupportsSeparateCUDAUpdate >
LibGeoDecomp::APITraits::SelectSoA< CELL, HAS_SOA >
LibGeoDecomp::APITraits::SelectSoA< CELL, typename CELL::API::SupportsSoA >
LibGeoDecomp::APITraits::SelectSpeedGuide< CELL, HAS_SPEED >Determine whether a cell has an architecture-specific speed indicator defined
LibGeoDecomp::APITraits::SelectSpeedGuide< CELL, typename CELL::API::SupportsSpeed >
LibGeoDecomp::APITraits::SelectStaticData< CELL, HAS_SPEED >
LibGeoDecomp::APITraits::SelectStaticData< CELL, typename CELL::API::SupportsStaticData >
LibGeoDecomp::APITraits::SelectStencil< CELL, HAS_STENCIL >Discover which stencil a cell wants to use
LibGeoDecomp::APITraits::SelectStencil< CELL, typename CELL::API::SupportsStencil >
LibGeoDecomp::APITraits::SelectThreadedUpdate< CELL, HAS_THREADED_UPDATE >
LibGeoDecomp::APITraits::SelectThreadedUpdate< CELL, typename CELL::API::SupportsThreadedUpdate >
LibGeoDecomp::APITraits::SelectTopology< CELL, HAS_TOPOLOGY >
LibGeoDecomp::APITraits::SelectTopology< CELL, typename CELL::API::SupportsTopology >
LibGeoDecomp::APITraits::SelectUnstructuredGrid< CELL, HAS_UNSTRUCTURED_GRID >
LibGeoDecomp::APITraits::SelectUnstructuredGrid< CELL, typename CELL::API::SupportsUnstructuredGrid >
LibGeoDecomp::APITraits::SelectUpdateLineX< CELL, HAS_UPDATE_LINE_X >Check whether cell has an updateLineX() member
LibGeoDecomp::APITraits::SelectUpdateLineX< CELL, typename CELL::API::SupportsUpdateLineX >
LibGeoDecomp::SellCSigmaSparseMatrixContainer< VALUETYPE, C, SIGMA >
LibGeoDecomp::SerialBOVWriter< CELL_TYPE >Writes simulation snapshots compatible with VisIt's Brick of Values (BOV) format using one file per partition
LibGeoDecomp::SerializationBuffer< CELL >This class provides a uniform interface to the different buffer types to be used with GridVecConv
LibGeoDecomp::SerialSimulator< CELL_TYPE >SerialSimulator is the simplest implementation of the Simulator concept (or rather the MonolithicSimulator, to be exact)
LibGeoDecomp::RemoteSteererHelpers::SetAction< CELL_TYPE >
LibGeoDecomp::SoAGridHelpers::SetContent< CELL, INIT_INTERIOR >
LibGeoDecomp::SimpleCellPlotter< CELL_TYPE >This is a convenience class which uses a Palette to map a single value of a cell to a color range
LibGeoDecomp::SimpleFilter< CELL, MEMBER, EXTERNAL >Inheriting from this class instead of Filter will spare you having to implement 4 functions (instead you'll have to write just 2)
LibGeoDecomp::HiParSimulator::CUDAStepperHelpers::SimpleHood< CELL_TYPE, TOPOLOGY, 2 >
LibGeoDecomp::HiParSimulator::CUDAStepperHelpers::SimpleHood< CELL_TYPE, TOPOLOGY, 3 >
LibGeoDecomp::SimpleInitializer< CELL_TYPE >This convenience class implements some straightforward functions of Initializer
LibGeoDecomp::SimulationFactory< CELL >A convenience class for setting up all objects (e.g
LibGeoDecomp::Simulator< CELL_TYPE >A Simulator controls the workflow of the simulation
LibGeoDecomp::UpdateFunctorHelpers::Selector< CELL >::SoARegionUpdateHelper
LibGeoDecomp::LinePointerNeighborhoodHelper::South< CELL, STENCIL, FLAG >Empty dummy
LibGeoDecomp::LinePointerNeighborhoodHelper::South< CELL, STENCIL, true >
LibGeoDecomp::SpaceFillingCurve< DIM >
LibGeoDecomp::ZCurvePartition< DIMENSIONS >::Square
LibGeoDecomp::Steerer< CELL_TYPE >A steerer is an object which is allowed to modify a Simulator's (region of the) grid
LibGeoDecomp::HiParSimulator::SteererAdapter< GRID_TYPE, CELL_TYPE >
LibGeoDecomp::Steerer< CELL_TYPE >::SteererFeedbackThis class may be used by a Steerer to convey feedback to the Simulator
LibGeoDecomp::StencilsCollection of stencil shapes which cells may use to describe the neighborhood they need during their updates
LibGeoDecomp::HiParSimulator::Stepper< CELL_TYPE >Abstract interface class
LibGeoDecomp::Streak< DIM >A single run-lenght coded fragment of the StreakCollection
LibGeoDecomp::CoordBox< DIM >::StreakIterator
LibGeoDecomp::RegionHelpers::StreakIteratorInitBegin< DIM >
LibGeoDecomp::RegionHelpers::StreakIteratorInitBegin< 0 >
LibGeoDecomp::RegionHelpers::StreakIteratorInitEnd< DIM >
LibGeoDecomp::RegionHelpers::StreakIteratorInitEnd< 0 >
LibGeoDecomp::RegionHelpers::StreakIteratorInitOffsets< DIM, COORD_DIM >
LibGeoDecomp::RegionHelpers::StreakIteratorInitOffsets< 0, COORD_DIM >
LibGeoDecomp::RegionHelpers::StreakIteratorInitSingleOffset< DIM >
LibGeoDecomp::RegionHelpers::StreakIteratorInitSingleOffset< 0 >
LibGeoDecomp::RegionHelpers::StreakIteratorInitSingleOffsetWrapper< DIM >
LibGeoDecomp::StreakMPIDatatypeHelperThe MPI typemap generator need to find out for which template parameter values it should generate typemaps
LibGeoDecomp::MPILayer::StreakToAddressTranslatingIterator< CELL_TYPE, GRID_TYPE, DIM >
LibGeoDecomp::MPILayer::StreakToLengthTranslatingIterator< DIM >
LibGeoDecomp::StripingPartition< DIMENSIONS >
LibGeoDecomp::StripingSimulator< CELL_TYPE >This class aims at providing a very simple, but working parallel simulation facility
LibGeoDecomp::Stencils::Sum1< ADDEND, INDEX, PARAM2 >
LibGeoDecomp::Stencils::Sum1< ADDEND, 0, PARAM2 >
LibGeoDecomp::Stencils::Sum2< ADDEND, PARAM1, INDEX >
LibGeoDecomp::Stencils::Sum2< ADDEND, PARAM1, 0 >
LibGeoDecomp::TestCell< DIM, STENCIL, TOPOLOGY, ADDITIONAL_API, OUTPUT >Useful for verifying the various parallelizations in LibGeoDecomp
LibGeoDecomp::TestCellMPIDatatypeHelperThe MPI typemap generator need to find out for which template parameter values it should generate typemaps
LibGeoDecomp::TestInitializer< TEST_CELL >
LibGeoDecomp::TestInitializerHelper< 2 >
LibGeoDecomp::TestInitializerHelper< 3 >
LibGeoDecomp::TestSteerer< DIM >The TestSteerer demos how a Steerer can be implemented to modify the grid during the course of the simulation
LibGeoDecomp::TestWriterThis class serves to verify the callback behavior of implementations of MonolithicSimulator
LibGeoDecomp::RemoteSteererHelpers::Interactor::ThreadWrapper< DELEGATE >
LibGeoDecomp::LinePointerNeighborhoodHelper::Top< CELL, STENCIL, FLAG >Empty dummy
LibGeoDecomp::LinePointerNeighborhoodHelper::Top< CELL, STENCIL, true >
LibGeoDecomp::TopologiesHelpers::Topology< DIMENSIONS, WRAP_DIM0, WRAP_DIM1, WRAP_DIM2 >
LibGeoDecomp::TestCellHelpers::TopologyType< DIM >
LibGeoDecomp::TestCellHelpers::TopologyType< 3 >
LibGeoDecomp::Topologies::Torus< DIM >
LibGeoDecomp::TracingBalancerThis class relies on another LoadBalancer to do the job, but is able to pass debug output
LibGeoDecomp::TracingWriter< CELL_TYPE >The purpose of the TracingWriter is out output performance data which allows the user to gauge execution time (current, remaining, estimated time of arrival (ETA)) and performance (GLUPS, memory bandwidth)
LibGeoDecomp::SimulationParametersHelpers::TypedParameter< VALUE_TYPE >
LibGeoDecomp::UnstructuredGrid< ELEMENT_TYPE, MATRICES, VALUE_TYPE, C, SIGMA >A unstructuredgrid for irregular structures
LibGeoDecomp::UpdateFunctor< CELL >UpdateFunctor a wrapper which delegates the update of a set of cells to a suitable implementation
LibGeoDecomp::UpdateFunctorTestBase< STENCIL >
LibGeoDecomp::HpxSimulator::UpdateGroup< CELL_TYPE, PARTITION, STEPPER >
LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >
LibGeoDecomp::HpxSimulator::UpdateGroupServer< CELL_TYPE, PARTITION, STEPPER >
LibGeoDecomp::APITraits::SelectAPI< CELL, HAS_API >::Value
LibGeoDecomp::HiParSimulator::VanillaStepper< CELL_TYPE >As its name implies, the VanillaStepper is the simplest implementation of the Stepper concept: single threaded and no accelerator offloading
LibGeoDecomp::VanillaUpdateFunctor< CELL >Updates a Streak of cells using the "vanilla" API (i.e
LibGeoDecomp::Stencils::VonNeumann< DIMENSIONS, RAD >The VonNeumann neighborhood is probably as well known as the Moore neighborhood, but most commonly only used with a RADIUS equal to 1
LibGeoDecomp::Stencils::VonNeumann< 0, RADIUS >
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS, Z_OFFSET >The VonNeumann stencil's diamond shape is sadly more complex than the Moore stencil
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS,-1 >
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS,-2 >
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS,-3 >
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS,-4 >
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS,-5 >
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS,-6 >
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS,-7 >
LibGeoDecomp::Stencils::VonNeumannDimDelta< DIM, RADIUS,-8 >
LibGeoDecomp::Stencils::VonNeumannHelper< DIMENSIONS, RADIUS >This helper class exists only to work around a bug in GCC 4.4 with certain recursive templates
LibGeoDecomp::VoronoiMesher< CONTAINER_CELL >VoronoiMesher is a utility class which helps when setting up an unstructured grid based on a Voronoi diagram
LibGeoDecomp::RemoteSteererHelpers::WaitAction< CELL_TYPE >Suspends the command server until feedback is available
LibGeoDecomp::LinePointerNeighborhoodHelper::West< CELL, STENCIL, FLAG >Empty dummy
LibGeoDecomp::LinePointerNeighborhoodHelper::West< CELL, STENCIL, true >
LibGeoDecomp::ClonableInitializerWrapperHelpers::Wrap< INITIALIZER, IS_CLONABLE >
LibGeoDecomp::ClonableInitializerWrapperHelpers::Wrap< INITIALIZER, typename INITIALIZER::IsClonable >
LibGeoDecomp::TopologiesHelpers::Topology< DIMENSIONS, WRAP_DIM0, WRAP_DIM1, WRAP_DIM2 >::WrapsAxis< D >
LibGeoDecomp::TopologiesHelpers::WrapsAxis< 0, TOPOLOGY >
LibGeoDecomp::TopologiesHelpers::WrapsAxis< 1, TOPOLOGY >
LibGeoDecomp::TopologiesHelpers::WrapsAxis< 2, TOPOLOGY >
LibGeoDecomp::Writer< CELL_TYPE >Writer and ParallelWriter are the superclasses for all output formats
LibGeoDecomp::ZCurvePartition< DIMENSIONS >