首页
/ zksync-era项目prover组件v20.2.0版本技术解析

zksync-era项目prover组件v20.2.0版本技术解析

2025-06-16 23:54:02作者:范垣楠Rhoda

zksync-era是一个基于零知识证明技术的Layer 2扩容解决方案,其核心组件prover负责生成零知识证明,确保链下交易的有效性能够被链上验证。本次发布的prover-v20.2.0版本带来了一些重要的技术改进和优化。

序列化机制重构

本次更新对prover API相关类型的序列化机制进行了重构。在分布式系统中,序列化性能直接影响系统吞吐量,特别是对于需要频繁跨服务通信的prover组件而言。新版本优化了序列化/反序列化过程,减少了不必要的中间转换,提升了整体处理效率。

技术实现上,开发团队重新设计了类型系统的序列化协议,移除了冗余的转换层,使得数据在内存和网络传输间的转换更加高效。这种优化对于高频调用的API接口尤为关键,能够显著降低CPU使用率并减少延迟。

任务调度优化

prover作业调度算法得到了重要改进。新版本引入了更智能的任务排序机制,综合考虑了多种因素:

  1. 任务优先级:确保高优先级任务能够优先获得计算资源
  2. 资源需求:根据不同类型证明的计算复杂度进行动态调度
  3. 节点负载:平衡各prover节点的工作负载

这种改进使得系统在面对突发流量或不同类型证明混合负载时,能够更合理地分配计算资源,提高整体吞吐量并降低平均处理延迟。

安全性与稳定性增强

在安全方面,本次更新包含了多项重要改进:

  1. 参数处理优化:完善了WG DAL(数据访问层)中的参数处理逻辑,提升了系统健壮性
  2. 依赖项升级:更新了多个依赖库版本,解决了已知的问题
  3. 监控指标改进:将Histogram类型的监控指标替换为更合适的Gauge类型,提高了系统监控数据的准确性

特别是对于startup_time、run_time和shutdown_time等关键性能指标,改用Gauge类型后能够更准确地反映系统各阶段的耗时情况,便于运维团队进行性能分析和容量规划。

代码结构优化

开发团队还进行了代码结构的清理工作,移除了Circuit和CircuitWrapper之间的重复实现。这种重构不仅减少了代码维护成本,还提高了代码的可读性和一致性。在复杂的零知识证明系统中,保持代码结构的清晰对于长期维护和功能扩展都至关重要。

总结

zksync-era prover组件的这次更新体现了团队对系统性能、安全性和代码质量的持续关注。通过优化序列化机制、改进任务调度算法、增强安全防护和清理代码结构,prover组件在处理零知识证明生成方面将展现更高的效率和可靠性。这些改进将为整个zksync-era网络提供更稳定、更高效的证明服务,最终为用户带来更好的Layer 2使用体验。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
827
5.48 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
494
515
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
783
1.57 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
800
1.14 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
970
2.28 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
480
312
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.01 K
766
cannbot-skillscannbot-skills
CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。
Markdown
1.26 K
808
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
647
284