Lita 发布 Valida zkVM 及 C 编译器

  • 0xlita
  • 发布于 2024-09-05 10:17
  • 阅读 14

Lita 发布了 Valida 零知识虚拟机和 C 编译器工具链的 alpha 版本,使开发者能够在 Valida 上编译、运行、证明和验证 C 程序。Valida 在初始基准测试中表现出前景,在证明生成速度和效率方面有了多个数量级的提高。LLVM Valida 编译器后端为所有 LLVM 兼容编程语言利用经济高效的大规模 STARK 零知识证明奠定了基础。

2024年9月4日

亮点

  • Lita发布了Valida零知识虚拟机和C编译器的alpha版本,使开发者能够在Valid上编译、运行、证明和验证C程序

  • Valida在初步基准测试中显示出前景,在证明生成速度和效率方面有多个数量级的改进

  • LLVM Valida编译器后端为所有LLVM兼容的编程语言利用经济高效的大规模STARK零知识证明奠定了基础

  • 接下来:Solidity、Rust、C++ 和其他流行的编程语言

从第一天起,Lita就致力于推动零知识证明的性能和可用性。我们在这里使ZK真正普及。这在我们如何设计 Valida- 我们的零知识虚拟机中可见。

我们选择从头开始构建Valida,采用针对高效零知识证明进行了优化的zk-optimized ISA,以及一个编译器工具链,使任何开发者都能够利用熟悉的工具和语言将其应用程序与Valida集成。我们认为,这是创建快速、高性能且真正可访问的zkVM的卓越方法。

今天,我们很自豪地宣布 Valida C 编译器工具链的alpha版本。与Valida zkVM结合使用,开发者现在可以在Valida 中执行和验证程序 此版本不仅仅代表一个技术里程碑。这是在实现zkSTARK的经济高效、大规模应用和扩展可行用例范围方面的一个战略进展。

Lita编译器的优势

Lita的编译器利用强大的LLVM基础设施,能够为Valida zkVM编译主流编程语言。通过采用通用的中间表示,我们只需为Valida提供一个后端即可支持多种前端语言,从而显著简化了开发。这种方法在多功能性和编码效率方面提供了明显的优势。

Valida 与其他 zkVM 的比较:速度和效率提升多个数量级

C 编译器工具链和Valida zkVM将允许开发者在我们的VM上运行和测试程序。为了展示Valida的功能,我们针对RISC Zero、SP1和Jolt对其进行了基准测试。

我们的性能比较侧重于两个关键指标:用户时间(CPU效率)和实际运行时间,针对执行SHA-256和斐波那契数列计算的程序进行了测试。

我们很高兴地展示证据,表明与上述VM相比,Valida在两个指标上都具有显著优势。这种卓越的性能突显了Lita在提供行业领先的效率和速度方面的承诺。

上图:在速度方面,Valida的性能明显优于其他证明系统

Lita Valida zkVM 最大化了 CUP 效率

上图:Valida zkVM 最大化了 CPU 效率

详细报告可在此处找到 此处

指标解释

用户时间(CPU效率): 程序代码所消耗的计算机时间量。例如,如果一个程序使用5个内核,每个内核5秒,则用户时间为25秒(5个内核 x 5秒)。用户时间是计算所消耗能量的关键指标。

实际运行时间: 这衡量的是从计算开始到结束的实际经过时间。在同一个例子中,无论使用多少内核,实际运行时间都将是5秒。实际运行时间反映了用户的等待时间。

总而言之,实际运行时间侧重于用户的等待时间,而用户时间则强调运行计算的能源和成本效率。降低这两个指标都有利于用户,因为它可以提供更快的结果并降低开销。

当前的局限性和未来的发展

作为我们不断改进的承诺的一部分,需要注意的是,在当前C编译器工具链的alpha版本中,尚未完全支持标准C。C的Valida后端存在一些已知问题,我们的团队正在积极努力解决这些问题,预计对Valida当前性能的影响最小。有关这些已知问题和局限性的详细摘要,请参阅此版本随附的发行说明。

Valida 作为一个裸机计算环境运行,类似于最小嵌入式系统中发现的计算环境,在没有操作系统或内存保护的情况下运行。这不能防止诸如分段错误之类的问题。为了在这种环境中运行,程序通常需要修改。并非所有标准库函数 (libc) 都与裸机环境兼容,尤其是那些涉及系统调用的函数。但是,LLVM 的 libc 可以通过排除进行系统调用的函数来为裸机编译。

立即开始

开发者可以通过试验工具链、提供宝贵的反馈并为其持续开发做出贡献来深入了解。立即访问我们的 GitHub 仓库,获取文档和资源,开始使用 C 编译器工具链。

附录

方法论概述

以下是针对不同证明系统和测试程序进行基准测试的范围的概述。

三方比较

  • 单线程模式下的Valida prover
  • 多线程模式下的Valida prover
  • 多线程模式下的RISC Zero、SP1和Jolt provers

测试程序:

  • 斐波那契数列的迭代实现
  • SHA-256

详细的方法可在 此处 获取。

  • 原文链接: lita.foundation/blog/ann...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
0xlita
0xlita
江湖只有他的大名,没有他的介绍。