This commit is contained in:
Youngjoon Lee 2025-02-10 10:09:59 +09:00
parent c446671e7e
commit f6b761a169
No known key found for this signature in database
GPG Key ID: 303963A54A81DD4D
5 changed files with 374 additions and 7 deletions

40
simlib/batch.sh Normal file
View File

@ -0,0 +1,40 @@
#!/bin/bash
set -euxo pipefail
CONFIG_DIR="./blendnet-sims/config"
OUT_DIR="./out"
if [[ ! -d $CONFIG_DIR ]]; then
echo "Config directory not found: $CONFIG_DIR"
exit 1
fi
if [[ -d $OUT_DIR ]]; then
echo "outdir already exists: $OUT_DIR"
exit 1
fi
mkdir $OUT_DIR
for config_file in "$CONFIG_DIR"/*.json; do
# Skip if no JSON files exist
[[ -e "$config_file" ]] || continue
# Extract filename without extension
filename=$(basename -- "$config_file" .json)
log_path=${OUT_DIR}/${filename}.log
cargo run --release -- run --input-settings $config_file > $log_path
step_duration=$(cat $config_file | jq '.step_time' | sed 's|"||g')
latency_output_path=${OUT_DIR}/${filename}_latency.json
cargo run --release -- analyze latency --log-file ${log_path} --step-duration ${step_duration} | jq > $latency_output_path
min_payload_id=$(cat $latency_output_path | jq '.message.min_payload_id' | sed 's|"||g')
min_history_path=${OUT_DIR}/${filename}_min_history.json
cargo run --release -- analyze message-history --log-file ${log_path} --step-duration ${step_duration} --payload-id ${min_payload_id} | jq > $min_history_path
max_payload_id=$(cat $latency_output_path | jq '.message.max_payload_id' | sed 's|"||g')
max_history_path=${OUT_DIR}/${filename}_max_history.json
cargo run --release -- analyze message-history --log-file ${log_path} --step-duration ${step_duration} --payload-id ${max_payload_id} | jq > $max_history_path
done

View File

@ -0,0 +1,109 @@
{
"network_settings": {
"network_behaviors": {
"north america west:north america west": "40ms",
"north america west:north america east": "70ms",
"north america west:north america central": "50ms",
"north america west:europe": "150ms",
"north america west:northern europe": "170ms",
"north america west:east asia": "180ms",
"north america west:southeast asia": "200ms",
"north america west:australia": "250ms",
"north america east:north america west": "70ms",
"north america east:north america east": "40ms",
"north america east:north america central": "50ms",
"north america east:europe": "130ms",
"north america east:northern europe": "140ms",
"north america east:east asia": "250ms",
"north america east:southeast asia": "300ms",
"north america east:australia": "230ms",
"north america central:north america west": "50ms",
"north america central:north america east": "50ms",
"north america central:north america central": "20ms",
"north america central:europe": "140ms",
"north america central:northern europe": "150ms",
"north america central:east asia": "200ms",
"north america central:southeast asia": "280ms",
"north america central:australia": "220ms",
"europe:north america west": "150ms",
"europe:north america east": "130ms",
"europe:north america central": "140ms",
"europe:europe": "50ms",
"europe:northern europe": "60ms",
"europe:east asia": "300ms",
"europe:southeast asia": "300ms",
"europe:australia": "300ms",
"northern europe:north america west": "170ms",
"northern europe:north america east": "140ms",
"northern europe:north america central": "150ms",
"northern europe:europe": "60ms",
"northern europe:northern europe": "30ms",
"northern europe:east asia": "400ms",
"northern europe:southeast asia": "320ms",
"northern europe:australia": "300ms",
"east asia:north america west": "180ms",
"east asia:north america east": "250ms",
"east asia:north america central": "200ms",
"east asia:europe": "300ms",
"east asia:northern europe": "400ms",
"east asia:east asia": "50ms",
"east asia:southeast asia": "90ms",
"east asia:australia": "150ms",
"southeast asia:north america west": "200ms",
"southeast asia:north america east": "300ms",
"southeast asia:north america central": "280ms",
"southeast asia:europe": "300ms",
"southeast asia:northern europe": "320ms",
"southeast asia:east asia": "90ms",
"southeast asia:southeast asia": "40ms",
"southeast asia:australia": "150ms",
"australia:north america west": "250ms",
"australia:north america east": "230ms",
"australia:north america central": "220ms",
"australia:europe": "300ms",
"australia:northern europe": "300ms",
"australia:east asia": "150ms",
"australia:southeast asia": "150ms",
"australia:australia": "50ms"
},
"regions": {
"north america west": 0.00,
"north america east": 0.00,
"north america central": 0.00,
"europe": 1.0,
"northern europe": 0.00,
"east asia": 0.00,
"southeast asia": 0.00,
"australia": 0.00
}
},
"node_settings": {
"timeout": "1000ms"
},
"step_time": "10ms",
"runner_settings": "Sync",
"stream_settings": {
"path": "test.json"
},
"node_count": 1000,
"seed": 0,
"record_settings": {},
"wards": [
{
"sum": 1000
}
],
"connected_peers_count": 6,
"data_message_lottery_interval": "20s",
"stake_proportion": 0.0,
"epoch_duration": "3000s",
"slot_duration": "1s",
"slots_per_epoch": 3000,
"number_of_hops": 3,
"persistent_transmission": {
"max_emission_frequency": 1.0,
"drop_message_probability": 0.0
},
"number_of_blend_layers": 3,
"max_delay_seconds": 0
}

View File

@ -0,0 +1,109 @@
{
"network_settings": {
"network_behaviors": {
"north america west:north america west": "40ms",
"north america west:north america east": "70ms",
"north america west:north america central": "50ms",
"north america west:europe": "150ms",
"north america west:northern europe": "170ms",
"north america west:east asia": "180ms",
"north america west:southeast asia": "200ms",
"north america west:australia": "250ms",
"north america east:north america west": "70ms",
"north america east:north america east": "40ms",
"north america east:north america central": "50ms",
"north america east:europe": "130ms",
"north america east:northern europe": "140ms",
"north america east:east asia": "250ms",
"north america east:southeast asia": "300ms",
"north america east:australia": "230ms",
"north america central:north america west": "50ms",
"north america central:north america east": "50ms",
"north america central:north america central": "20ms",
"north america central:europe": "140ms",
"north america central:northern europe": "150ms",
"north america central:east asia": "200ms",
"north america central:southeast asia": "280ms",
"north america central:australia": "220ms",
"europe:north america west": "150ms",
"europe:north america east": "130ms",
"europe:north america central": "140ms",
"europe:europe": "50ms",
"europe:northern europe": "60ms",
"europe:east asia": "300ms",
"europe:southeast asia": "300ms",
"europe:australia": "300ms",
"northern europe:north america west": "170ms",
"northern europe:north america east": "140ms",
"northern europe:north america central": "150ms",
"northern europe:europe": "60ms",
"northern europe:northern europe": "30ms",
"northern europe:east asia": "400ms",
"northern europe:southeast asia": "320ms",
"northern europe:australia": "300ms",
"east asia:north america west": "180ms",
"east asia:north america east": "250ms",
"east asia:north america central": "200ms",
"east asia:europe": "300ms",
"east asia:northern europe": "400ms",
"east asia:east asia": "50ms",
"east asia:southeast asia": "90ms",
"east asia:australia": "150ms",
"southeast asia:north america west": "200ms",
"southeast asia:north america east": "300ms",
"southeast asia:north america central": "280ms",
"southeast asia:europe": "300ms",
"southeast asia:northern europe": "320ms",
"southeast asia:east asia": "90ms",
"southeast asia:southeast asia": "40ms",
"southeast asia:australia": "150ms",
"australia:north america west": "250ms",
"australia:north america east": "230ms",
"australia:north america central": "220ms",
"australia:europe": "300ms",
"australia:northern europe": "300ms",
"australia:east asia": "150ms",
"australia:southeast asia": "150ms",
"australia:australia": "50ms"
},
"regions": {
"north america west": 0.00,
"north america east": 0.00,
"north america central": 0.00,
"europe": 1.0,
"northern europe": 0.00,
"east asia": 0.00,
"southeast asia": 0.00,
"australia": 0.00
}
},
"node_settings": {
"timeout": "1000ms"
},
"step_time": "10ms",
"runner_settings": "Sync",
"stream_settings": {
"path": "test.json"
},
"node_count": 1000,
"seed": 0,
"record_settings": {},
"wards": [
{
"sum": 1000
}
],
"connected_peers_count": 6,
"data_message_lottery_interval": "20s",
"stake_proportion": 0.0,
"epoch_duration": "3000s",
"slot_duration": "1s",
"slots_per_epoch": 3000,
"number_of_hops": 3,
"persistent_transmission": {
"max_emission_frequency": 1.0,
"drop_message_probability": 0.0
},
"number_of_blend_layers": 3,
"max_delay_seconds": 5
}

View File

@ -0,0 +1,109 @@
{
"network_settings": {
"network_behaviors": {
"north america west:north america west": "40ms",
"north america west:north america east": "70ms",
"north america west:north america central": "50ms",
"north america west:europe": "150ms",
"north america west:northern europe": "170ms",
"north america west:east asia": "180ms",
"north america west:southeast asia": "200ms",
"north america west:australia": "250ms",
"north america east:north america west": "70ms",
"north america east:north america east": "40ms",
"north america east:north america central": "50ms",
"north america east:europe": "130ms",
"north america east:northern europe": "140ms",
"north america east:east asia": "250ms",
"north america east:southeast asia": "300ms",
"north america east:australia": "230ms",
"north america central:north america west": "50ms",
"north america central:north america east": "50ms",
"north america central:north america central": "20ms",
"north america central:europe": "140ms",
"north america central:northern europe": "150ms",
"north america central:east asia": "200ms",
"north america central:southeast asia": "280ms",
"north america central:australia": "220ms",
"europe:north america west": "150ms",
"europe:north america east": "130ms",
"europe:north america central": "140ms",
"europe:europe": "50ms",
"europe:northern europe": "60ms",
"europe:east asia": "300ms",
"europe:southeast asia": "300ms",
"europe:australia": "300ms",
"northern europe:north america west": "170ms",
"northern europe:north america east": "140ms",
"northern europe:north america central": "150ms",
"northern europe:europe": "60ms",
"northern europe:northern europe": "30ms",
"northern europe:east asia": "400ms",
"northern europe:southeast asia": "320ms",
"northern europe:australia": "300ms",
"east asia:north america west": "180ms",
"east asia:north america east": "250ms",
"east asia:north america central": "200ms",
"east asia:europe": "300ms",
"east asia:northern europe": "400ms",
"east asia:east asia": "50ms",
"east asia:southeast asia": "90ms",
"east asia:australia": "150ms",
"southeast asia:north america west": "200ms",
"southeast asia:north america east": "300ms",
"southeast asia:north america central": "280ms",
"southeast asia:europe": "300ms",
"southeast asia:northern europe": "320ms",
"southeast asia:east asia": "90ms",
"southeast asia:southeast asia": "40ms",
"southeast asia:australia": "150ms",
"australia:north america west": "250ms",
"australia:north america east": "230ms",
"australia:north america central": "220ms",
"australia:europe": "300ms",
"australia:northern europe": "300ms",
"australia:east asia": "150ms",
"australia:southeast asia": "150ms",
"australia:australia": "50ms"
},
"regions": {
"north america west": 0.06,
"north america east": 0.15,
"north america central": 0.02,
"europe": 0.47,
"northern europe": 0.10,
"east asia": 0.10,
"southeast asia": 0.07,
"australia": 0.03
}
},
"node_settings": {
"timeout": "1000ms"
},
"step_time": "10ms",
"runner_settings": "Sync",
"stream_settings": {
"path": "test.json"
},
"node_count": 1000,
"seed": 0,
"record_settings": {},
"wards": [
{
"sum": 1000
}
],
"connected_peers_count": 6,
"data_message_lottery_interval": "20s",
"stake_proportion": 0.0,
"epoch_duration": "3000s",
"slot_duration": "1s",
"slots_per_epoch": 3000,
"number_of_hops": 3,
"persistent_transmission": {
"max_emission_frequency": 1.0,
"drop_message_probability": 0.0
},
"number_of_blend_layers": 3,
"max_delay_seconds": 0
}

View File

@ -85,25 +85,25 @@
"stream_settings": {
"path": "test.json"
},
"node_count": 100,
"node_count": 1000,
"seed": 0,
"record_settings": {},
"wards": [
{
"sum": 100
"sum": 1000
}
],
"connected_peers_count": 4,
"connected_peers_count": 6,
"data_message_lottery_interval": "20s",
"stake_proportion": 0.0,
"epoch_duration": "200s",
"epoch_duration": "3000s",
"slot_duration": "1s",
"slots_per_epoch": 200,
"number_of_hops": 2,
"slots_per_epoch": 3000,
"number_of_hops": 3,
"persistent_transmission": {
"max_emission_frequency": 1.0,
"drop_message_probability": 0.0
},
"number_of_blend_layers": 2,
"number_of_blend_layers": 3,
"max_delay_seconds": 5
}