MUSIC
unknown
Analysis for the MUSIC active-target ionization chamber
Toggle main menu visibility
Loading...
Searching...
No Matches
GpuAccel.hpp
Go to the documentation of this file.
1
#ifndef GPU_ACCEL_HPP
2
#define GPU_ACCEL_HPP
3
4
#include "
Constants.hpp
"
5
#include <Rtypes.h>
6
#include <dlfcn.h>
7
#include <iostream>
8
#include <mutex>
9
21
class
GpuAccel
{
22
public
:
24
typedef
int (*
SortFunc
)(
void
*,
long
long);
25
40
static
Bool_t
Init
();
41
44
static
Bool_t
Available
();
45
49
static
SortFunc
GetSort
();
50
65
static
Bool_t
TryAcquireSortSlot
();
66
70
static
void
ReleaseSortSlot
();
71
};
72
73
#endif
Constants.hpp
The dataset configuration, and how it is layered.
GpuAccel
Runtime access to the CUDA timestamp-sort kernel.
Definition
GpuAccel.hpp:21
GpuAccel::TryAcquireSortSlot
static Bool_t TryAcquireSortSlot()
Claim one of the concurrent GPU sort slots.
Definition
GpuAccel.cpp:45
GpuAccel::Init
static Bool_t Init()
Load the GPU library and resolve the sort symbol.
Definition
GpuAccel.cpp:9
GpuAccel::ReleaseSortSlot
static void ReleaseSortSlot()
Give back a slot claimed by TryAcquireSortSlot().
Definition
GpuAccel.cpp:53
GpuAccel::GetSort
static SortFunc GetSort()
The resolved sort entry point.
Definition
GpuAccel.cpp:43
GpuAccel::SortFunc
int(* SortFunc)(void *, long long)
Signature of the sort entry point: buffer, element count, status.
Definition
GpuAccel.hpp:24
GpuAccel::Available
static Bool_t Available()
Whether the kernel loaded successfully.
Definition
GpuAccel.cpp:41
tooling
include
GpuAccel.hpp
Generated by
1.17.0