25 #ifndef MXNET_RESOURCE_H_    26 #define MXNET_RESOURCE_H_    28 #include <dmlc/logging.h>    31 #include "../../src/common/random_generator.h"    86   template<
typename xpu, 
typename DType>
    88       mshadow::Stream<xpu> *stream)
 const {
    90     mshadow::Random<xpu, DType> *ret =
    91         static_cast<mshadow::Random<xpu, DType>*
>(ptr_);
    92     ret->set_stream(stream);
   102   template<
typename xpu, 
typename DType>
   124   template<
typename xpu, 
int ndim>
   126       mshadow::Shape<ndim> shape, mshadow::Stream<xpu> *stream)
 const {
   127     return get_space_typed<xpu, ndim, real_t>(shape, stream);
   139       mshadow::Shape<ndim> shape)
 const {
   140     return get_host_space_typed<cpu, ndim, real_t>(shape);
   152   template<
typename xpu, 
int ndim, 
typename DType>
   154       mshadow::Shape<ndim> shape, mshadow::Stream<xpu> *stream)
 const {
   156     return mshadow::Tensor<xpu, ndim, DType>(
   157         reinterpret_cast<DType*
>(get_space_internal(shape.Size() * 
sizeof(DType))),
   158         shape, shape[ndim - 1], stream);
   169   template<
int ndim, 
typename DType>
   171     mshadow::Shape<ndim> shape)
 const {
   172       return mshadow::Tensor<cpu, ndim, DType>(
   173         reinterpret_cast<DType*
>(get_host_space_internal(shape.Size() * 
sizeof(DType))),
   174         shape, shape[ndim - 1], NULL);
   181   void* get_space_internal(
size_t size) 
const;
   187   void *get_host_space_internal(
size_t size) 
const;
   206   virtual void SeedRandom(uint32_t seed) = 0;
   215 #endif  // MXNET_RESOURCE_H_ Engine that schedules all the operations according to dependency. 
 
engine::VarHandle var
engine variable 
Definition: resource.h:70
 
namespace of mxnet 
Definition: base.h:127
 
int32_t id
identifier of id information, used for debug purpose 
Definition: resource.h:72
 
The resources that can be requested by Operator. 
Definition: resource.h:38
 
ResourceRequest(Type type)
constructor, allow implicit conversion 
Definition: resource.h:56
 
ResourceRequest req
The original request. 
Definition: resource.h:68
 
Type type
type of resources 
Definition: resource.h:49
 
A dynamic temp space that can be arbitrary size. 
Definition: resource.h:44
 
mshadow::Tensor< cpu, ndim, DType > get_host_space_typed(mshadow::Shape< ndim > shape) const 
Get CPU space as mshadow Tensor in specified type. The caller can request arbitrary size...
Definition: resource.h:170
 
Global resource manager. 
Definition: resource.h:191
 
Resources used by mxnet operations. A resource is something special other than NDArray, but will still participate. 
Definition: resource.h:66
 
mshadow::Random< xpu, DType > * get_random(mshadow::Stream< xpu > *stream) const 
Get random number generator. 
Definition: resource.h:87
 
common::RandGenerator<xpu> object, which can be used in GPU kernel functions 
Definition: resource.h:46
 
mshadow::Tensor< xpu, ndim, DType > get_space_typed(mshadow::Shape< ndim > shape, mshadow::Stream< xpu > *stream) const 
Get space requested as mshadow Tensor in specified type. The caller can request arbitrary size...
Definition: resource.h:153
 
mshadow::Tensor< xpu, ndim, real_t > get_space(mshadow::Shape< ndim > shape, mshadow::Stream< xpu > *stream) const 
Get space requested as mshadow Tensor. The caller can request arbitrary size. 
Definition: resource.h:125
 
ResourceRequest()
default constructor 
Definition: resource.h:51
 
virtual ~ResourceManager() DMLC_THROW_EXCEPTION
virtual destructor 
Definition: resource.h:208
 
Type
Resource type, indicating what the pointer type is. 
Definition: resource.h:40
 
Resource()
default constructor 
Definition: resource.h:79
 
Var * VarHandle
Variable pointer type, usually hold by user used to specify dependencies. 
Definition: engine.h:47
 
mshadow::Tensor< cpu, ndim, real_t > get_host_space(mshadow::Shape< ndim > shape) const 
Get cpu space requested as mshadow Tensor. The caller can request arbitrary size. ...
Definition: resource.h:138
 
mshadow::Random<xpu> object 
Definition: resource.h:42
 
Definition: random_generator.h:42
 
void * ptr_
pointer to the resource, do not use directly, access using member functions 
Definition: resource.h:77
 
Context information about the execution environment. 
Definition: base.h:142
 
common::random::RandGenerator< xpu, DType > * get_parallel_random() const 
Get parallel random number generator. 
Definition: resource.h:103