Skip to content

Commit

Permalink
chore(starknet_committer_and_os_cli): rename committer_cli to committ…
Browse files Browse the repository at this point in the history
…er_and_os_cli
  • Loading branch information
amosStarkware committed Feb 2, 2025
1 parent 6230a33 commit 653864b
Show file tree
Hide file tree
Showing 33 changed files with 73 additions and 72 deletions.
34 changes: 18 additions & 16 deletions .github/workflows/committer_ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ on:
- '.github/workflows/committer_ci.yml'
- 'Cargo.toml'
- 'Cargo.lock'
- 'crates/committer_cli/**'
- 'crates/starknet_committer_and_os_cli/**'
- 'crates/starknet_api/**'
- 'crates/starknet_committer/**'
- 'crates/starknet_patricia/**'
Expand Down Expand Up @@ -43,13 +43,15 @@ jobs:
with:
credentials_json: ${{ secrets.COMMITER_PRODUCTS_EXT_WRITER_JSON }}
- uses: 'google-github-actions/setup-gcloud@v2'
- run: echo "BENCH_INPUT_FILES_PREFIX=$(cat ./crates/committer_cli/src/tests/flow_test_files_prefix)" >> $GITHUB_ENV
- run: gcloud storage cp -r gs://committer-testing-artifacts/$BENCH_INPUT_FILES_PREFIX/* ./crates/committer_cli/test_inputs
- run: cargo test -p committer_cli --release -- --include-ignored test_regression
- run: echo "BENCH_INPUT_FILES_PREFIX=$(cat ./crates/starknet_committer_and_os_cli/src/tests/flow_test_files_prefix)" >> $GITHUB_ENV
- run: gcloud storage cp -r gs://committer-testing-artifacts/$BENCH_INPUT_FILES_PREFIX/* ./crates/starknet_committer_and_os_cli/test_inputs
- run: cargo test -p starknet_committer_and_os_cli --release -- --include-ignored test_regression

benchmarking:
runs-on: starkware-ubuntu-latest-medium
if: ${{ github.event_name == 'pull_request' }}
# if: ${{ github.event_name == 'pull_request' }}
# TODO(Amos): Turn on benchmarking once finished renaming.
if: false
steps:
# Checkout the base branch to get the old code.
- uses: actions/checkout@v4
Expand All @@ -63,39 +65,39 @@ jobs:
with:
credentials_json: ${{ secrets.COMMITER_PRODUCTS_EXT_WRITER_JSON }}
- uses: 'google-github-actions/setup-gcloud@v2'
- run: echo "OLD_BENCH_INPUT_FILES_PREFIX=$(cat ./crates/committer_cli/src/tests/flow_test_files_prefix)" >> $GITHUB_ENV
- run: gcloud storage cp -r gs://committer-testing-artifacts/$OLD_BENCH_INPUT_FILES_PREFIX/* ./crates/committer_cli/test_inputs
- run: echo "OLD_BENCH_INPUT_FILES_PREFIX=$(cat ./crates/starknet_committer_and_os_cli/src/tests/flow_test_files_prefix)" >> $GITHUB_ENV
- run: gcloud storage cp -r gs://committer-testing-artifacts/$OLD_BENCH_INPUT_FILES_PREFIX/* ./crates/starknet_committer_and_os_cli/test_inputs

# List the existing benchmarks.
- run: |
cargo bench -p committer_cli -- --list | grep ': benchmark$' | sed -e "s/: benchmark$//" > benchmarks_list.txt
cargo bench -p starknet_committer_and_os_cli -- --list | grep ': benchmark$' | sed -e "s/: benchmark$//" > benchmarks_list.txt
# Benchmark the old code.
- run: cargo bench -p committer_cli
- run: cargo bench -p starknet_committer_and_os_cli

