Swarm-NG  1.1
gpu Directory Reference

This directory contains source files implementing GPU/CUDA interface including: defining GPU integrator class; setting GPU device related parameters; implementing different gravitation calculations on GPU platforms; several utility functions for Swarm-NG on GPU.

More...

Files

file  bppt.hpp [code]
 Defines and implements the GPU integrator class with one thread for each body-pair and the interface to GPU and CUDA.
 
file  device_settings.cpp [code]
 Implements the function to set up the GPU related parameters.
 
file  device_settings.hpp [code]
 Declaration of funtions for GPU device setting.
 
file  generic_gpu_bppt_integrator.hpp [code]
 Defines and implements class swarm::gpu::bppt::generic - a generic integrator for rapid creation of new GPU integrators.
 
file  gravitation_acc.hpp [code]
 Defines and implements class swarm::gpu::bppt::GravitationAcc that implements member functions to calculate acceleration part of the gravitation.
 
file  gravitation_accjerk.hpp [code]
 Defines and implements class swarm::gpu::bppt::GravitationAccJerk that implements the functions to calculate accerleration and jerk of the gravitation in parallel.
 
file  gravitation_common.hpp [code]
 Defines and implements common utility functions for calculating acceleration and jerk of gravitation.
 
file  gravitation_gr_acc.hpp [code]
 Defines and implements class swarm::gpu::bppt::GravitationAcc_GR that implements the functions to calculate acceleration part of the gravitation.
 
file  gravitation_largen.hpp [code]
 Defines and implements class swarm::gpu::bppt::GravitationLargeN that implements functions to calculate acceleration and jerk in parallel for many-body systems.
 
file  gravitation_mediumn.hpp [code]
 Defines and implements class swarm::gpu::bppt::GravitationMediumN that implements functions to calculate acceleration and jerk in parallel for many-body systems.
 
file  helpers.hpp [code]
 Template meta-programming combinators (symbolic helper functions) for loop unrolling and selecting the correct templatized integrator at runtime.
 
file  pair_calculation.hpp [code]
 
file  utilities.cu [code]
 provides several utility functions for public interface for swarm libaray
 
file  utilities.hpp [code]
 Defines a function for counting the number of active ensemble systems on GPU and utility functions for finding the best factorization and compute the optimal allowable grid dimensions based on the system configuration.
 

Detailed Description

This directory contains source files implementing GPU/CUDA interface including: defining GPU integrator class; setting GPU device related parameters; implementing different gravitation calculations on GPU platforms; several utility functions for Swarm-NG on GPU.