Namespaces | |
config | |
detail | |
impl | |
traits | |
Classes | |
class | CachingAllocator |
struct | CopyToDevice |
struct | CopyToDevice< cms::alpakatest::AlpakaESTestDataB< alpaka_common::DevHost > > |
struct | CopyToDevice< PortableHostCollection< TLayout > > |
struct | CopyToHost |
struct | CopyToHost< PortableDeviceCollection< TLayout, TDevice > > |
class | elements_with_stride |
class | elements_with_stride_nd |
class | EventCache |
class | QueueCache |
struct | requires_single_thread_per_block |
class | ScopedContextAcquire |
class | ScopedContextAnalyze |
class | ScopedContextProduce |
class | ScopedContextTask |
Typedefs | |
template<typename TDev , typename T , typename = std::enable_if_t<alpaka::isDevice<TDev>>> | |
using | const_device_buffer = alpaka::ViewConst< device_buffer< TDev, T > > |
template<typename T > | |
using | const_host_buffer = alpaka::ViewConst< host_buffer< T > > |
template<typename TDev , typename T , typename = std::enable_if_t<alpaka::isDevice<TDev>>> | |
using | device_buffer = typename detail::buffer_type< TDev, T >::type |
template<typename TDev , typename T , typename = std::enable_if_t<alpaka::isDevice<TDev>>> | |
using | device_view = typename detail::view_type< TDev, T >::type |
template<typename T > | |
using | host_buffer = typename detail::buffer_type< DevHost, T >::type |
template<typename T > | |
using | host_view = typename detail::view_type< DevHost, T >::type |
Enumerations | |
enum | AllocatorPolicy { AllocatorPolicy::Synchronous = 0, AllocatorPolicy::Asynchronous = 1, AllocatorPolicy::Caching = 2 } |
Functions | |
template<typename TElem , typename TIdx , typename TExtent , typename TQueue , typename TDev , typename = std::enable_if_t<alpaka::isDevice<TDev> and alpaka::isQueue<TQueue>>> | |
ALPAKA_FN_HOST auto | allocCachedBuf (TDev const &dev, TQueue queue, TExtent const &extent=TExtent()) |
template<typename TPlatform , typename = std::enable_if_t<alpaka::isPlatform<TPlatform>>> | |
alpaka::Dev< TPlatform > const & | chooseDevice (edm::StreamID id) |
template<typename TPlatform , typename = std::enable_if_t<alpaka::isPlatform<TPlatform>>> | |
std::vector< alpaka::Dev< TPlatform > > const & | devices () |
constexpr Idx | divide_up_by (Idx value, Idx divisor) |
template<typename TDev , typename TQueue , typename = std::enable_if_t<alpaka::isDevice<TDev> and alpaka::isQueue<TQueue>>> | |
CachingAllocator< TDev, TQueue > & | getDeviceCachingAllocator (TDev const &device) |
template<typename Event > | |
EventCache< Event > & | getEventCache () |
template<typename TQueue , typename = std::enable_if_t<alpaka::isQueue<TQueue>>> | |
CachingAllocator< alpaka_common::DevHost, TQueue > & | getHostCachingAllocator () |
template<typename Queue > | |
QueueCache< Queue > & | getQueueCache () |
alpaka::DevCpu const & | host () |
template<typename T , typename TDev > | |
std::enable_if_t< alpaka::isDevice< TDev > and not std::is_array_v< T >, device_buffer< TDev, T > > | make_device_buffer (TDev const &device) |
template<typename T , typename TDev > | |
std::enable_if_t< alpaka::isDevice< TDev > and cms::is_unbounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, device_buffer< TDev, T > > | make_device_buffer (TDev const &device, Extent extent) |
template<typename T , typename TDev > | |
std::enable_if_t< alpaka::isDevice< TDev > and cms::is_bounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, device_buffer< TDev, T > > | make_device_buffer (TDev const &device) |
template<typename T , typename TQueue > | |
std::enable_if_t< alpaka::isQueue< TQueue > and not std::is_array_v< T >, device_buffer< alpaka::Dev< TQueue >, T > > | make_device_buffer (TQueue const &queue) |
template<typename T , typename TQueue > | |
std::enable_if_t< alpaka::isQueue< TQueue > and cms::is_unbounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, device_buffer< alpaka::Dev< TQueue >, T > > | make_device_buffer (TQueue const &queue, Extent extent) |
template<typename T , typename TQueue > | |
std::enable_if_t< alpaka::isQueue< TQueue > and cms::is_bounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, device_buffer< alpaka::Dev< TQueue >, T > > | make_device_buffer (TQueue const &queue) |
template<typename T , typename TDev > | |
std::enable_if_t< not std::is_array_v< T >, device_view< TDev, T > > | make_device_view (TDev const &device, T &data) |
template<typename T , typename TDev > | |
device_view< TDev, T[]> | make_device_view (TDev const &device, T *data, Extent extent) |
template<typename T , typename TDev > | |
std::enable_if_t< cms::is_unbounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, device_view< TDev, T > > | make_device_view (TDev const &device, T &data, Extent extent) |
template<typename T , typename TDev > | |
std::enable_if_t< cms::is_bounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, device_view< TDev, T > > | make_device_view (TDev const &device, T &data) |
template<typename T > | |
std::enable_if_t< not std::is_array_v< T >, host_buffer< T > > | make_host_buffer () |
template<typename T > | |
std::enable_if_t< cms::is_unbounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, host_buffer< T > > | make_host_buffer (Extent extent) |
template<typename T > | |
std::enable_if_t< cms::is_bounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, host_buffer< T > > | make_host_buffer () |
template<typename T , typename TPlatform > | |
std::enable_if_t< not std::is_array_v< T >, host_buffer< T > > | make_host_buffer () |
template<typename T , typename TPlatform > | |
std::enable_if_t< cms::is_unbounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, host_buffer< T > > | make_host_buffer (Extent extent) |
template<typename T , typename TPlatform > | |
std::enable_if_t< cms::is_bounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, host_buffer< T > > | make_host_buffer () |
template<typename T , typename TQueue > | |
std::enable_if_t< alpaka::isQueue< TQueue > and not std::is_array_v< T >, host_buffer< T > > | make_host_buffer (TQueue const &queue) |
template<typename T , typename TQueue > | |
std::enable_if_t< alpaka::isQueue< TQueue > and cms::is_unbounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, host_buffer< T > > | make_host_buffer (TQueue const &queue, Extent extent) |
template<typename T , typename TQueue > | |
std::enable_if_t< alpaka::isQueue< TQueue > and cms::is_bounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, host_buffer< T > > | make_host_buffer (TQueue const &queue) |
template<typename T > | |
std::enable_if_t< not std::is_array_v< T >, host_view< T > > | make_host_view (T &data) |
template<typename T > | |
host_view< T[]> | make_host_view (T *data, Extent extent) |
template<typename T > | |
std::enable_if_t< cms::is_unbounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, host_view< T > > | make_host_view (T &data, Extent extent) |
template<typename T > | |
std::enable_if_t< cms::is_bounded_array_v< T > and not std::is_array_v< std::remove_extent_t< T > >, host_view< T > > | make_host_view (T &data) |
template<typename TAcc , typename = std::enable_if_t<alpaka::isAccelerator<TAcc> and alpaka::Dim<TAcc>::value == 1>> | |
WorkDiv< Dim1D > | make_workdiv (Idx blocks, Idx elements) |
template<typename TAcc , typename = std::enable_if_t<alpaka::isAccelerator<TAcc>>> | |
WorkDiv< alpaka::Dim< TAcc > > | make_workdiv (const Vec< alpaka::Dim< TAcc >> &blocks, const Vec< alpaka::Dim< TAcc >> &elements) |
void | module_backend_config (edm::ConfigurationDescriptions &iDesc) |
constexpr Idx | round_up_by (Idx value, Idx divisor) |
Variables | |
template<typename TDev , typename = std::enable_if_t<alpaka::isDevice<TDev>>> | |
constexpr AllocatorPolicy | allocator_policy = AllocatorPolicy::Synchronous |
template<typename TAcc , typename = std::enable_if_t<alpaka::isAccelerator<TAcc>>> | |
constexpr bool | requires_single_thread_per_block_v = requires_single_thread_per_block<TAcc>::value |
using cms::alpakatools::const_device_buffer = typedef alpaka::ViewConst<device_buffer<TDev, T> > |
using cms::alpakatools::const_host_buffer = typedef alpaka::ViewConst<host_buffer<T> > |
using cms::alpakatools::device_buffer = typedef typename detail::buffer_type<TDev, T>::type |
using cms::alpakatools::device_view = typedef typename detail::view_type<TDev, T>::type |
using cms::alpakatools::host_buffer = typedef typename detail::buffer_type<DevHost, T>::type |
using cms::alpakatools::host_view = typedef typename detail::view_type<DevHost, T>::type |
|
strong |
Enumerator | |
---|---|
Synchronous | |
Asynchronous | |
Caching |
Definition at line 14 of file AllocatorPolicy.h.
ALPAKA_FN_HOST auto cms::alpakatools::allocCachedBuf | ( | TDev const & | dev, |
TQueue | queue, | ||
TExtent const & | extent = TExtent() |
||
) |
Definition at line 197 of file CachedBufAlloc.h.
References createBeamHaloJobs::queue.
alpaka::Dev<TPlatform> const& cms::alpakatools::chooseDevice | ( | edm::StreamID | id | ) |
Definition at line 16 of file chooseDevice.h.
References cms::Exception::addContext(), and devices().
|
inline |
Definition at line 35 of file devices.h.
Referenced by cms::alpakatools::detail::allocate_device_allocators(), ALPAKA_ACCELERATOR_NAMESPACE::AlpakaService::AlpakaService(), SiStripFedCablingBuilderFromDb::buildFecCabling(), ALPAKA_ACCELERATOR_NAMESPACE::detail::chooseDevice(), chooseDevice(), FastFedCablingHistosUsingDb::connections(), cms::alpakatools::detail::enumerate_devices(), getDeviceCachingAllocator(), SiStripConfigDb::printDeviceDescriptions(), ALPAKA_ACCELERATOR_NAMESPACE::ESProducer::setWhatProducedDevice(), cms::cudatest::testDevices(), cms::rocmtest::testDevices(), ApvTimingHistosUsingDb::update(), OptoScanHistosUsingDb::update(), VpspScanHistosUsingDb::update(), LatencyHistosUsingDb::update(), CalibrationHistosUsingDb::update(), FineDelayHistosUsingDb::update(), VpspScanHistosUsingDb::uploadConfigurations(), ApvTimingHistosUsingDb::uploadConfigurations(), OptoScanHistosUsingDb::uploadConfigurations(), LatencyHistosUsingDb::uploadConfigurations(), CalibrationHistosUsingDb::uploadConfigurations(), and FineDelayHistosUsingDb::uploadConfigurations().
Definition at line 19 of file workdivision.h.
Referenced by ALPAKA_ACCELERATOR_NAMESPACE::TestAlgo::fill().
|
inline |
Definition at line 78 of file getDeviceCachingAllocator.h.
References cms::cuda::assert(), CMS_THREAD_SAFE, devices(), and findQualityFiles::size.
EventCache<Event>& cms::alpakatools::getEventCache | ( | ) |
Definition at line 91 of file EventCache.h.
References utilities::cache(), and CMS_THREAD_SAFE.
|
inline |
Definition at line 16 of file getHostCachingAllocator.h.
References cms::alpakatools::config::binGrowth, CMS_THREAD_SAFE, host(), cms::alpakatools::config::maxBin, cms::alpakatools::config::maxCachedBytes, cms::alpakatools::config::maxCachedFraction, and cms::alpakatools::config::minBin.
QueueCache<Queue>& cms::alpakatools::getQueueCache | ( | ) |
Definition at line 64 of file QueueCache.h.
References utilities::cache(), and CMS_THREAD_SAFE.
|
inline |
Definition at line 24 of file host.h.
References cms::alpakatools::detail::enumerate_host().
Referenced by cms::alpakatools::detail::enumerate_host(), getHostCachingAllocator(), make_host_buffer(), make_host_view(), ALPAKA_ACCELERATOR_NAMESPACE::TestAlpakaESProducerA::produce(), ALPAKA_ACCELERATOR_NAMESPACE::TestAlpakaESProducerC::produce(), and PortableHostCollection< TestSoA >::ROOTReadStreamer().
std::enable_if_t<alpaka::isDevice<TDev> and not std::is_array_v<T>, device_buffer<TDev, T> > cms::alpakatools::make_device_buffer | ( | TDev const & | device | ) |
std::enable_if_t<alpaka::isDevice<TDev> and cms::is_unbounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, device_buffer<TDev, T> > cms::alpakatools::make_device_buffer | ( | TDev const & | device, |
Extent | extent | ||
) |
std::enable_if_t<alpaka::isDevice<TDev> and cms::is_bounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, device_buffer<TDev, T> > cms::alpakatools::make_device_buffer | ( | TDev const & | device | ) |
std::enable_if_t<alpaka::isQueue<TQueue> and not std::is_array_v<T>, device_buffer<alpaka::Dev<TQueue>, T> > cms::alpakatools::make_device_buffer | ( | TQueue const & | queue | ) |
Definition at line 202 of file memory.h.
References allocator_policy, Asynchronous, Caching, createBeamHaloJobs::queue, and Synchronous.
std::enable_if_t<alpaka::isQueue<TQueue> and cms::is_unbounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, device_buffer<alpaka::Dev<TQueue>, T> > cms::alpakatools::make_device_buffer | ( | TQueue const & | queue, |
Extent | extent | ||
) |
Definition at line 218 of file memory.h.
References allocator_policy, Asynchronous, Caching, createBeamHaloJobs::queue, and Synchronous.
std::enable_if_t<alpaka::isQueue<TQueue> and cms::is_bounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, device_buffer<alpaka::Dev<TQueue>, T> > cms::alpakatools::make_device_buffer | ( | TQueue const & | queue | ) |
Definition at line 234 of file memory.h.
References allocator_policy, Asynchronous, Caching, createBeamHaloJobs::queue, and Synchronous.
std::enable_if_t<not std::is_array_v<T>, device_view<TDev, T> > cms::alpakatools::make_device_view | ( | TDev const & | device, |
T & | data | ||
) |
device_view<TDev, T[]> cms::alpakatools::make_device_view | ( | TDev const & | device, |
T * | data, | ||
Extent | extent | ||
) |
std::enable_if_t<cms::is_unbounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, device_view<TDev, T> > cms::alpakatools::make_device_view | ( | TDev const & | device, |
T & | data, | ||
Extent | extent | ||
) |
std::enable_if_t<cms::is_bounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, device_view<TDev, T> > cms::alpakatools::make_device_view | ( | TDev const & | device, |
T & | data | ||
) |
std::enable_if_t<not std::is_array_v<T>, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | ) |
std::enable_if_t<cms::is_unbounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | Extent | extent | ) |
std::enable_if_t<cms::is_bounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | ) |
std::enable_if_t<not std::is_array_v<T>, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | ) |
std::enable_if_t<cms::is_unbounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | Extent | extent | ) |
std::enable_if_t<cms::is_bounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | ) |
std::enable_if_t<alpaka::isQueue<TQueue> and not std::is_array_v<T>, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | TQueue const & | queue | ) |
Definition at line 104 of file memory.h.
References allocator_policy, Caching, host(), and createBeamHaloJobs::queue.
std::enable_if_t<alpaka::isQueue<TQueue> and cms::is_unbounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | TQueue const & | queue, |
Extent | extent | ||
) |
Definition at line 117 of file memory.h.
References allocator_policy, Caching, host(), and createBeamHaloJobs::queue.
std::enable_if_t<alpaka::isQueue<TQueue> and cms::is_bounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, host_buffer<T> > cms::alpakatools::make_host_buffer | ( | TQueue const & | queue | ) |
Definition at line 130 of file memory.h.
References allocator_policy, Caching, host(), and createBeamHaloJobs::queue.
std::enable_if_t<not std::is_array_v<T>, host_view<T> > cms::alpakatools::make_host_view | ( | T & | data | ) |
std::enable_if_t<cms::is_unbounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, host_view<T> > cms::alpakatools::make_host_view | ( | T & | data, |
Extent | extent | ||
) |
std::enable_if_t<cms::is_bounded_array_v<T> and not std::is_array_v<std::remove_extent_t<T> >, host_view<T> > cms::alpakatools::make_host_view | ( | T & | data | ) |
|
inline |
Definition at line 46 of file workdivision.h.
References gather_cfg::blocks, and bookConverter::elements.
|
inline |
Definition at line 62 of file workdivision.h.
References gather_cfg::blocks, and bookConverter::elements.
void cms::alpakatools::module_backend_config | ( | edm::ConfigurationDescriptions & | iDesc | ) |
Definition at line 13 of file module_backend_config.cc.
References edm::ParameterSetDescription::addUntracked(), edm::ConfigurationDescriptions::defaultDescription(), edm::ParameterSetDescription::isLabelUnused(), kComment, AlCaHLTBitMon_QueryRunRegistry::string, and findQualityFiles::v.
Referenced by ALPAKA_ACCELERATOR_NAMESPACE::ESProducer::prevalidate(), and ALPAKA_ACCELERATOR_NAMESPACE::ProducerBase< edm::global::EDProducer, Args... >::prevalidate().
Definition at line 16 of file workdivision.h.
|
inline |
Definition at line 17 of file AllocatorPolicy.h.
Referenced by make_device_buffer(), and make_host_buffer().
|
inline |
Definition at line 42 of file workdivision.h.