# Backup the downloaded files to avoid re-downloading them if they didn't change (overwritten by checkout).
- run: mv ./crates/committer_cli/test_inputs/tree_flow_inputs.json ./crates/committer_cli/test_inputs/tree_flow_inputs.json_bu
- run: mv ./crates/committer_cli/test_inputs/committer_flow_inputs.json ./crates/committer_cli/test_inputs/committer_flow_inputs.json_bu
- run: mv ./crates/starknet_committer_and_os_cli/test_inputs/tree_flow_inputs.json ./crates/starknet_committer_and_os_cli/test_inputs/tree_flow_inputs.json_bu
- run: mv ./crates/starknet_committer_and_os_cli/test_inputs/committer_flow_inputs.json ./crates/starknet_committer_and_os_cli/test_inputs/committer_flow_inputs.json_bu

# Checkout the new code.
- uses: actions/checkout@v4
with:
clean: false
- run: echo "NEW_BENCH_INPUT_FILES_PREFIX=$(cat ./crates/committer_cli/src/tests/flow_test_files_prefix)" >> $GITHUB_ENV
- run: echo "NEW_BENCH_INPUT_FILES_PREFIX=$(cat ./crates/starknet_committer_and_os_cli/src/tests/flow_test_files_prefix)" >> $GITHUB_ENV

# Input files didn't change.
- if: env.OLD_BENCH_INPUT_FILES_PREFIX == env.NEW_BENCH_INPUT_FILES_PREFIX
run: |
mv ./crates/committer_cli/test_inputs/tree_flow_inputs.json_bu ./crates/committer_cli/test_inputs/tree_flow_inputs.json
mv ./crates/committer_cli/test_inputs/committer_flow_inputs.json_bu ./crates/committer_cli/test_inputs/committer_flow_inputs.json
mv ./crates/starknet_committer_and_os_cli/test_inputs/tree_flow_inputs.json_bu ./crates/starknet_committer_and_os_cli/test_inputs/tree_flow_inputs.json
mv ./crates/starknet_committer_and_os_cli/test_inputs/committer_flow_inputs.json_bu ./crates/starknet_committer_and_os_cli/test_inputs/committer_flow_inputs.json
# Input files did change, download new inputs.
- if: env.OLD_BENCH_INPUT_FILES_PREFIX != env.NEW_BENCH_INPUT_FILES_PREFIX
run: |
gcloud storage cp -r gs://committer-testing-artifacts/$NEW_BENCH_INPUT_FILES_PREFIX/* ./crates/committer_cli/test_inputs
gcloud storage cp -r gs://committer-testing-artifacts/$NEW_BENCH_INPUT_FILES_PREFIX/* ./crates/starknet_committer_and_os_cli/test_inputs
# Benchmark the new code, splitting the benchmarks, and prepare the results for posting a comment.
- run: bash ./crates/committer_cli/benches/bench_split_and_prepare_post.sh benchmarks_list.txt bench_new.txt
- run: bash ./crates/starknet_committer_and_os_cli/benches/bench_split_and_prepare_post.sh benchmarks_list.txt bench_new.txt

- run: echo BENCHES_RESULT=$(cat bench_new.txt) >> $GITHUB_ENV

Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/committer_cli_push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ on:
- '.github/workflows/committer_cli_push.yml'
- 'Cargo.toml'
- 'Cargo.lock'
- 'crates/committer_cli/**'
- 'crates/starknet_committer_and_os_cli/**'
- 'crates/starknet_api/**'
- 'crates/starknet_committer/**'
- 'crates/starknet_patricia/**'
Expand All @@ -28,7 +28,7 @@ on:
- '.github/workflows/committer_cli_push.yml'
- 'Cargo.toml'
- 'Cargo.lock'
- 'crates/committer_cli/**'
- 'crates/starknet_committer_and_os_cli/**'
- 'crates/starknet_api/**'
- 'crates/starknet_committer/**'
- 'crates/starknet_patricia/**'
Expand Down Expand Up @@ -68,7 +68,7 @@ jobs:
run: echo "SHORT_HASH=${COMMIT_SHA:0:7}" >> $GITHUB_ENV

