Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
x
z
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
$
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
v
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
GitLab
LXR
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
Control
AthCUDA
AthCUDAInterfaces
AthCUDAInterfaces
IStreamPoolSvc.h
Go to the documentation of this file.
1
// Dear emacs, this is -*- c++ -*-
2
//
3
// Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
4
//
5
#ifndef ATHCUDAINTERFACES_ISTREAMPOOLSVC_H
6
#define ATHCUDAINTERFACES_ISTREAMPOOLSVC_H
7
8
// Local include(s).
9
#include "
AthCUDAInterfaces/StreamHolder.h
"
10
11
// Gaudi include(s).
12
#include "GaudiKernel/IService.h"
13
14
namespace
AthCUDA
{
15
24
class
IStreamPoolSvc
:
public
virtual
IService {
25
27
friend
class
StreamHolder
;
28
29
public
:
31
DeclareInterfaceID
(
AthCUDA::IStreamPoolSvc
, 1, 0 );
32
41
virtual
bool
isEmpty
()
const
= 0;
42
50
virtual
StreamHolder
getAvailableStream
() = 0;
51
52
protected
:
60
virtual
void
yieldStream
(
StreamHolder
&
stream
) = 0;
61
62
};
// class IStreamPoolSvc
63
64
}
// namespace AthCUDA
65
66
#endif // ATHCUDAINTERFACES_ISTREAMPOOLSVC_H
AthCUDA::IStreamPoolSvc::DeclareInterfaceID
DeclareInterfaceID(AthCUDA::IStreamPoolSvc, 1, 0)
Declare the interface ID.
AthCUDA::IStreamPoolSvc
Interface for a CUDA stream pool service.
Definition:
IStreamPoolSvc.h:24
AthenaPoolTestWrite.stream
string stream
Definition:
AthenaPoolTestWrite.py:12
AthCUDA::IStreamPoolSvc::isEmpty
virtual bool isEmpty() const =0
Check whether any streams are available for the job.
AthCUDA
Definition:
Info.h:14
AthCUDA::IStreamPoolSvc::getAvailableStream
virtual StreamHolder getAvailableStream()=0
Get a stream from the pool.
StreamHolder.h
AthCUDA::StreamHolder
Helper class for handling CUDA streams.
Definition:
StreamHolder.h:24
AthCUDA::IStreamPoolSvc::yieldStream
virtual void yieldStream(StreamHolder &stream)=0
Put a given stream back into the pool.
Generated on Sun Apr 20 2025 21:12:26 for ATLAS Offline Software by
1.8.18