Dan Gohman created a new stream #cranelift.
Pat Hickey created a new stream #lucet.
Till Schneidereit created a new stream #wasmtime.
Sean Stangl created a new stream #git-cranelift.
acfoltzer created a new stream #wasi.
Anyone know how to generate an invite URL for Zulip that we could put in Cranelift and Wasmtime's README files?
top right cog > invite users
that just gives me a dialog box where I can enter email addresses to invite
I'm looking for a URL we can hand out
ah, I assumed that would generate a URL :-/
I think just copying the current URL works
If I use a logged-out browser, that takes me to https://bytecodealliance.zulipchat.com/login, with a "Sign Up" link in the corner which takes me to https://bytecodealliance.zulipchat.com/register/
which says "You need an invitation to join this organization. "
@Till Schneidereit Is this something we can configure, so that we can invite the public to join us here on Zulip?
Nick Fitzgerald created a new stream #wasm.
I opened up the Zulip instance so people can join without invites
Hi, Patrick from https://webassembly-security.com/ here. Invited by Till ;)
Hey Patrick!
is anyone here?
:wave:
cool! do you happen to know how to use cranelift/wasmtime?
Cranelift: Yes
Wasmtime: Haven't used it much
i want to run a wasm module in rust and can't figure out how
https://github.com/bytecodealliance/wasmtime/blob/master/docs/embed-rust.md may be useful.
it is, thx, but im looking for something that can work with no_std, and it seems like wasmtime can't do that
In that case you will need https://docs.rs/cranelift-wasm/0.58.0/cranelift_wasm/ to translate wasm -> clif and then you could use either https://docs.rs/cranelift-codegen/0.58.0/cranelift_codegen/struct.Context.html#method.compile_and_emit to compile the function, or you use the https://docs.rs/cranelift-module/0.58.0/cranelift_module/ abstraction combined with your own implementation of cranelift_module::Backend.
Also no_std support seems to be broken on the latest version: https://github.com/bytecodealliance/cranelift/issues/1261
For an old example of how to use it with no_std, see https://github.com/nebulet/nebulet (a kernel running wasm)
yeah im trying to build a new nebulet of some sorts, but its code looks too complicated for no reason
you think that forking nebulet would be better instead of trying to reimplement it with new versions?
Forking nebulet will likely save a lot of effort re-implementing stuff that is fairly generic for kernels, like setting up page tables and handling interrupts.
hmm, i don't think nebulet needs page tables because of wasm's memory
but i'm fine with the kernel stuff, i'm just missing the new WebAssembly.Module
bit, and it's weird that it requires more than 1 dependency
I believe x86_64 always requires page tables. Also the most efficient way to implement a wasm heap is to allocate a region of 4GB and then only map the wasm accessable pages into it.
not sure about 64bit requiring it, but i don't need paging to do this, i can just divvy up the heap into 4GB chunks and give them to the wasm implementation
i can just divvy up the heap into 4GB chunks and give them to the wasm implementation
That will only work if you have 4GB * amount of wasm module instances of free memory and is wasteful in any case.
enabling paging just gives me another translation implemented in hardware, whereas wasm can handle translation in software, so i dont see how thats wasteful
so cranelif_wasm + cranelift_codegen is the best way to run wasm? where do i put the imports?
NotWearingPants said:
enabling paging just gives me another translation implemented in hardware, whereas wasm can handle translation in software, so i dont see how thats wasteful
While you could handle this translation in software, it is much faster to handle it in hardware.
NotWearingPants said:
so cranelif_wasm + cranelift_codegen is the best way to run wasm?
Probably
NotWearingPants said:
where do i put the imports?
What do you mean?
where do i pass the imports that my module requires in the cranelift_wasm+cranelift_codegen code?
Context::compile_and_emit
accepts a RelocSink
. This will get all places where you need to write the address of an import. See for example https://docs.rs/cranelift-simplejit/0.58.0/src/cranelift_simplejit/backend.rs.html#394-442
doesn't look like i can easily pass imports here, but thanks!
ill try to write something up and come back here if i have trouble
Till Schneidereit created a new stream #git-wasmtime.
Owen Ou created a new stream #wasmtime on k8s.
Robin Knox created a new stream #baby.
Possibly a spambot? Also sent a PM to me with just "hi"
babe hold on
Yeah, very much looks like a spam bot—I disabled the account
I also changed the settings to make it so people have to wait 3 days after joining before they can create new streams
Till Schneidereit created a new stream #rust-toolchain.
Jack created a new stream #Lightbeam UnwindInfo.
Austin Huang created a new stream #wasi-nn.
Can we add a git stream for the bytecodealliance/RFCs repo? I can't figure out how to create git streams
cc @Till Schneidereit
One needs to add a webhook to the repo, and then a bot integration for that webhook for Zulip — both need admin access, so I'll set things up for an rfc-notifications
stream. The most difficult question to answer is on which kinds of events to notify :smile:
Till Schneidereit created a new stream #rfc-notifications.
ok, stream is created, webhook configured, both activated. Whether I did all these things in the right way, we'll see :smile:
and now that I fixed what I had misconfigured yesterday, it actually works \o/
Till Schneidereit created a new stream #lucet-wasmtime-migration.
Mingqiu Sun created a new stream #wamr.
Javier Cabrera Arteaga created a new stream #PAW 2022.
Kyle Brown created a new stream #wit-bindgen.
Richard Zak created a new stream #wasi-crypto.
Nathaniel McCallum created a new stream #wasi-threads.
Bailey Hayes created a new stream #wasi-cloud.
Daniel Blignaut created a new stream #how to extend WasiCtx.
(deleted)
Bailey Hayes created a new stream #community-stream.
fitzgen (he/him) created a new stream #SIG-Debugging.
Calvin Prewitt created a new stream #JS-guest-runtime-and-bindings-collaborations.
Guy Bedford created a new stream #ComponentizeJS.
Kyle Brown created a new stream #SIG-Guest-Languages.
Bailey Hayes created a new stream #componentize-the-world-2023.
Timmy Silesmo created a new stream #C#/.net-collaboration.
Peter Huene created a new stream #cargo-component.
Guy Bedford created a new stream #jco.
Till Schneidereit created a new stream #winch.
Bailey Hayes created a new stream #Events.
Guy Bedford created a new stream #WASI-Virt.
Mendy Berger created a new stream #wasi-webgpu.
Bailey Hayes created a new stream #SIG Documentation.
Friedrich Vandenberghe created a new stream #WIP Embedded.
Last updated: Nov 22 2024 at 16:03 UTC