Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::bbapi::ChonkBatchVerifierService Class Reference

FIFO-streaming batch verification service for Chonk proofs. More...

#include <bbapi_chonk.hpp>

Public Member Functions

 ChonkBatchVerifierService ()=default
 
 ~ChonkBatchVerifierService ()
 
 ChonkBatchVerifierService (const ChonkBatchVerifierService &)=delete
 
ChonkBatchVerifierServiceoperator= (const ChonkBatchVerifierService &)=delete
 
void start (std::vector< std::shared_ptr< MegaZKFlavor::VKAndHash > > vks, uint32_t num_cores, uint32_t batch_size, const std::string &fifo_path)
 
void enqueue (VerifyRequest request)
 
void fail_request (uint64_t request_id, std::string error_message)
 
void stop ()
 
bool is_running () const
 

Private Member Functions

bool write_result (VerifyResult result)
 
bool ensure_fifo_open ()
 
void close_fifo_locked ()
 
bool fail_fifo_locked (const std::string &message)
 

Private Attributes

ChonkBatchVerifier verifier_
 
std::mutex fifo_mutex_
 
std::string fifo_path_
 
int fifo_fd_ = -1
 
std::atomic_bool running_ = false
 
std::atomic_bool fifo_failed_ = false
 

Detailed Description

FIFO-streaming batch verification service for Chonk proofs.

Wraps ChonkBatchVerifier and streams results over a named pipe (FIFO) as size-delimited msgpack payloads: [4-byte big-endian length][msgpack payload].

Lifecycle: start()enqueue() × N → stop()

Definition at line 43 of file bbapi_chonk.hpp.

Constructor & Destructor Documentation

◆ ChonkBatchVerifierService() [1/2]

bb::bbapi::ChonkBatchVerifierService::ChonkBatchVerifierService ( )
default

◆ ~ChonkBatchVerifierService()

bb::bbapi::ChonkBatchVerifierService::~ChonkBatchVerifierService ( )

◆ ChonkBatchVerifierService() [2/2]

bb::bbapi::ChonkBatchVerifierService::ChonkBatchVerifierService ( const ChonkBatchVerifierService )
delete

Member Function Documentation

◆ close_fifo_locked()

void bb::bbapi::ChonkBatchVerifierService::close_fifo_locked ( )
private

◆ enqueue()

void bb::bbapi::ChonkBatchVerifierService::enqueue ( VerifyRequest  request)

◆ ensure_fifo_open()

bool bb::bbapi::ChonkBatchVerifierService::ensure_fifo_open ( )
private

◆ fail_fifo_locked()

bool bb::bbapi::ChonkBatchVerifierService::fail_fifo_locked ( const std::string &  message)
private

◆ fail_request()

void bb::bbapi::ChonkBatchVerifierService::fail_request ( uint64_t  request_id,
std::string  error_message 
)

◆ is_running()

bool bb::bbapi::ChonkBatchVerifierService::is_running ( ) const
inline

Definition at line 58 of file bbapi_chonk.hpp.

◆ operator=()

ChonkBatchVerifierService & bb::bbapi::ChonkBatchVerifierService::operator= ( const ChonkBatchVerifierService )
delete

◆ start()

void bb::bbapi::ChonkBatchVerifierService::start ( std::vector< std::shared_ptr< MegaZKFlavor::VKAndHash > >  vks,
uint32_t  num_cores,
uint32_t  batch_size,
const std::string &  fifo_path 
)

◆ stop()

void bb::bbapi::ChonkBatchVerifierService::stop ( )

◆ write_result()

bool bb::bbapi::ChonkBatchVerifierService::write_result ( VerifyResult  result)
private

Member Data Documentation

◆ fifo_failed_

std::atomic_bool bb::bbapi::ChonkBatchVerifierService::fifo_failed_ = false
private

Definition at line 72 of file bbapi_chonk.hpp.

◆ fifo_fd_

int bb::bbapi::ChonkBatchVerifierService::fifo_fd_ = -1
private

Definition at line 70 of file bbapi_chonk.hpp.

◆ fifo_mutex_

std::mutex bb::bbapi::ChonkBatchVerifierService::fifo_mutex_
private

Definition at line 68 of file bbapi_chonk.hpp.

◆ fifo_path_

std::string bb::bbapi::ChonkBatchVerifierService::fifo_path_
private

Definition at line 69 of file bbapi_chonk.hpp.

◆ running_

std::atomic_bool bb::bbapi::ChonkBatchVerifierService::running_ = false
private

Definition at line 71 of file bbapi_chonk.hpp.

◆ verifier_

ChonkBatchVerifier bb::bbapi::ChonkBatchVerifierService::verifier_
private

Definition at line 66 of file bbapi_chonk.hpp.


The documentation for this class was generated from the following file: