1/ Nova publicação: Jolt agora prova programas RISC-V com registos de 64 bits (RV64IMAC), a velocidades que superam aquelas que reportámos anteriormente para 32 bits. 1,5M ciclos/segundo em uma CPU de 32 núcleos, 500k ciclos/segundo em um MacBook. Aqui está o porquê de isso ser importante 🧵
2/ Por que se preocupar com a prova de 64 bits? Duas razões: 🔹 Desempenho: muitos aplicativos precisam de menos ciclos com regs de 64 bits. Exemplo: uma multiplicação de 256 bits leva 6× menos ciclos. 🔹 Suporte a linguagens: algumas linguagens (como Go) não compilam para RV32, então RV64 é necessário para provar programas como o Geth.
3/ Então, como é que o Jolt atingiu velocidades RV64 que correspondem aos nossos resultados RV32? Duas razões: 1️⃣ O Jolt é construído para grandes registos. Outros zkVMs dividem valores de 64 bits em bytes (8 elementos de campo por valor), um grande overhead. Os campos de grande característica do Jolt lidam com eles diretamente.
4/ Como resultado, quando outros zkVMs dobram o tamanho do registro, eles costumam ser 2× mais lentos por ciclo. O Jolt é apenas 1.5× mais lento.
5/ 2️⃣ Continuamos a otimizar. Juntamente com técnicas conhecidas, temos adicionado novos avanços a nível de pesquisa. Esses ganhos já compensam mais do que a desaceleração de 1,5×, portanto, a execução do RV64 agora é mais rápida do que a do RV32 há dois meses.
6/ O uso de memória continua a cair também, agora em ~700 MB por milhão de ciclos. Hoje, em <2 GB, você pode provar o conhecimento de muitas assinaturas digitais ou que dezenas de KB de dados foram corretamente SHA-hashados.
7/ Com o Twist & Shout integrado, estamos em uma cadência constante de marcos. Próximo passo: – Recursão – O provador de streaming (manter o espaço do provador abaixo de 2 GB para contagens de ciclos arbitrariamente grandes, sem recursão) – Zero-knowledge
17,29K