Skip to content

Commit

Permalink
chore(batcher): impl default to ExecutionConfig for addition to Batch…
Browse files Browse the repository at this point in the history
…erConfig
  • Loading branch information
ayeletstarkware committed Oct 14, 2024
1 parent 3b2d9f8 commit c573f0b
Show file tree
Hide file tree
Showing 6 changed files with 58 additions and 21 deletions.
19 changes: 1 addition & 18 deletions crates/batcher/src/batcher.rs
Original file line number Diff line number Diff line change
@@ -1,16 +1,11 @@
use std::collections::HashMap;
use std::sync::Arc;

use blockifier::blockifier::config::TransactionExecutorConfig;
use blockifier::bouncer::BouncerConfig;
use blockifier::context::ChainInfo;
use blockifier::state::global_cache::GlobalContractCache;
use blockifier::versioned_constants::VersionedConstantsOverrides;
#[cfg(test)]
use mockall::automock;
use papyrus_storage::state::StateStorageReader;
use starknet_api::block::BlockNumber;
use starknet_api::core::ContractAddress;
use starknet_api::executable_transaction::Transaction;
use starknet_batcher_types::batcher_types::{
BatcherResult,
Expand Down Expand Up @@ -123,19 +118,7 @@ pub fn create_batcher(config: BatcherConfig, mempool_client: SharedMempoolClient
.expect("Failed to open batcher's storage");

// TODO(Arni): use real config - add as part of batcher config.
let execution_config = ExecutionConfig {
chain_info: ChainInfo::default(),
execute_config: TransactionExecutorConfig::default(),
bouncer_config: BouncerConfig::empty(),
sequencer_address: ContractAddress::default(),
use_kzg_da: true,
tx_chunk_size: 100,
versioned_constants_overrides: VersionedConstantsOverrides {
validate_max_n_steps: 1000000,
max_recursion_depth: 50,
invoke_tx_max_n_steps: 4000000,
},
};
let execution_config = ExecutionConfig::default();
let cache_size = 100;

let block_builder_factory = Arc::new(BlockBuilderFactory {
Expand Down
14 changes: 14 additions & 0 deletions crates/batcher/src/block_builder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,20 @@ pub struct ExecutionConfig {
pub versioned_constants_overrides: VersionedConstantsOverrides,
}

impl Default for ExecutionConfig {
fn default() -> Self {
Self {
chain_info: ChainInfo::default(),
execute_config: TransactionExecutorConfig::default(),
bouncer_config: BouncerConfig::default(),
sequencer_address: ContractAddress::default(),
use_kzg_da: true,
tx_chunk_size: 100,
versioned_constants_overrides: VersionedConstantsOverrides::default(),
}
}
}

#[async_trait]
impl BlockBuilderTrait for BlockBuilder {
async fn build_block(
Expand Down
2 changes: 1 addition & 1 deletion crates/blockifier/src/blockifier/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ impl TransactionExecutorConfig {
}
}

#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)]
#[derive(Clone, Default, Debug, Deserialize, PartialEq, Serialize)]
pub struct ConcurrencyConfig {
pub enabled: bool,
pub n_workers: usize,
Expand Down
32 changes: 31 additions & 1 deletion crates/blockifier/src/bouncer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ macro_rules! impl_checked_sub {

pub type HashMapWrapper = HashMap<BuiltinName, usize>;

#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]
#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)]
pub struct BouncerConfig {
pub block_max_capacity: BouncerWeights,
}
Expand Down Expand Up @@ -129,6 +129,19 @@ impl BouncerWeights {
}
}

impl Default for BouncerWeights {
fn default() -> Self {
Self {
gas: 2500000,
n_steps: 2500000,
message_segment_length: 3750,
n_events: 5000,
state_diff_size: 4000,
builtin_count: BuiltinCount::default(),
}
}
}

impl std::fmt::Display for BouncerWeights {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(
Expand Down Expand Up @@ -275,6 +288,23 @@ impl std::fmt::Display for BuiltinCount {
}
}

impl Default for BuiltinCount {
fn default() -> Self {
Self {
add_mod: 156250,
bitwise: 39062,
ecdsa: 1220,
ec_op: 2441,
keccak: 1220,
mul_mod: 156250,
pedersen: 78125,
poseidon: 78125,
range_check: 156250,
range_check96: 156250,
}
}
}

#[derive(Debug, PartialEq)]
#[cfg_attr(test, derive(Clone))]
pub struct Bouncer {
Expand Down
2 changes: 1 addition & 1 deletion crates/blockifier/src/test_utils/transfers_generator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ impl Default for TransfersGeneratorConfig {
cairo_version: CAIRO_VERSION,
tx_version: TRANSACTION_VERSION,
recipient_generator_type: RECIPIENT_GENERATOR_TYPE,
concurrency_config: ConcurrencyConfig::default(),
concurrency_config: ConcurrencyConfig::create_for_testing(false),
}
}
}
Expand Down
10 changes: 10 additions & 0 deletions crates/blockifier/src/versioned_constants.rs
Original file line number Diff line number Diff line change
Expand Up @@ -859,3 +859,13 @@ pub struct VersionedConstantsOverrides {
pub max_recursion_depth: usize,
pub invoke_tx_max_n_steps: u32,
}

impl Default for VersionedConstantsOverrides {
fn default() -> Self {
Self {
validate_max_n_steps: 1000000,
max_recursion_depth: 50,
invoke_tx_max_n_steps: 10000000,
}
}
}

0 comments on commit c573f0b

Please sign in to comment.