Weekly Report #6 (2024–08–11)
2 min readAug 12, 2024
During the recent development phase, we updated our work of:
- Fix some bugs of wasm memory allocation. The
nucleus
in verisense represents an AVS using actor model running inside the verisense node. This works enablenucleus
to allocate up to 2GB memory within virtual machine when handling requests. We believe that verisense will make AVS development simple as web development. - We also made a video to demonstrate what does the AVS development using vrs-core-sdk look like.
This week, we made significant modifications and optimizations to our Rust WebAssembly (WASM) code. Our work primarily focused on improving macro expansion and adjusting host-side storage access methods. Here are the details:
1. WASM Macro Expansion Optimization
- Modified the macro expansion mechanism in Rust WASM code.
- The new macro expansion allows for linked-style calls to host-side storage operations.
- This improvement enhances the interaction capabilities between WASM and the host side, increasing code flexibility and efficiency.
2. Host-Side Storage Access Improvement
- Implemented direct calls to the host-side storage’s
put
andget
methods. - This linked-style calling improves data operation efficiency and reduces unnecessary data transfer overhead.
3. KVDB Operation Restrictions
- Implemented restrictions on the
get
method in the KVDB (Key-Value Database). - The new restrictions ensure that the
get
method can only be used for data writing and deletion operations. - This change enhances data operation security and prevents potential misuse.
Next Steps
- Conduct comprehensive performance tests to quantify the performance improvements from these changes.
- Consider further optimizing other interaction methods between WASM and the host side.
- Write detailed documentation explaining the new usage methods and considerations.