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