dshiell15 opened issue #3110:
Feature
Implement Linker::func_wrap() functionality to the C/C++ APIs to be able to instantiate all hostcall functions once within an application with short lived Stores.
Benefit
Brings C/C++ APIs in alignment with Rust API, and would provided a significant performance benefit for applications with short lived Stores. For example, server applications which provide hostcalls to access request data. In my use case, I am using the C++ API and notice a large performance hit when registering even a single hostcall (via Linker::define()).
Implementation
I'm not sure what would be required to expose this functionality in the C/C++ API.
Alternatives
The main goal I would like to achieve would be to register all hostcalls once up front to avoid the overhead of registering all hostcalls for each Store context.
Thank you!
alexcrichton closed issue #3110:
Feature
Implement Linker::func_wrap() functionality to the C/C++ APIs to be able to instantiate all hostcall functions once within an application with short lived Stores.
Benefit
Brings C/C++ APIs in alignment with Rust API, and would provided a significant performance benefit for applications with short lived Stores. For example, server applications which provide hostcalls to access request data. In my use case, I am using the C++ API and notice a large performance hit when registering even a single hostcall (via Linker::define()).
Implementation
I'm not sure what would be required to expose this functionality in the C/C++ API.
Alternatives
The main goal I would like to achieve would be to register all hostcalls once up front to avoid the overhead of registering all hostcalls for each Store context.
Thank you!
dshiell15 commented on issue #3110:
Awesome!
Last updated: Dec 23 2024 at 13:07 UTC