add PIM accelerator
This commit is contained in:
42
src/PIM/Compiler/PimCompilerOptions.hpp
Normal file
42
src/PIM/Compiler/PimCompilerOptions.hpp
Normal file
@@ -0,0 +1,42 @@
|
||||
#pragma once
|
||||
|
||||
#include "llvm/Support/CommandLine.h"
|
||||
|
||||
#define INSTRUMENTSTAGE_ENUM_PIM
|
||||
|
||||
#define INSTRUMENTSTAGE_CL_ENUM_PIM
|
||||
|
||||
#define PROFILEIR_CL_ENUM_PIM
|
||||
|
||||
#define OPTREPORT_ENUM_PIM
|
||||
|
||||
#define OPTREPORT_CL_ENUM_PIM
|
||||
|
||||
namespace onnx_mlir {
|
||||
typedef enum {
|
||||
EmitSpatial = 0,
|
||||
EmitPim = 1,
|
||||
EmitPimBufferized = 2,
|
||||
EmitPimCodegen = 3
|
||||
} PimEmissionTargetType;
|
||||
|
||||
extern llvm::cl::OptionCategory OnnxMlirOptions;
|
||||
extern llvm::cl::opt<onnx_mlir::PimEmissionTargetType> pimEmissionTarget;
|
||||
|
||||
extern llvm::cl::opt<bool> pimOnlyCodegen;
|
||||
extern llvm::cl::opt<bool> useExperimentalConvImpl;
|
||||
extern llvm::cl::opt<bool> exportCrossbarWeights;
|
||||
|
||||
extern llvm::cl::opt<size_t> crossbarSize;
|
||||
extern llvm::cl::opt<size_t> crossbarCountInCore;
|
||||
extern llvm::cl::opt<long> coresCount;
|
||||
|
||||
// This option, by default set to false, will ignore an error when resolving a
|
||||
// specific tiles of the operands of a concat. This specific case is when the
|
||||
// wanted tile is generated by two separate operands of the concat. If this is
|
||||
// set to false, this corner case will assert an error. If this is set to true,
|
||||
// a simplification is performed and only the tile from the first operand is
|
||||
// taken.
|
||||
extern llvm::cl::opt<bool> ignoreConcatError;
|
||||
|
||||
} // namespace onnx_mlir
|
||||
Reference in New Issue
Block a user