ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigAccel
TrigInDetCUDA
src
SeedMakingWorkCuda.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRIGINDETCUDA_SEEDMAKINGWORKCUDA_H
6
#define TRIGINDETCUDA_SEEDMAKINGWORKCUDA_H
7
8
9
#include "
TrigAccelEvent/Work.h
"
//base class
10
#include "
CommonStructures.h
"
//for WorkTimeStamp
11
12
#include <cstdio>
// for printf
13
#include <memory>
// for shared_ptr
14
15
class
SeedMakingDeviceContext
;
16
class
SeedMakingManagedDeviceContext
;
17
18
class
SeedMakingWorkCuda
:
public
TrigAccel::Work
{
19
20
public
:
21
SeedMakingWorkCuda
(
unsigned
int
,
SeedMakingDeviceContext
*, std::shared_ptr<TrigAccel::OffloadBuffer>,
22
WorkTimeStampQueue
*);
23
~SeedMakingWorkCuda
();
24
std::shared_ptr<TrigAccel::OffloadBuffer>
getOutput
();
25
bool
run
();
26
unsigned
int
getId
()
const
{
27
return
m_workId
;
28
}
29
30
private
:
31
32
inline
void
checkError
()
const
{
33
cudaError_t
error
= cudaGetLastError();
34
if
(
error
!= cudaSuccess) {
35
printf(
"CUDA error: %s\n"
, cudaGetErrorString(
error
));
36
exit(-1);
37
}
38
};
39
40
unsigned
int
m_workId
{};
41
SeedMakingDeviceContext
*
m_context
{};
42
std::shared_ptr<TrigAccel::OffloadBuffer>
m_input
,
m_output
;
43
WorkTimeStampQueue
*
m_timeLine
{};
44
45
float
m_CovMS
{},
m_ptCoeff
{},
m_minPt2
{},
m_ptCoeff2
{},
m_maxD0
{};
46
};
47
48
class
SeedMakingWorkCudaManaged
:
public
TrigAccel::Work
{
49
50
public
:
51
SeedMakingWorkCudaManaged
(
unsigned
int
,
SeedMakingManagedDeviceContext
*, std::shared_ptr<TrigAccel::OffloadBuffer>,
52
WorkTimeStampQueue
*);
53
~SeedMakingWorkCudaManaged
();
54
std::shared_ptr<TrigAccel::OffloadBuffer>
getOutput
();
55
bool
run
();
56
unsigned
int
getId
()
const
{
57
return
m_workId
;
58
}
59
60
private
:
61
62
inline
void
checkError
()
const
{
63
cudaError_t
error
= cudaGetLastError();
64
if
(
error
!= cudaSuccess) {
65
printf(
"CUDA error: %s\n"
, cudaGetErrorString(
error
));
66
exit(-1);
67
}
68
};
69
70
unsigned
int
m_workId
{};
71
SeedMakingManagedDeviceContext
*
m_context
{};
72
std::shared_ptr<TrigAccel::OffloadBuffer>
m_input
,
m_output
;
73
WorkTimeStampQueue
*
m_timeLine
{};
74
75
float
m_CovMS
{},
m_ptCoeff
{},
m_minPt2
{},
m_ptCoeff2
{},
m_maxD0
{};
76
};
77
78
#endif
CommonStructures.h
Work.h
SeedMakingWorkCudaManaged::checkError
void checkError() const
Definition
SeedMakingWorkCuda.h:62
SeedMakingWorkCudaManaged::m_workId
unsigned int m_workId
Definition
SeedMakingWorkCuda.h:70
SeedMakingWorkCudaManaged::m_timeLine
WorkTimeStampQueue * m_timeLine
Definition
SeedMakingWorkCuda.h:73
SeedMakingWorkCudaManaged::m_ptCoeff2
float m_ptCoeff2
Definition
SeedMakingWorkCuda.h:75
SeedMakingWorkCudaManaged::m_output
std::shared_ptr< TrigAccel::OffloadBuffer > m_output
Definition
SeedMakingWorkCuda.h:72
SeedMakingWorkCudaManaged::m_ptCoeff
float m_ptCoeff
Definition
SeedMakingWorkCuda.h:75
SeedMakingWorkCudaManaged::~SeedMakingWorkCudaManaged
~SeedMakingWorkCudaManaged()
SeedMakingWorkCudaManaged::getId
unsigned int getId() const
Definition
SeedMakingWorkCuda.h:56
SeedMakingWorkCudaManaged::m_maxD0
float m_maxD0
Definition
SeedMakingWorkCuda.h:75
SeedMakingWorkCudaManaged::run
bool run()
SeedMakingWorkCudaManaged::m_input
std::shared_ptr< TrigAccel::OffloadBuffer > m_input
Definition
SeedMakingWorkCuda.h:72
SeedMakingWorkCudaManaged::m_CovMS
float m_CovMS
Definition
SeedMakingWorkCuda.h:75
SeedMakingWorkCudaManaged::m_minPt2
float m_minPt2
Definition
SeedMakingWorkCuda.h:75
SeedMakingWorkCudaManaged::m_context
SeedMakingManagedDeviceContext * m_context
Definition
SeedMakingWorkCuda.h:71
SeedMakingWorkCudaManaged::SeedMakingWorkCudaManaged
SeedMakingWorkCudaManaged(unsigned int, SeedMakingManagedDeviceContext *, std::shared_ptr< TrigAccel::OffloadBuffer >, WorkTimeStampQueue *)
SeedMakingWorkCudaManaged::getOutput
std::shared_ptr< TrigAccel::OffloadBuffer > getOutput()
SeedMakingWorkCuda::m_input
std::shared_ptr< TrigAccel::OffloadBuffer > m_input
Definition
SeedMakingWorkCuda.h:42
SeedMakingWorkCuda::m_output
std::shared_ptr< TrigAccel::OffloadBuffer > m_output
Definition
SeedMakingWorkCuda.h:42
SeedMakingWorkCuda::m_CovMS
float m_CovMS
Definition
SeedMakingWorkCuda.h:45
SeedMakingWorkCuda::m_context
SeedMakingDeviceContext * m_context
Definition
SeedMakingWorkCuda.h:41
SeedMakingWorkCuda::m_maxD0
float m_maxD0
Definition
SeedMakingWorkCuda.h:45
SeedMakingWorkCuda::~SeedMakingWorkCuda
~SeedMakingWorkCuda()
SeedMakingWorkCuda::m_ptCoeff2
float m_ptCoeff2
Definition
SeedMakingWorkCuda.h:45
SeedMakingWorkCuda::m_minPt2
float m_minPt2
Definition
SeedMakingWorkCuda.h:45
SeedMakingWorkCuda::SeedMakingWorkCuda
SeedMakingWorkCuda(unsigned int, SeedMakingDeviceContext *, std::shared_ptr< TrigAccel::OffloadBuffer >, WorkTimeStampQueue *)
SeedMakingWorkCuda::run
bool run()
SeedMakingWorkCuda::m_timeLine
WorkTimeStampQueue * m_timeLine
Definition
SeedMakingWorkCuda.h:43
SeedMakingWorkCuda::getOutput
std::shared_ptr< TrigAccel::OffloadBuffer > getOutput()
SeedMakingWorkCuda::m_workId
unsigned int m_workId
Definition
SeedMakingWorkCuda.h:40
SeedMakingWorkCuda::m_ptCoeff
float m_ptCoeff
Definition
SeedMakingWorkCuda.h:45
SeedMakingWorkCuda::getId
unsigned int getId() const
Definition
SeedMakingWorkCuda.h:26
SeedMakingWorkCuda::checkError
void checkError() const
Definition
SeedMakingWorkCuda.h:32
TrigAccel::Work
Definition
Work.h:14
WorkTimeStampQueue
Definition
CommonStructures.h:30
error
Definition
IImpactPoint3dEstimator.h:72
SeedMakingDeviceContext
Definition
device_context.h:18
SeedMakingManagedDeviceContext
Definition
device_context.h:46
Generated on
for ATLAS Offline Software by
1.17.0