Apache SINGA
A distributed deep learning platform .
 All Classes Namespaces Files Functions Variables Typedefs Macros
Classes | Namespaces | Macros | Typedefs | Functions | Variables
tensor_base.h File Reference

definitions of base types, macros functions More...

#include <cmath>
#include <cstdio>
#include <cfloat>
#include <climits>
#include <algorithm>
#include <mkl.h>
#include <mkl_cblas.h>
#include <mkl_vsl.h>
#include <mkl_vsl_functions.h>
#include <cublas.h>
#include <curand.h>

Go to the source code of this file.

Classes

struct  mshadow::op::mul
 mul operator More...
 
struct  mshadow::op::plus
 plus operator More...
 
struct  mshadow::op::minus
 minus operator More...
 
struct  mshadow::op::div
 divide operator More...
 
struct  mshadow::op::right
 get rhs More...
 
struct  mshadow::sv::saveto
 save to saver: = More...
 
struct  mshadow::sv::plusto
 save to saver: += More...
 
struct  mshadow::sv::minusto
 minus to saver: -= More...
 
struct  mshadow::sv::multo
 multiply to saver: *= More...
 
struct  mshadow::sv::divto
 divide to saver: /= More...
 
struct  mshadow::op::identity
 identity function that maps a real number to it self More...
 
struct  mshadow::red::sum
 sum reducer More...
 
struct  mshadow::red::maximum
 maximum reducer More...
 

Namespaces

 mshadow
 namespace for mshadow
 
 mshadow::op
 operations for algorithm
 
 mshadow::sv
 namespace for savers
 
 mshadow::red
 namespace for potential reducer operations
 
 mshadow::utils
 namespace for helper utils of the project
 

Macros

#define MSHADOW_STAND_ALONE   0
 if this macro is define to be 1, mshadow should compile without any of other libs
 
#define MSHADOW_ALLOC_PAD   true
 whether do padding during allocation
 
#define MSHADOW_MIN_PAD_RATIO   2
 x dimension of data must be bigger pad_size * ratio to be alloced padded memory, otherwise use tide allocation for example, if pad_ratio=2, GPU memory alignement size is 32, then we will only allocate padded memory if x dimension > 64 set it to 0 then we will always allocate padded memory
 
#define MSHADOW_USE_CBLAS   0
 use CBLAS for CBLAS
 
#define MSHADOW_USE_MKL   1
 use MKL for BLAS
 
#define MSHADOW_USE_CUDA   1
 use CUDA support, must ensure that the cuda include path is correct, or directly compile using nvcc
 
#define MSHADOW_SINGLE_PRECISION   1
 use single precition float
 
#define MSHADOW_USE_SSE   1
 whether use SSE
 
#define MSHADOW_USE_NVML   0
 whether use NVML to get dynamic info
 
#define MSHADOW_XINLINE   inline __attribute__((always_inline))
 
#define MSHADOW_CINLINE   inline __attribute__((always_inline))
 cpu force inline
 
#define MSHADOW_CONSTEXPR   const
 

Typedefs

typedef float mshadow::real_t
 type that will be used for content
 
typedef unsigned mshadow::index_t
 type that will be used for index
 

Functions

void mshadow::utils::Error (const char *msg)
 send error message then exit
 
void mshadow::utils::Assert (bool exp)
 assert a expression is true
 
void mshadow::utils::Assert (bool exp, const char *msg)
 assert a expression is true
 
void mshadow::utils::Warning (const char *msg)
 warning
 

Variables

const unsigned mshadow::kRandBufferSize = 1000000
 buffer size for each random number generator
 
const float mshadow::kPi = 3.1415926f
 pi
 

Detailed Description

definitions of base types, macros functions

Author
Bing Xu, Tianqi Chen