EBGeometry
Compact, header-only C++ library for fast evaluation of signed distance functions
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
EBGeometry::GPU::AlgorithmsDetail::BitonicPass< Key, Less > Struct Template Reference

bitonicSort(): one compare-exchange pass, one thread per pair. More...

#include <EBGeometry_GPUAlgorithms.hpp>

Public Member Functions

void operator() (const std::size_t a_t) const noexcept
 Pair a_t.
 

Public Attributes

Key * m_keys
 The keys.
 
Less m_less
 The order.
 
uint32_t m_k
 Size of the bitonic sequences being merged.
 
uint32_t m_j
 Distance between the two keys of a pair.
 

Detailed Description

template<class Key, class Less>
struct EBGeometry::GPU::AlgorithmsDetail::BitonicPass< Key, Less >

bitonicSort(): one compare-exchange pass, one thread per pair.

Template Parameters
KeyKey type.
LessStrict order on keys.

Member Function Documentation

◆ operator()()

template<class Key , class Less >
void EBGeometry::GPU::AlgorithmsDetail::BitonicPass< Key, Less >::operator() ( const std::size_t  a_t) const
inlinenoexcept

Pair a_t.

Parameters
[in]a_tPair index, below half the key count.

The documentation for this struct was generated from the following file: