Project
Loading...
Searching...
No Matches
o2::gpu::GPUCommonMath Class Reference

#include <GPUCommonMath.h>

Public Member Functions

 GPUd () static float2 MakeFloat2(float x
 
template<class T >
 GPUhd () static T Min(const T x
 
template<class T >
 GPUhd () static T Max(const T x
 
template<class T , class S , class R >
 GPUd () static T MinWithRef(T x
 
template<class T , class S , class R >
 GPUd () static T MaxWithRef(T x
 
template<class T , class S , class R >
 GPUd () static T MaxWithRef(T x
 
template<class T >
 GPUdi () static T Clamp(const T v
 
 GPUhdni () static float Sqrt(float x)
 
 GPUd () static float InvSqrt(float x)
 
template<class T >
 GPUhd () static T Abs(T x)
 
 GPUd () static float ASin(float x)
 
 GPUd () static float ACos(float x)
 
 GPUd () static float ATan(float x)
 
 GPUhd () static float ATan2(float y
 
 GPUd () static float Sin(float x)
 
 GPUd () static float Cos(float x)
 
 GPUhdni () static void SinCos(float x
 
 GPUhdni () static void SinCosd(double x
 
 GPUd () static float Tan(float x)
 
 GPUd () static float Pow(float x
 
 GPUd () static float Log(float x)
 
 GPUd () static float Exp(float x)
 
 GPUhdni () static float Copysign(float x
 
 GPUd () static const expr float TwoPi()
 
 GPUd () static const expr float Pi()
 
 GPUd () static float Round(float x)
 
 GPUd () static float Floor(float x)
 
 GPUd () static uint32_t Float2UIntReint(const float &x)
 
 GPUd () static uint32_t Float2UIntRn(float x)
 
 GPUd () static int32_t Float2IntRn(float x)
 
 GPUd () static float Modf(float x
 
 GPUd () static bool Finite(float x)
 
 GPUd () static uint32_t Clz(uint32_t val)
 
 GPUd () static uint32_t Popcount(uint32_t val)
 
 GPUhdni () static float Hypot(float x
 
 GPUhdni () static float Hypot(float x
 
 GPUhdni () static float Hypot(float x
 
template<typename T >
 GPUhd () static void Swap(T &a
 
template<class T >
 GPUdi () static T AtomicExch(GPUglobalref() GPUgeneric() GPUAtomic(T) *addr
 
template<class T >
 GPUdi () static bool AtomicCAS(GPUglobalref() GPUgeneric() GPUAtomic(T) *addr
 
template<class T >
 GPUdi () static T AtomicAdd(GPUglobalref() GPUgeneric() GPUAtomic(T) *addr
 
template<class T >
 GPUdi () static void AtomicMax(GPUglobalref() GPUgeneric() GPUAtomic(T) *addr
 
template<class T >
 GPUdi () static void AtomicMin(GPUglobalref() GPUgeneric() GPUAtomic(T) *addr
 
template<class T >
 GPUdi () static T AtomicExchShared(GPUsharedref() GPUgeneric() GPUAtomic(T) *addr
 
template<class T >
 GPUdi () static T AtomicAddShared(GPUsharedref() GPUgeneric() GPUAtomic(T) *addr
 
template<class T >
 GPUdi () static void AtomicMaxShared(GPUsharedref() GPUgeneric() GPUAtomic(T) *addr
 
template<class T >
 GPUdi () static void AtomicMinShared(GPUsharedref() GPUgeneric() GPUAtomic(T) *addr
 
 GPUd () static int32_t Mul24(int32_t a
 
 GPUd () static float FMulRZ(float a
 
template<int32_t I, class T >
 GPUd () const expr static T nextMultipleOf(T val)
 
template<typename... Args>
 GPUdi () static float Sum2(float w
 

Public Attributes

float y
 
const T y
 
y
 
T S refX
 
T S S refY
 
T S S Rr
 
T T z
 
T T T w
 
T T T S refX
 
T T T S S refY
 
T T T S S S refZ
 
T T T S S S S refW
 
T T T S S S S Rr
 
const T lo
 
const T const T hi
 
float x
 
float & s
 
float float & c
 
double & s
 
double double & c
 
float float z
 
float float float w
 
T & b
 
val
 
cmp
 
T T val
 
int32_t b
 
float b
 
Args args
 

Detailed Description

Definition at line 39 of file GPUCommonMath.h.

Member Function Documentation

◆ GPUd() [1/28]

template<int32_t I, class T >
o2::gpu::GPUCommonMath::GPUd ( ) const

◆ GPUd() [2/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [3/28]

o2::gpu::GPUCommonMath::GPUd ( ) const
inline

Definition at line 77 of file GPUCommonMath.h.

◆ GPUd() [4/28]

o2::gpu::GPUCommonMath::GPUd ( ) const
inline

Definition at line 76 of file GPUCommonMath.h.

◆ GPUd() [5/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [6/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [7/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [8/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [9/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [10/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [11/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [12/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [13/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [14/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [15/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [16/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [17/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [18/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [19/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [20/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [21/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [22/28]

template<class T , class S , class R >
o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [23/28]

template<class T , class S , class R >
o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [24/28]

template<class T , class S , class R >
o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [25/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [26/28]

o2::gpu::GPUCommonMath::GPUd ( ) const &

◆ GPUd() [27/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUd() [28/28]

o2::gpu::GPUCommonMath::GPUd ( )

◆ GPUdi() [1/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [2/11]

template<typename... Args>
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [3/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [4/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [5/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [6/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [7/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( ) const

◆ GPUdi() [8/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [9/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [10/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUdi() [11/11]

template<class T >
o2::gpu::GPUCommonMath::GPUdi ( )

◆ GPUhd() [1/5]

o2::gpu::GPUCommonMath::GPUhd ( )

◆ GPUhd() [2/5]

template<class T >
o2::gpu::GPUCommonMath::GPUhd ( )

◆ GPUhd() [3/5]

template<class T >
o2::gpu::GPUCommonMath::GPUhd ( ) const

◆ GPUhd() [4/5]

template<class T >
o2::gpu::GPUCommonMath::GPUhd ( ) const

◆ GPUhd() [5/5]

template<typename T >
o2::gpu::GPUCommonMath::GPUhd ( ) &

◆ GPUhdni() [1/7]

o2::gpu::GPUCommonMath::GPUhdni ( )

◆ GPUhdni() [2/7]

o2::gpu::GPUCommonMath::GPUhdni ( )

◆ GPUhdni() [3/7]

o2::gpu::GPUCommonMath::GPUhdni ( )

◆ GPUhdni() [4/7]

o2::gpu::GPUCommonMath::GPUhdni ( )

◆ GPUhdni() [5/7]

o2::gpu::GPUCommonMath::GPUhdni ( )

◆ GPUhdni() [6/7]

o2::gpu::GPUCommonMath::GPUhdni ( )

◆ GPUhdni() [7/7]

o2::gpu::GPUCommonMath::GPUhdni ( )

Member Data Documentation

◆ args

Args o2::gpu::GPUCommonMath::args
Initial value:
{
if constexpr (sizeof...(Args) == 0) {
return w * w;
} else {
return w * w + Sum2(args...);
}
return 0
GLubyte GLubyte GLubyte GLubyte w
Definition glcorearb.h:852

Definition at line 149 of file GPUCommonMath.h.

◆ b [1/3]

T& o2::gpu::GPUCommonMath::b

Definition at line 93 of file GPUCommonMath.h.

◆ b [2/3]

int32_t o2::gpu::GPUCommonMath::b

Definition at line 142 of file GPUCommonMath.h.

◆ b [3/3]

float o2::gpu::GPUCommonMath::b

Definition at line 143 of file GPUCommonMath.h.

◆ c [1/2]

float float& o2::gpu::GPUCommonMath::c

Definition at line 69 of file GPUCommonMath.h.

◆ c [2/2]

double double& o2::gpu::GPUCommonMath::c

Definition at line 70 of file GPUCommonMath.h.

◆ cmp

T o2::gpu::GPUCommonMath::cmp

Definition at line 102 of file GPUCommonMath.h.

◆ hi

const T const T o2::gpu::GPUCommonMath::hi
Initial value:
{
return Max(lo, Min(v, hi))
const GLdouble * v
Definition glcorearb.h:832

Definition at line 55 of file GPUCommonMath.h.

◆ lo

const T o2::gpu::GPUCommonMath::lo

Definition at line 55 of file GPUCommonMath.h.

◆ r [1/2]

T S S R & o2::gpu::GPUCommonMath::r

Definition at line 49 of file GPUCommonMath.h.

◆ r [2/2]

T T T S S S S R& o2::gpu::GPUCommonMath::r

Definition at line 53 of file GPUCommonMath.h.

◆ refW

T T T S S S S o2::gpu::GPUCommonMath::refW

Definition at line 53 of file GPUCommonMath.h.

◆ refX [1/2]

T S o2::gpu::GPUCommonMath::refX

Definition at line 49 of file GPUCommonMath.h.

◆ refX [2/2]

T T T S o2::gpu::GPUCommonMath::refX

Definition at line 53 of file GPUCommonMath.h.

◆ refY [1/2]

T S S o2::gpu::GPUCommonMath::refY

Definition at line 49 of file GPUCommonMath.h.

◆ refY [2/2]

T T T S S o2::gpu::GPUCommonMath::refY

Definition at line 53 of file GPUCommonMath.h.

◆ refZ

T T T S S S o2::gpu::GPUCommonMath::refZ

Definition at line 53 of file GPUCommonMath.h.

◆ s [1/2]

float& o2::gpu::GPUCommonMath::s

Definition at line 69 of file GPUCommonMath.h.

◆ s [2/2]

double& o2::gpu::GPUCommonMath::s

Definition at line 70 of file GPUCommonMath.h.

◆ val [1/2]

T o2::gpu::GPUCommonMath::val
Initial value:
{
return GPUCommonMath::AtomicExchInternal(addr, val)
GLuint GLfloat * val
Definition glcorearb.h:1582

Definition at line 96 of file GPUCommonMath.h.

◆ val [2/2]

T T o2::gpu::GPUCommonMath::val
Initial value:
{
return GPUCommonMath::AtomicCASInternal(addr, cmp, val)

Definition at line 102 of file GPUCommonMath.h.

◆ w [1/2]

T T T o2::gpu::GPUCommonMath::w

Definition at line 53 of file GPUCommonMath.h.

◆ w [2/2]

float float float o2::gpu::GPUCommonMath::w

Definition at line 90 of file GPUCommonMath.h.

◆ x

float o2::gpu::GPUCommonMath::x

Definition at line 66 of file GPUCommonMath.h.

◆ y [1/3]

float o2::gpu::GPUCommonMath::y

Definition at line 42 of file GPUCommonMath.h.

◆ y [2/3]

const T o2::gpu::GPUCommonMath::y

Definition at line 45 of file GPUCommonMath.h.

◆ y [3/3]

T o2::gpu::GPUCommonMath::y

Definition at line 49 of file GPUCommonMath.h.

◆ z [1/2]

float float o2::gpu::GPUCommonMath::z

Definition at line 53 of file GPUCommonMath.h.

◆ z [2/2]

float float o2::gpu::GPUCommonMath::z

Definition at line 89 of file GPUCommonMath.h.


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