mxnet
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions
packet-inl.h File Reference

Generic packet vectorization code. More...

#include <malloc.h>
#include "./base.h"
#include "./tensor.h"
#include "./expression.h"
#include "packet/plain-inl.h"
#include "packet/sse-inl.h"
Include dependency graph for packet-inl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mshadow::packet::Packet< DType, Arch >
 Generic packet type. More...
 
struct  mshadow::packet::AlignBytes< Arch >
 
struct  mshadow::packet::PacketOp< OP, DType, Arch >
 generic Packet operator More...
 
struct  mshadow::packet::PacketOp< op::plus, DType, Arch >
 
struct  mshadow::packet::PacketOp< op::minus, DType, Arch >
 
struct  mshadow::packet::PacketOp< op::mul, DType, Arch >
 
struct  mshadow::packet::PacketOp< op::div, DType, Arch >
 
struct  mshadow::packet::PacketOp< op::identity, DType, Arch >
 
struct  mshadow::packet::Saver< SV, TFloat, Arch >
 
struct  mshadow::packet::Saver< sv::saveto, TFloat, Arch >
 
class  mshadow::expr::PacketPlan< ExpType, DType, Arch >
 
class  mshadow::expr::PacketPlan< Tensor< Device, dim, DType >, DType, Arch >
 
class  mshadow::expr::PacketPlan< ScalarExp< DType >, DType, Arch >
 
class  mshadow::expr::PacketPlan< BinaryMapExp< OP, TA, TB, DType, etype >, DType, Arch >
 
class  mshadow::expr::PacketPlan< UnaryMapExp< OP, TA, DType, etype >, DType, Arch >
 
struct  mshadow::expr::PacketCheck< E, Arch >
 static check packet enable More...
 
struct  mshadow::expr::PacketCheck< float, Arch >
 
struct  mshadow::expr::PacketCheck< double, Arch >
 
struct  mshadow::expr::PacketCheck< ScalarExp< DType >, Arch >
 
struct  mshadow::expr::PacketCheck< Tensor< cpu, dim, DType >, Arch >
 
struct  mshadow::expr::PacketCheck< UnaryMapExp< OP, TA, DType, etype >, Arch >
 
struct  mshadow::expr::PacketCheck< BinaryMapExp< OP, TA, TB, DType, etype >, Arch >
 
struct  mshadow::expr::PacketAlignCheck< dim, E, Arch >
 
struct  mshadow::expr::PacketAlignCheck< dim, ScalarExp< DType >, Arch >
 
struct  mshadow::expr::PacketAlignCheck< dim, Tensor< cpu, dim, DType >, Arch >
 
struct  mshadow::expr::PacketAlignCheck< dim, UnaryMapExp< OP, TA, DType, etype >, Arch >
 
struct  mshadow::expr::PacketAlignCheck< dim, BinaryMapExp< OP, TA, TB, DType, etype >, Arch >
 

Namespaces

 mshadow
 namespace for mshadow
 
 mshadow::packet
 namespace of packet math
 
 mshadow::expr
 namespace for abstract expressions and expressions template, have no dependency on tensor.h, These data structure takes no charge in computations, they are only used to define operations and represent expression in a symbolic way
 

Macros

#define MSHADOW_DEFAULT_PACKET   ::mshadow::packet::kSSE2
 

Typedefs

typedef packet::PacketArch mshadow::expr::PacketArch
 

Enumerations

enum  mshadow::packet::PacketArch { mshadow::packet::kPlain, mshadow::packet::kSSE2 }
 

Functions

void * mshadow::packet::AlignedMallocPitch (size_t *out_pitch, size_t lspace, size_t num_line)
 analog to cudaMallocPitch, allocate a aligned space with num_line * lspace cells More...
 
void mshadow::packet::AlignedFree (void *ptr)
 free aligned space More...
 
template<PacketArch Arch>
bool mshadow::packet::CheckAlign (size_t pitch)
 check if a pointer is aligned More...
 
template<PacketArch Arch>
bool mshadow::packet::CheckAlign (void *ptr)
 check if a pointer is aligned More...
 
template<typename DType , PacketArch Arch>
index_t mshadow::packet::UpperAlign (index_t size)
 get upper bound of aligned index of size More...
 
template<typename DType , PacketArch Arch>
index_t mshadow::packet::LowerAlign (index_t size)
 get lower bound of aligned index of size More...
 
template<PacketArch Arch, typename OP , typename TA , typename TB , typename DType , int etype>
PacketPlan< BinaryMapExp< OP, TA, TB, DType, etype >, DType, Arch > mshadow::expr::MakePacketPlan (const BinaryMapExp< OP, TA, TB, DType, etype > &e)
 
template<PacketArch Arch, typename DType >
PacketPlan< ScalarExp< DType >, DType, Arch > mshadow::expr::MakePacketPlan (const ScalarExp< DType > &e)
 
template<PacketArch Arch, typename T , typename DType >
PacketPlan< T, DType, Arch > mshadow::expr::MakePacketPlan (const RValueExp< T, DType > &e)
 
template<PacketArch Arch, typename T , int dim, typename DType >
PacketPlan< T, DType, Arch > mshadow::expr::MakePacketPlan (const MakeTensorExp< T, cpu, dim, DType > &e)
 
template<PacketArch Arch, typename OP , typename TA , typename DType , int etype>
PacketPlan< UnaryMapExp< OP, TA, DType, etype >, DType, Arch > mshadow::expr::MakePacketPlan (const UnaryMapExp< OP, TA, DType, etype > &e)
 
template<typename SV , typename E , int dim, typename DType , PacketArch Arch>
void mshadow::expr::MapPacketPlan (Tensor< cpu, dim, DType > _dst, const expr::PacketPlan< E, DType, Arch > &plan)
 use PacketPlan to compute result More...
 

Detailed Description

Generic packet vectorization code.

Copyright (c) 2014 by Contributors

Macro Definition Documentation

#define MSHADOW_DEFAULT_PACKET   ::mshadow::packet::kSSE2