Monday, 2022-05-16

kanzurehttps://github.com/internet2-WG/rust-aluvm00:33
lkcli love their code. "we don't have a Code. we're responsible people. get over it" :)10:43
programmerjakeimho they are a little too negative on wasm in their comparison -- for instance, they claim wasm is only supported on the internet --- that's just not true, wasm is specifically designed to run outside of web browsers too -- e.g. wamr runs on a Cortex-M7 microcontroller10:49
programmerjakehttps://github.com/bytecodealliance/wasm-micro-runtime#supported-architectures-and-platforms10:50
openpowerbot[slack] <github> signin10:50
programmerjakealso they claim wasm has undefined behavior, which, assuming they mean C-style UB is also false. a compiler targetting wasm might have UB but that's compiler-level UB, not wasm-level10:53
programmerjakewasm itself is specified such that the wasm vm will trap instead of causing UB (a trap is basically equivalent to a sigsegv except it's more controlled and the program embedding the wasm vm can recover from that)10:56
lkclkanzure, the spec's incomplete, if this is all there is https://github.com/Internet2-WG/aluvm-spec11:12
lkclhaving to examine source code in order to find the list of opcodes is not filling me with confidence https://github.com/Internet2-WG/rust-aluvm/blob/master/src/isa/opcodes.rs11:15
lkclmaking its evaluation challenging11:15
lkclhowever we have big-integer math, so 4096-bit add/mul/div is not a problem11:16
lkclthe mul/div is scalar-vector so a for-loop on top of that gives mul/div vector-vector (Knuth Algorithms D and M)11:16
lkclwith 128 64-bit registers, up to 512-bit big-int add can be done comfortably in regs (because it takes QTY 16of 64-bit regs to do a 512-bit add), anything more than that can be done either11:18
lkcl"uncomfortably", or by LD/ST (lots of register spill)11:18
programmerjake32x64-bit bigint add should be easily achievable in-registers...11:20
programmerjakebecause the dest can be one of the src vectors11:21
ghostmansd[m]> not filling me with confidence12:43
ghostmansd[m]...as well as the fact that it's written in Rust :-D12:43
ghostmansd[m]Just willing to attract programmerjake attention lol12:43
ghostmansd[m]Ok, just kidding, programmerjake, a friendly nitpicking :-)12:44
lkclwriting meaningful non-ambiguous and complete specifications is... frickin hard13:13

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!