mxnet
Classes | Namespaces | Typedefs | Functions
utils.h File Reference

Basic utilility functions. More...

#include <dmlc/logging.h>
#include <dmlc/omp.h>
#include <nnvm/graph.h>
#include <mxnet/engine.h>
#include <mxnet/ndarray.h>
#include <mxnet/op_attr_types.h>
#include <mxnet/graph_attr_types.h>
#include <nnvm/graph_attr_types.h>
#include <memory>
#include <vector>
#include <type_traits>
#include <utility>
#include <random>
#include <string>
#include <thread>
#include <algorithm>
#include <functional>
Include dependency graph for utils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mxnet::common::helper::UniqueIf< T >
 Helper for non-array type T. More...
 
struct  mxnet::common::helper::UniqueIf< T[]>
 Helper for an array of unknown bound T. More...
 
struct  mxnet::common::helper::UniqueIf< T[kSize]>
 Helper for an array of known bound T. More...
 

Namespaces

 mxnet
 namespace of mxnet
 
 mxnet::common
 
 mxnet::common::helper
 Helper functions.
 

Typedefs

typedef std::mt19937 mxnet::common::RANDOM_ENGINE
 Random Engine. More...
 

Functions

template<typename xpu >
void mxnet::common::CastStorageDispatch (const OpContext &ctx, const NDArray &input, const NDArray &output)
 
bool mxnet::common::ContainsOnlyStorage (const StorageTypeVector &vstorage, const NDArrayStorageType stype)
 returns true if all storage types in vstorage are the same as target stype. false is returned for empty inputs. More...
 
bool mxnet::common::ContainsOnlyStorage (const StorageTypeVector &vstorage, const NDArrayStorageType stype1, const NDArrayStorageType stype2, bool *has_both)
 returns true if all storage types in vstorage are the same as target stype1 or `stype2'. Sets boolean if both found. false is returned for empty inputs. More...
 
bool mxnet::common::ContainsOnlyStorage (const std::vector< NDArray > &ndarrays, const NDArrayStorageType stype)
 returns true if the storage types of arrays in ndarrays are the same as target stype. false is returned for empty inputs. More...
 
bool mxnet::common::ContainsOnlyStorage (const std::vector< NDArray > &ndarrays, const NDArrayStorageType stype1, const NDArrayStorageType stype2, bool *has_both)
 returns true if the storage types of arrays in ndarrays are the same as targets stype1 or stype2. false is returned for empty inputs. More...
 
std::string mxnet::common::dispatch_mode_string (const DispatchMode x)
 get string representation of dispatch_mode More...
 
std::string mxnet::common::stype_string (const int x)
 get string representation of storage_type More...
 
int mxnet::common::GetNumThreadPerGPU ()
 
int mxnet::common::GetExecNumMatchColor ()
 
template<typename T , typename V >
mxnet::common::ParallelAccumulate (const T *a, const int n, V start)
 
template<typename RandomIt , typename Compare >
void mxnet::common::ParallelSortHelper (RandomIt first, size_t len, size_t grainsize, const Compare &comp)
 Helper function for ParallelSort. DO NOT call this function directly. Use the interface ParallelSort instead. Ref: https://github.com/dmlc/difacto/blob/master/src/common/parallel_sort.h. More...
 
template<typename RandomIt , typename Compare >
void mxnet::common::ParallelSort (RandomIt first, RandomIt last, size_t num_threads, Compare comp)
 Sort the elements in the range [first, last) into the ascending order defined by the comparator comp. If the length of the range [first, last) is greater than a certain threshold, the range will be recursively divided into two and assign two threads to sort each half range. Ref: https://github.com/dmlc/difacto/blob/master/src/common/parallel_sort.h. More...
 
template<typename RandomIt >
void mxnet::common::ParallelSort (RandomIt first, RandomIt last, size_t num_threads)
 Sort the elements in the range [first, last) into ascending order. The elements are compared using the default < operator. If the length of the range [first, last) is greater than a certain threshold, the range will be recursively divided into two and assign two threads to sort each half range. Ref: https://github.com/dmlc/difacto/blob/master/src/common/parallel_sort.h. More...
 
template<class T , class... Args>
helper::UniqueIf< T >::SingleObject mxnet::common::MakeUnique (Args &&...args)
 Constructs an object of type T and wraps it in a std::unique_ptr. More...
 
template<class T >
helper::UniqueIf< T >::UnknownBound mxnet::common::MakeUnique (size_t n)
 Constructs an object of type T and wraps it in a std::unique_ptr. More...
 
template<class T , class... Args>
helper::UniqueIf< T >::KnownBound mxnet::common::MakeUnique (Args &&...args)=delete
 Constructs an object of type T and wraps it in a std::unique_ptr. More...
 
template<typename FCompType >
FCompType mxnet::common::GetFCompute (const nnvm::Op *op, const std::string &name, const Context &ctx)
 

Detailed Description

Basic utilility functions.