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 
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 
48  UNIFORM,
49  GLOROT,
50  MASK,
51  CONSTANT,
52  ZERO,
53  ONE,
54  DIAGONAL,
55  IDENTITY,
56  NONE
57 };
58 
63 template <typename T>
65  tensor_fill_t fill_type;
66  std::vector<T> values;
67 };
68 
69 } // namespace magmadnn
Definition: types.h:33
Definition: types.h:64
Definition: addop.cpp:11
tensor_fill_t
Definition: types.h:47