Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Plugins/Cuda/include/Acts/Plugins/Cuda/Seeding2/SeedFinder.hpp>
Public Member Functions | |
SeedFinder (SeedFinderConfig< external_spacepoint_t > commonConfig, const SeedFinderOptions &seedFinderOptions, const SeedFilterConfig &seedFilterConfig, const TripletFilterConfig &tripletFilterConfig, int device=0, std::unique_ptr< const Logger > logger=getDefaultLogger("Cuda::SeedFinder", Logging::INFO)) | |
template<typename sp_range_t > | |
std::vector< Seed < external_spacepoint_t > > | createSeedsForGroup (Acts::SpacePointData &spacePointData, Acts::SpacePointGrid< external_spacepoint_t > &grid, const sp_range_t &bottomSPs, const std::size_t middleSPs, const sp_range_t &topSPs) const |
void | setLogger (std::unique_ptr< const Logger > newLogger) |
Private Member Functions | |
const Logger & | logger () const |
Private Attributes | |
SeedFinderConfig < external_spacepoint_t > | m_commonConfig |
Configuration for the seed finder. | |
SeedFinderOptions | m_seedFinderOptions |
SeedFilterConfig | m_seedFilterConfig |
Configuration for the (host) seed filter. | |
TripletFilterConfig | m_tripletFilterConfig |
Configuration for the (device) triplet filter. | |
int | m_device |
CUDA device identifier. | |
std::unique_ptr< const Logger > | m_logger |
The logger object. | |
Definition at line 29 of file SeedFinder.hpp.
View newest version in sPHENIX GitHub at line 29 of file SeedFinder.hpp
Acts::Cuda::SeedFinder< external_spacepoint_t >::SeedFinder | ( | Acts::SeedFinderConfig< external_spacepoint_t > | commonConfig, |
const SeedFinderOptions & | seedFinderOptions, | ||
const SeedFilterConfig & | seedFilterConfig, | ||
const TripletFilterConfig & | tripletFilterConfig, | ||
int | device = 0 , |
||
std::unique_ptr< const Logger > | logger = getDefaultLogger("Cuda::SeedFinder< external_spacepoint_t >", Logging::INFO) |
||
) |
Create a CUDA backed seed finder object
commonConfig | Configuration shared with Acts::SeedFinder |
seedFinderOptions | options also shared with Acts::SeedFinder |
seedFilterConfig | Configuration shared with Acts::SeedFilter |
tripletFilterConfig | Configuration for the GPU based triplet filtering |
device | The identifier of the CUDA device to run on |
logger | A Logger instance |
Definition at line 33 of file SeedFinder.ipp.
View newest version in sPHENIX GitHub at line 33 of file SeedFinder.ipp
References ACTS_DEBUG, ACTS_FATAL, Acts::SeedFinderConfig< SpacePoint >::deltaRMaxBottomSP, Acts::SeedFinderConfig< SpacePoint >::deltaRMaxTopSP, Acts::SeedFinderConfig< SpacePoint >::deltaRMinBottomSP, Acts::SeedFinderConfig< SpacePoint >::deltaRMinTopSP, Acts::Cuda::Info::instance(), Acts::SeedFilterConfig::isInInternalUnits, Acts::SeedFinderConfig< SpacePoint >::isInInternalUnits, Acts::SeedFinderOptions::isInInternalUnits, Acts::Cuda::SeedFinder< external_spacepoint_t >::m_commonConfig, Acts::Cuda::SeedFinder< external_spacepoint_t >::m_device, Acts::Cuda::SeedFinder< external_spacepoint_t >::m_seedFilterConfig, Acts::Cuda::SeedFinder< external_spacepoint_t >::m_seedFinderOptions, and size.
std::vector< Seed< external_spacepoint_t > > Acts::Cuda::SeedFinder< external_spacepoint_t >::createSeedsForGroup | ( | Acts::SpacePointData & | spacePointData, |
Acts::SpacePointGrid< external_spacepoint_t > & | grid, | ||
const sp_range_t & | bottomSPs, | ||
const std::size_t | middleSPs, | ||
const sp_range_t & | topSPs | ||
) | const |
Create all seeds from the space points in the three iterators. Can be used to parallelize the seed creation
bottomSPs | group of space points to be used as innermost SP in a seed. |
middleSPs | group of space points to be used as middle SP in a seed. |
topSPs | group of space points to be used as outermost SP in a seed. Ranges must return pointers. Ranges must be separate objects for each parallel call. |
Definition at line 83 of file SeedFinder.ipp.
View newest version in sPHENIX GitHub at line 83 of file SeedFinder.ipp
References TauVsDIS_MachineLearning_Differentiation::array, assert, Acts::detail::Grid< T, Axes >::at(), Acts::Cuda::copyToDevice(), Acts::Cuda::Details::countDublets(), Acts::Cuda::Details::findDublets(), Acts::Cuda::Details::findTriplets(), grid(), i, ambiguity_solver_full_chain::idx, Acts::Cuda::Info::instance(), Acts::Cuda::MemoryManager::instance(), Acts::Cuda::Details::SpacePoint::radius, Acts::Cuda::MemoryManager::reset(), Acts::Experimental::detail::BlueprintHelper::sort(), Acts::Cuda::Details::SpacePoint::varianceR, Acts::Cuda::Details::SpacePoint::varianceZ, Acts::Cuda::Details::SpacePoint::x, Acts::Cuda::Details::SpacePoint::y, and Acts::Cuda::Details::SpacePoint::z.
Referenced by main().
|
inlineprivate |
Private access to the logger
Definition at line 76 of file SeedFinder.hpp.
View newest version in sPHENIX GitHub at line 76 of file SeedFinder.hpp
References Acts::Cuda::SeedFinder< external_spacepoint_t >::m_logger.
void Acts::Cuda::SeedFinder< external_spacepoint_t >::setLogger | ( | std::unique_ptr< const Logger > | newLogger | ) |
set logging instance
[in] | newLogger | is the logging instance to be set |
Definition at line 247 of file SeedFinder.ipp.
View newest version in sPHENIX GitHub at line 247 of file SeedFinder.ipp
References m_logger.
|
private |
Configuration for the seed finder.
Definition at line 79 of file SeedFinder.hpp.
View newest version in sPHENIX GitHub at line 79 of file SeedFinder.hpp
Referenced by Acts::Cuda::SeedFinder< external_spacepoint_t >::SeedFinder().
|
private |
CUDA device identifier.
Definition at line 86 of file SeedFinder.hpp.
View newest version in sPHENIX GitHub at line 86 of file SeedFinder.hpp
Referenced by Acts::Cuda::SeedFinder< external_spacepoint_t >::SeedFinder().
|
private |
The logger object.
Definition at line 88 of file SeedFinder.hpp.
View newest version in sPHENIX GitHub at line 88 of file SeedFinder.hpp
Referenced by Acts::Cuda::SeedFinder< external_spacepoint_t >::logger().
|
private |
Configuration for the (host) seed filter.
Definition at line 82 of file SeedFinder.hpp.
View newest version in sPHENIX GitHub at line 82 of file SeedFinder.hpp
Referenced by Acts::Cuda::SeedFinder< external_spacepoint_t >::SeedFinder().
|
private |
Definition at line 80 of file SeedFinder.hpp.
View newest version in sPHENIX GitHub at line 80 of file SeedFinder.hpp
Referenced by Acts::Cuda::SeedFinder< external_spacepoint_t >::SeedFinder().
|
private |
Configuration for the (device) triplet filter.
Definition at line 84 of file SeedFinder.hpp.
View newest version in sPHENIX GitHub at line 84 of file SeedFinder.hpp