SMAUG
Simulating Machine Learning Applications on gem5-Aladdin
|
Inner product operator on SMV. More...
#include <smv_inner_product_op.h>
Inner product operator on SMV.
SMV supports C = A x B_tranpose
. Elements are 8-way vectorized.
Definition at line 28 of file smv_inner_product_op.h.
Public Member Functions | |
void | tile () override |
void | run () override |
Public Member Functions inherited from smaug::InnerProductOp< SmvBackend > | |
InnerProductOp (const std::string &name, Workspace *workspace) | |
void | setNumOutputs (int _outputs) |
void | run () override |
void | run () |
bool | validate () override |
TensorShape | inferOutputShape () const |
TensorShape | inferWeightsShape () const |
void | createWeightsTensors () |
void | createOutputTensors () |
void | createAllTensors () override |
int | getNumOutputs () const |
int | getNumParameters () const override |
std::vector< TensorBase * > | getParameterizableInputs () override |
bool | isSamplingSupported () const override |
void | setSamplingInfo (const SamplingInfo &_sampling) override |
Protected Member Functions | |
void | runNWA (TiledTensor &inputs, TiledTensor &weights, TiledTensor &outputs) |
Protected Attributes | |
std::array< TiledTensor, 3 > | tiledTensors |
Protected Attributes inherited from smaug::InnerProductOp< SmvBackend > | |
int | numOutputs |
bool | weightsTensorsCreated |
bool | outputTensorsCreated |
std::string | weightsName |
SamplingInfo | sampling |
Friends | |
class | smv::fc::TilingOptimizer |
Additional Inherited Members | |
Public Types inherited from smaug::InnerProductOp< SmvBackend > | |
enum | |
enum | |