- name: Build CLI binary
run: ./build_native_in_docker.sh cargo build -p committer_cli -r --bin committer_cli --target-dir CLI_TARGET
run: ./build_native_in_docker.sh cargo build -p starknet_committer_and_os_cli -r --bin starknet_committer_and_os_cli --target-dir CLI_TARGET

- id: auth
uses: "google-github-actions/auth@v2"
Expand All @@ -79,5 +79,5 @@ jobs:
id: upload_file
uses: "google-github-actions/upload-cloud-storage@v2"
with:
path: "CLI_TARGET/release/committer_cli"
path: "CLI_TARGET/release/starknet_committer_and_os_cli"
destination: "committer-products-external/${{ env.SHORT_HASH }}/release/"
8 changes: 4 additions & 4 deletions BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
exports_files([
"target/release/libnative_blockifier.so",
"target/release/shared_executables/starknet-native-compile",
"target/debug/committer_cli",
"target/release/committer_cli",
"target/x86_64-unknown-linux-musl/debug/committer_cli",
"target/x86_64-unknown-linux-musl/release/committer_cli",
"target/debug/starknet_committer_and_os_cli",
"target/release/starknet_committer_and_os_cli",
"target/x86_64-unknown-linux-musl/debug/starknet_committer_and_os_cli",
"target/x86_64-unknown-linux-musl/release/starknet_committer_and_os_cli",
])
58 changes: 29 additions & 29 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ resolver = "2"
members = [
"crates/blockifier",
"crates/blockifier_reexecution",
"crates/committer_cli",
"crates/mempool_test_utils",
"crates/native_blockifier",
"crates/papyrus_base_layer",
Expand All @@ -33,6 +32,7 @@ members = [
"crates/starknet_class_manager_types",
"crates/starknet_client",
"crates/starknet_committer",
"crates/starknet_committer_and_os_cli",
"crates/starknet_consensus",
"crates/starknet_consensus_manager",
"crates/starknet_consensus_orchestrator",
Expand Down
2 changes: 1 addition & 1 deletion commitlint.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ const Configuration = {
'cairo_native',
'ci',
'committer',
'committer_cli',
'consensus',
'deployment',
'infra',
Expand Down Expand Up @@ -54,6 +53,7 @@ const Configuration = {
'starknet_batcher_types',
'starknet_client',
'starknet_committer',
'starknet_committer_and_os_cli',
'starknet_consensus_manager',
'starknet_consensus_orchestrator',
'starknet_class_manager',
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
[package]
# TODO(Dori, 15/8/2024): Rename to starknet_committer_cli.
name = "committer_cli"
name = "starknet_committer_and_os_cli"
version.workspace = true
edition.workspace = true
repository.workspace = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ benchmark_results=${2}
# TODO(Aner): split the output file instead.
cat ${benchmarks_list} |
while read line; do
cargo bench -p committer_cli $line > ${line}.txt;
cargo bench -p starknet_committer_and_os_cli $line > ${line}.txt;
sed -i '/'"${line}"'/,$!d' ${line}.txt;
done

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,20 @@

// This file is for benchmarking the committer flow.
// The input files for the different benchmarks are downloaded from GCS, using the prefix stored in
// committer_cli/src/tests/flow_test_files_prefix. In order to update them, generate a new random
// prefix (the hash of the initial new commit can be used) and update it in the mentioned file.
// Then upload the new files to GCS with this new prefix (run e.g.,
// starknet_committer_and_os_cli/src/tests/flow_test_files_prefix. In order to update them, generate
// a new random prefix (the hash of the initial new commit can be used) and update it in the
// mentioned file. Then upload the new files to GCS with this new prefix (run e.g.,
// gcloud storage cp LOCAL_FILE gs://committer-testing-artifacts/NEW_PREFIX/tree_flow_inputs.json).

use std::collections::HashMap;

use committer_cli::commands::commit;
use committer_cli::parse_input::read::parse_input;
use committer_cli::tests::utils::parse_from_python::TreeFlowInput;
use criterion::{criterion_group, criterion_main, BatchSize, Criterion};
use starknet_committer::block_committer::input::StarknetStorageValue;
use starknet_committer::hash_function::hash::TreeHashFunctionImpl;
use starknet_committer::patricia_merkle_tree::tree::OriginalSkeletonStorageTrieConfig;
use starknet_committer_and_os_cli::commands::commit;
use starknet_committer_and_os_cli::parse_input::read::parse_input;
use starknet_committer_and_os_cli::tests::utils::parse_from_python::TreeFlowInput;
use starknet_patricia::patricia_merkle_tree::external_test_utils::tree_computation_flow;
use starknet_patricia::patricia_merkle_tree::node_data::leaf::LeafModifications;
use starknet_patricia::patricia_merkle_tree::types::NodeIndex;
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
use clap::{Args, Parser, Subcommand};
use committer_cli::block_hash::{BlockCommitmentsInput, BlockHashInput};
use committer_cli::commands::parse_and_commit;
use committer_cli::parse_input::read::{load_input, read_input, write_to_file};
use committer_cli::tests::python_tests::PythonTest;
use committer_cli::tracing_utils::configure_tracing;
use starknet_api::block_hash::block_hash_calculator::{
calculate_block_commitments,
calculate_block_hash,
};
use starknet_committer_and_os_cli::block_hash::{BlockCommitmentsInput, BlockHashInput};
use starknet_committer_and_os_cli::commands::parse_and_commit;
use starknet_committer_and_os_cli::parse_input::read::{load_input, read_input, write_to_file};
use starknet_committer_and_os_cli::tests::python_tests::PythonTest;
use starknet_committer_and_os_cli::tracing_utils::configure_tracing;
use tracing::info;

/// Committer CLI.
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ use tracing_subscriber::prelude::*;
use tracing_subscriber::reload::Handle;
use tracing_subscriber::{filter, fmt, reload, Registry};

// TODO(Amos, 1/8/2024) Move all tracing instantiations in the Sequencer repo to a common location.
// TODO(Amos, 1/8/2024): Move all tracing instantiations in the Sequencer repo to a common location.
pub fn configure_tracing() -> Handle<LevelFilter, Registry> {
// Create a handle to the global filter to allow setting log level at runtime.
let (global_filter, global_filter_handle) = reload::Layer::new(filter::LevelFilter::INFO);
Expand Down
4 changes: 2 additions & 2 deletions scripts/committer/generate_committer_flamegraph.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ if ! command -v perf; then
fi

ROOT_DIR=$(git rev-parse --show-toplevel)
BENCH_INPUT_FILES_PREFIX=$(cat ${ROOT_DIR}/crates/committer_cli/src/tests/flow_test_files_prefix)
BENCH_INPUT_FILES_PREFIX=$(cat ${ROOT_DIR}/crates/starknet_committer_and_os_cli/src/tests/flow_test_files_prefix)
# Lower security level in perf_event_paranoid to 2 to allow cargo to use perf without running on root.
sudo sysctl kernel.perf_event_paranoid=2

gcloud storage cat gs://committer-testing-artifacts/${BENCH_INPUT_FILES_PREFIX}/committer_flow_inputs.json | jq -r .committer_input | CARGO_PROFILE_RELEASE_DEBUG=true cargo flamegraph -p committer_cli -- commit
gcloud storage cat gs://committer-testing-artifacts/${BENCH_INPUT_FILES_PREFIX}/committer_flow_inputs.json | jq -r .committer_input | CARGO_PROFILE_RELEASE_DEBUG=true cargo flamegraph -p starknet_committer_and_os_cli -- commit

0 comments on commit 653864b

Please sign in to comment.