In this two-part series exploring ZK Hardware, Anna Rose interviews various participants from the ZPrize competition, alongside the creator of ZPrize and co-host of this episode Alex Pruden from Aleo. Throughout these interviews, they dig into the different types of hardware, such as GPUs and FPGAs, that can be used to accelerate ZKP computation. They also discuss the underlying mathematical techniques in ZKPs that can be optimized for and the tricks and strategies that ZPrize competitors used to achieve these optimizations.
In Part 2 of the series, Anna and Alex first interview Hamid Salehi and Swati Gupta from Xilinx AMD who contribute insights from the perspective of an FPGA manufacturer. Alex and Anna then interview competitor Niall Emmart, previously from NVIDIA. They discuss his previous work and what went into winning both the MSM for GPUs and MSM for Wasm competitions in ZPrize.
Here is some additional information for this episode:
Hardware/Board options:
- Varium C1100 board (targeted at accelerating blockchain applications).
This board has been used to accelerate the following: - Poseidon hash (used in the storage sealing process for Filecoin)
- NTT acceleration at ZPrize
- Startups are using this to explore NTT and MSM acceleration
- Other boards
The U55C in particular has been shown to provide a competitive and more power efficient alternative to GPUs for MSM acceleration in this study by Ingonyama called PipeMSM. There has been interest in U55C for NTT acceleration as well due to the high HBM capacity it provides (16GB).
Research and documents on using FPGAs for ZK related implementation:
Projects using the C1100 board (These can be a good starting point for getting familiar with the hardware and tools):
- ZPrize submissions in the NTT category
- Poseidon hash implementation from the Adaptive Computing 2021 challenge conducted by Hackster.io
Documentation on tools and boards:
- Vitis unified software tutorial
- Alveo debug guide
- Alveo usage documentation
- Vitis for CUDA developers
GitHub Repositories:
Check out the ZK Jobs Board here: ZK Jobs.
Ingonyama’s mission is to improve the performance of Zero-Knowledge Provers by designing hardware optimized for ZK computation. They are proud to introduce their latest project, ICICLE.
For ideas and discussion around the code, visit the ICICLE channel in the Ingonyama discord server, where team members and fellow developers await.
If you like what we do:
- Find all our links here! @ZeroKnowledge | Linktree
- Subscribe to our podcast newsletter
- Follow us on Twitter @zeroknowledgefm
- Join us on Telegram
- Catch us on YouTube