Releasing Constantine v0.1.0, the fastest backend for Ethereum cryptography.
BLS signatures, EVM crypto-precompiles, KZG polynomial commitments for blobs (EIP-4844). All accelerated, with multithreading support. And the fastest MSM for elliptic curves. ethresear.ch/t/releasing-conβ¦
Apparently I did the second most popular quantization of Devstral even ahead @MistralAI (original creator) or @UnslothAI on @huggingface. How? I did 0 marketing, and most local devs are using ggufs through LMStudio/Ollama/Llamacpp...
WebGPU codegen has landed in Constantine! It shares the same GPU AST as the Cuda backend. Tested with BigInts and Poseidon2 Merkle Trees. Write GPU code once, run anywhere!
It needs a restricted subset of Nim with plain old datatypes but same as crypto. Work by @Vindaar@lita_xyz
RV32i or RV64i need 32 registers, more than the 15 usable registers on x86-64 and more than on ARM, preventing single pass static recompilation and needing a register allocation algorithm, a notoriously hard problem, or interpretation which is slow.
So with holidays I missed the RISC-V discussion in Ethereum? Was i vs e discussed? Was 32-bit vs 64-bit discussed? I am strongly preferring RV64e, e because 16 registers (including a 0reg), 2 registers for parameter passing would make it easy to transpile to x86-64.
So I looked a bit into what the EU planned for age verification and seems like it will involve Zero Knowledge proofs in the future. And they will use Google solution inspired by Ligero and implemented at github.com/google/longfellowβ¦, IETF draft: datatracker.ietf.org/doc/draβ¦
Ventaliβs Twitter (@ventali_ ) and Telegram (@ventali08) accounts have been compromised. Please do not engage with any messages from those accounts until further notice.
For urgent matters, please reach out through official Lita channels, or email ventali@lita.foundation.
Spicy take. @nim_lang will be the best language for code generating high performance GPU kernels for AMD, Metal. Nvidia, OpenCL, Vulkan. And those macros βοΈπ₯ forum.nim-lang.org/t/12868
Only ~1000 LOC for a compile-time macro-based Cuda codegenerator to compile Nim to Cuda
Whoops holidays and back with ZK on fire following @VitalikButerin post on replacing EVM exec with Risc-V
On proof generation side, the discussion so far has been missing the biggest cost contributors to ZKVM, ISA calling conventions and addressing mode.
ethereum-magicians.org/t/lonβ¦
Tried a different quantization, same model 13s between enqueueing and completing the task (w4a16 vs gptq-4bit). Not sure how to further narrow down the rootcause.
I can reliably DOS @vllm_project with a small query for 5 min (and sometimes is 10+), trying to narrow down rootcause but same doesn't happen in @ollama for instance.
How do you even start debugging DOS in LLM ops btw? Is there a standard responsible disclosure process?