[Bug] [VTA] A type error of vta::dpi::DPIModule::GetFunction' parameters #16853
Labels
needs-triage
PRs or issues that need to be investigated by maintainers to find the right assignees to address it
type: bug
The TVM version I used: a156181ee3242407aa3c0e1565c18896b9d2f06b
I tried to follow the VTA installation tutorial and enable the USE_VTA_FSIM and USE_VTA_TSIM option. However, I encountered an error while compiling the VTA-related parts, which does not occur when the VTA corresponding option is disabled. The error message given by the compiler is as follows:
I have identified that the cause of this error is due to the type of parameter name in GetFunction. On include/tvm/runtime/module.h line 168, in the definition of the pure virtual function GetFunction, the type of 'name' is specified as 'tvm::runtime::String'.
virtual PackedFunc GetFunction(const String& name, const ObjectPtr<Object>& sptr_to_self) = 0;
However, in the vta runtime file '3rdparty/vta-hw/src/dpi/module.cc' on line 285, the type of 'name' is 'std::string'. This inconsistency causes the compiler to believe that the pure virtual function GetFunction has not been implemented.
According to the implementation of GetFunction in apps/dso_plugin_module/plugin_module.cc, I modified the type of name to 'tvm::runtime::String' in VTA, and then successfully compiled it.
The text was updated successfully, but these errors were encountered: