Accelerating Elliptic Curve Operations and Finite Field Arithmetic (WASM)

​​​​## Prize Description ## 

​​​​### Summary ### 

Multiscalar multiplication (MSM) operations are essential building block for zk computations. This prize will focus on maximizing throughput/minimizing latency of these operations on client-type devices and blockchain-based VMs, specifically the WebAssembly (WASM) runtime.

Optimization Objective (1-sentence)

Compute the highest number of MSM operations in 1 second

Hardware & Benchmarks

  • All submissions will be tested using a Ryzen 5950x CPU on Coreweave cloud.

Constraints

  • Runtime must be WASM.

  • The MSM must be over EITHER the BLS 12-377 or BLS 12-381 curves

  • Only single-threaded solutions will be allowed

  • OpenCL is banned. Why?
    OpenCL is usually used for two reasons: 1) GPU support; 2) cross-platform support. For the first point, we target only CPUs since many users may not have access to GPUs. For the second point, we have already relied on WASM to achieve cross-platform support. With WASM, optimized MSM implementation can run smoothly in users' explorer and could be connected with popular wallets such as Metamask. Due to above reasons, we expect competitors to exploit WASM features for speedup.

Timeline

June 10 - Competition begins
July 25 - Mid-competition submission due
September 10 - Final submission due

Judging

Submissions will be initially reviewed via an automated mechanism. When a competitor submits a solution, the grading software will sample n elements at random from the given field. The submitted score will be the average throughput measured across 100 trials.

In addition, all submissions will be manually reviewed by a committee that includes

test vectors

Correctness - test vectors (randomly sampled point)
Performance - benchmark arkworks?

Select a repo