Tensor Comprehensions
|
#include <mapping_options.h>
Public Member Functions | |
MappingOptions (const MappingOptions &options) | |
Construct a deep copy of the options. More... | |
MappingOptions (const MappingOptionsProto &buf) | |
MappingOptions (const std::string &str) | |
Construct from a serialized protocol buffer message. More... | |
MappingOptions & | operator= (const MappingOptions &)=default |
Assign from another message. More... | |
bool | operator== (const MappingOptions &options) const |
Compare with another message. More... | |
bool | operator!= (const MappingOptions &options) const |
std::string | toProtobufSerializedString () const |
Get a string with a serialized protocol buffers message. More... | |
Chainable Modifiers | |
See protobuf for documentation on each option. | |
MappingOptions & | tile (const std::vector< uint64_t > &sizes) |
MappingOptions & | tile (std::initializer_list< uint64_t > sizes) |
MappingOptions & | tile (const std::string &commaSeparatedSizes) |
MappingOptions & | tile (const char *commaSeparatedSizes) |
template<typename... Args> | |
MappingOptions & | tile (Args...) |
MappingOptions & | mapToThreads (std::initializer_list< uint64_t > threads) |
MappingOptions & | mapToThreads (uint64_t x, uint64_t y=CudaDimView::defaultDim, uint64_t z=CudaDimView::defaultDim) |
MappingOptions & | mapToThreads (const std::vector< uint64_t > &threads) |
MappingOptions & | mapToThreads (const std::string &commaSeparatedSizes) |
MappingOptions & | mapToBlocks (std::initializer_list< uint64_t > blocks) |
MappingOptions & | mapToBlocks (uint64_t x, uint64_t y=CudaDimView::defaultDim, uint64_t z=CudaDimView::defaultDim) |
MappingOptions & | mapToBlocks (const std::vector< uint64_t > &blocks) |
MappingOptions & | mapToBlocks (const std::string &commaSeparatedSizes) |
MappingOptions & | unroll (uint64_t size) |
MappingOptions & | useSharedMemory (bool b) |
MappingOptions & | usePrivateMemory (bool b) |
MappingOptions & | maxSharedMemory (uint64_t size) |
MappingOptions & | fixParametersBeforeScheduling (bool b) |
MappingOptions & | unrollCopyShared (bool b) |
MappingOptions & | tileImperfectlyNested (bool b) |
MappingOptions & | matchLibraryCalls (bool b) |
MappingOptions & | scheduleFusionStrategy (FusionStrategy fs) |
MappingOptions & | scheduleFusionStrategy (const std::string &str) |
MappingOptions & | outerScheduleFusionStrategy (FusionStrategy fs) |
MappingOptions & | outerScheduleFusionStrategy (const std::string &str) |
MappingOptions & | outerScheduleAllowSkewing (bool b) |
MappingOptions & | outerSchedulePositiveOrthant (bool b) |
MappingOptions & | intraTileScheduleFusionStrategy (FusionStrategy fs) |
MappingOptions & | intraTileScheduleFusionStrategy (const std::string &str) |
MappingOptions & | intraTileScheduleAllowSkewing (bool b) |
MappingOptions & | intraTileSchedulePositiveOrthant (bool b) |
Static Public Member Functions | |
static MappingOptions | makeNaiveMappingOptions () |
static MappingOptions | makeSingleThreadMappingOptions () |
static MappingOptions | makePointwiseMappingOptions () |
static MappingOptions | makeMlpMappingOptions () |
static MappingOptions | makeConvolutionMappingOptions () |
static MappingOptions | makeGroupConvolutionMappingOptions () |
Public Attributes | |
MappingOptionsProto | proto |
CudaDimView | block |
CudaDimView | grid |
TilingView | tiling |
SchedulerOptionsView | outerScheduleOptions |
SchedulerOptionsView | intraTileScheduleOptions |
Private Member Functions | |
MappingOptions () | |
Static Private Member Functions | |
static MappingOptions | makeUnmappedMappingOptions () |
Friends | |
std::ostream & | operator<< (std::ostream &os, const MappingOptions &options) |
Output operator. More... | |
Top-level interface to MappingOptionsProto.
Contains views of the sub-messages (scheduler options, tiling, grid and block sizes). Provides static constructors for common operator options. Provides fluent (chainable) API for progressively modifying the options.
|
inlineprivate |
|
inline |
Construct a deep copy of the options.
|
inlineexplicit |
|
inlineexplicit |
Construct from a serialized protocol buffer message.
|
inline |
|
inline |
Set fusion strategy for intra-tile scheduling.
|
inline |
Set fusion strategy for intra-tile scheduling.
|
inline |
Set fusion strategy for intra-tile scheduling.
|
inline |
Set fusion strategy for intra-tile scheduling.
|
static |
Static constructors for predefined strategies.
|
static |
Static constructors for predefined strategies.
|
static |
Static constructors for predefined strategies.
|
static |
Static constructors for predefined strategies.
|
static |
Static constructors for predefined strategies.
|
static |
Static constructors for predefined strategies.
|
staticprivate |
|
inline |
|
inline |
|
inline |
MappingOptions& tc::MappingOptions::mapToBlocks | ( | const std::string & | commaSeparatedSizes | ) |
|
inline |
|
inline |
|
inline |
MappingOptions& tc::MappingOptions::mapToThreads | ( | const std::string & | commaSeparatedSizes | ) |
|
inline |
|
inline |
|
inline |
|
default |
Assign from another message.
|
inline |
Compare with another message.
|
inline |
Set fusion strategy for outer scheduling.
|
inline |
Set fusion strategy for outer scheduling.
|
inline |
Set fusion strategy for outer scheduling.
|
inline |
Set fusion strategy for outer scheduling.
|
inline |
Set single fusion strategy.
|
inline |
Set single fusion strategy.
|
inline |
|
inline |
MappingOptions& tc::MappingOptions::tile | ( | const std::string & | commaSeparatedSizes | ) |
|
inline |
MappingOptions & tc::MappingOptions::tile | ( | Args... | args | ) |
|
inline |
|
inline |
Get a string with a serialized protocol buffers message.
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |
Output operator.
CudaDimView tc::MappingOptions::block |
CudaDimView tc::MappingOptions::grid |
SchedulerOptionsView tc::MappingOptions::intraTileScheduleOptions |
SchedulerOptionsView tc::MappingOptions::outerScheduleOptions |
MappingOptionsProto tc::MappingOptions::proto |
TilingView tc::MappingOptions::tiling |