Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
scan_exclusive_sum_in_place.cpp File Reference

Implementation of the in-place exclusive scan primitive. More...

Include dependency graph for scan_exclusive_sum_in_place.cpp:

Go to the source code of this file.

Classes

struct  shamalgs::primitives::impl::StdScan
 std::exclusive_scan on a host copy of the buffer (portable fallback) More...

Namespaces

namespace  shamalgs
 namespace to contain everything implemented by shamalgs
namespace  shamalgs::primitives
 namespace for primitive algorithm (e.g. sort, scan, reductions, ...)
namespace  shamalgs::primitives::impl
 namespace to control implementation behavior

Functions

std::vector< std::string > shamalgs::primitives::impl::get_default_impl_list_scan_exclusive_sum_in_place ()
 Get list of available scan_exclusive_sum_in_place implementations.
std::string shamalgs::primitives::impl::get_current_impl_scan_exclusive_sum_in_place ()
 Get the current implementation for scan_exclusive_sum_in_place.
bool shamalgs::primitives::impl::is_impl_set_scan_exclusive_sum_in_place ()
 Check if an implementation has been selected for scan_exclusive_sum_in_place.
void shamalgs::primitives::impl::set_impl_scan_exclusive_sum_in_place (const std::string &impl)
 Set the implementation for scan_exclusive_sum_in_place, from a config json string.
void shamalgs::primitives::impl::autoselect_impl_scan_exclusive_sum_in_place (const sham::DeviceScheduler_ptr &dev_sched)
 Select the default implementation for scan_exclusive_sum_in_place.
template<class T>
void shamalgs::primitives::scan_exclusive_sum_in_place (sham::DeviceBuffer< T > &buf1, u32 len)
 Compute exclusive prefix sum in-place on a device buffer.
template void shamalgs::primitives::scan_exclusive_sum_in_place< u32 > (sham::DeviceBuffer< u32 > &buf1, u32 len)

Variables

shamalgs::ImplVariantGlobal< StdScan > shamalgs::primitives::impl::scan_exclusive_sum_in_place_impl

Detailed Description

Implementation of the in-place exclusive scan primitive.

Author
Anass Serhani (anass.nosp@m..ser.nosp@m.hani@.nosp@m.cnrs.nosp@m..fr)
Timothée David–Cléris (tim.s.nosp@m.hamr.nosp@m.ock@p.nosp@m.roto.nosp@m.n.me)

Definition in file scan_exclusive_sum_in_place.cpp.