Apache Mesos
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
src
slave
containerizer
mesos
isolators
gpu
components.hpp
Go to the documentation of this file.
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements. See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership. The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License. You may obtain a copy of the License at
8
//
9
// http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing, software
12
// distributed under the License is distributed on an "AS IS" BASIS,
13
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
// See the License for the specific language governing permissions and
15
// limitations under the License.
16
17
#ifndef __NVIDIA_GPU_COMPONENTS_HPP__
18
#define __NVIDIA_GPU_COMPONENTS_HPP__
19
20
#ifdef __linux__
21
#include "
slave/containerizer/mesos/isolators/gpu/allocator.hpp
"
22
#include "
slave/containerizer/mesos/isolators/gpu/volume.hpp
"
23
#endif
24
25
namespace
mesos {
26
namespace
internal {
27
namespace
slave {
28
29
// Defines the set of Nvidia components needed by containerizers.
30
//
31
// We provide this level of indirection in order to have single
32
// optional argument passed to containerizers and to avoid using
33
// OS #ifdefs in the containerizer signatures.
34
struct
NvidiaComponents
35
{
36
#ifdef __linux__
37
NvidiaComponents
(
38
const
NvidiaGpuAllocator
& _allocator,
39
const
NvidiaVolume
& _volume)
40
: allocator(_allocator),
41
volume(_volume) {}
42
43
NvidiaGpuAllocator
allocator;
44
NvidiaVolume
volume;
45
#endif
46
};
47
48
}
// namespace slave {
49
}
// namespace internal {
50
}
// namespace mesos {
51
52
#endif // __NVIDIA_GPU_COMPONENTS_HPP__
allocator.hpp
mesos::internal::slave::NvidiaGpuAllocator
Definition:
allocator.hpp:52
mesos::internal::slave::NvidiaComponents
Definition:
components.hpp:34
volume.hpp
mesos::internal::slave::NvidiaVolume
Definition:
volume.hpp:36
Generated by
1.8.5