Skip to content
This repository has been archived by the owner on Jan 15, 2025. It is now read-only.

Any clue at a timeline? #20

Closed
BHare1985 opened this issue Jun 24, 2021 · 3 comments
Closed

Any clue at a timeline? #20

BHare1985 opened this issue Jun 24, 2021 · 3 comments

Comments

@BHare1985
Copy link

BHare1985 commented Jun 24, 2021

When can we expect 64-bit memory indexes? Guesses are welcomed

Specifically, such that Internet Computer canisters can use more than 4 GB of memory

@aardappel
Copy link
Contributor

There is no single moment when 64-bit is "done" since there are many projects involved.

  • LLVM (Clang/LLD), WABT, Binaryen: if you rely only on these tools, you can possibly use wasm64 TODAY. There might still be bugs, but things are looking pretty good.
  • Rust Wasm seems to support it now, but that's just the compiler, probably not in any bindings yet.
  • Emscripten: in progress. I have no idea when this will be finished, I am hoping an initial version will at most take a few months. But given the sprawling nature of the project, I expect there to be quite a few issues to work thru for a while.
  • V8: in progress, eta unknown.
  • Other runtimes: unknown.
  • Spec and Spec interpreter: close to done, but the proposal is in phase 3, and it's not "done" until phase 5.

I have no idea how Dfinity uses Wasm, what external tools does it need for wasm64 to function?

@lars-t-hansen
Copy link

Firefox: in progress, eta unknown.

@rossberg
Copy link
Member

Dfinity uses Wasmtime, so we'd depend on that. And it currently provides a Rust and a Motoko SDK. The latter doesn't have any essential external dependencies.

@BHare1985, that said, there are additional hurdles to adopting 64-bit memories on the IC, such as persistence. And as mentioned on the thread you link to, it would not magically solve scalability for apps. What IC apps would actually benefit more from is multiple memories, in order to make the use of stable memory more efficient.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants