MagmaDNN
1.0
c++NeuralNetworkFramework
types.h
Go to the documentation of this file.
1
9
#pragma once
10
11
#include <vector>
// for tensor_filler_t
12
#if defined(_HAS_CUDA_)
13
#include "cudnn.h"
14
#include "cublas_v2.h"
15
#endif
16
17
namespace
magmadnn
{
18
19
typedef
enum
memory_t {
20
HOST,
21
#if defined(_HAS_CUDA_)
22
DEVICE,
23
MANAGED,
24
CUDA_MANAGED
25
#endif
26
} memory_t;
27
28
typedef
unsigned
int
device_t;
29
typedef
unsigned
int
magmadnn_error_t;
30
31
32
33
struct
magmadnn_settings_t
{
34
unsigned
int
n_devices;
35
#if defined(_HAS_CUDA_)
36
cudnnHandle_t cudnn_handle;
37
cublasHandle_t cublas_handle;
38
#endif
39
};
40
namespace
internal {
41
extern
magmadnn_settings_t
*MAGMADNN_SETTINGS;
/* make this available to everything */
42
}
// namespace internal
43
44
47
enum
tensor_fill_t
{
48
UNIFORM,
49
GLOROT,
50
MASK,
51
CONSTANT,
52
ZERO,
53
ONE,
54
DIAGONAL,
55
IDENTITY,
56
NONE
57
};
58
63
template
<
typename
T>
64
struct
tensor_filler_t
{
65
tensor_fill_t
fill_type;
66
std::vector<T> values;
67
};
68
69
}
// namespace magmadnn
magmadnn::magmadnn_settings_t
Definition:
types.h:33
magmadnn::tensor_filler_t
Definition:
types.h:64
magmadnn
Definition:
addop.cpp:11
magmadnn::tensor_fill_t
tensor_fill_t
Definition:
types.h:47
include
types.h
Generated by
1.8.13