halo2_base/gates/flex_gate/threads/mod.rs
1//! Module for managing the virtual region corresponding to [super::FlexGateConfig]
2//!
3//! In the virtual region we have virtual columns. Each virtual column is referred to as a "thread"
4//! because it can be generated in a separate CPU thread. The virtual region manager will collect all
5//! threads together, virtually concatenate them all together back into a single virtual column, and
6//! then assign this virtual column to multiple physical Halo2 columns according to the provided configuration parameters.
7//!
8//! Supports multiple phases.
9
10/// Thread builder for multiple phases
11mod multi_phase;
12mod parallelize;
13/// Thread builder for a single phase
14pub mod single_phase;
15
16pub use multi_phase::{GateStatistics, MultiPhaseCoreManager};
17pub use parallelize::parallelize_core;
18pub use single_phase::SinglePhaseCoreManager;