EBGeometry
Compact, header-only C++ library for fast evaluation of signed distance functions
Loading...
Searching...
No Matches
Classes
EBGeometry::GPU::AlgorithmsDetail Namespace Reference

The functors behind boundingBox() and bitonicSort(). More...

Classes

struct  BitonicPass
 bitonicSort(): one compare-exchange pass, one thread per pair. More...
 
struct  ChunkBox
 boundingBox(), pass 1: the box of each chunk of points. More...
 
struct  ChunkSums
 exclusiveScan(), pass 1: the sum of each chunk of values. More...
 
struct  FromPointer
 boundingBox()'s source for an array of points. More...
 
struct  MergeChunks
 boundingBox(), pass 2: one thread merges the chunk boxes into chunk 0's. One thread is enough at the sizes the builds see (a few thousand chunks); a cloud near the 2^31-point limit would want a tree of merges. More...
 
struct  ScanChunks
 exclusiveScan(), pass 3: each chunk's values replaced by their exclusive prefix sums. More...
 
struct  ScanSums
 exclusiveScan(), pass 2: one thread turns the chunk sums into each chunk's offset, and the total after them. More...
 

Detailed Description

The functors behind boundingBox() and bitonicSort().

Internal; not part of the public API.