Youngjoon Lee
39491f30b7
opt-level max
2024-08-17 21:38:53 +09:00
Youngjoon Lee
a7ed744783
have msg_interval separate with transmission_interval
2024-08-17 21:35:03 +09:00
Youngjoon Lee
df72a01837
minimize mem usages
2024-08-17 09:37:17 +09:00
Youngjoon Lee
c60bde5a35
enhance logs
2024-08-17 09:00:40 +09:00
Youngjoon Lee
70d85a591f
do not use HashMap to make the result 100% deterministic
2024-08-17 08:39:03 +09:00
Youngjoon Lee
cd35121d5e
add queues
2024-08-17 03:41:46 +09:00
Youngjoon Lee
c7ac0340a3
use tokio for multithreading
2024-08-17 01:44:10 +09:00
Youngjoon Lee
c7b83c813d
paramset, args, csv
2024-08-17 00:24:26 +09:00
Youngjoon Lee
bd00f9dd3a
wip: working version
2024-08-16 20:56:16 +09:00
Youngjoon Lee
dbf1b78134
optimize: use generic for messages to reduce the size of msg cache in gossip and discard serde cost
2024-08-15 02:49:45 +09:00
Youngjoon Lee
3a2f3cc079
optimization: remove cache entry if the message has been received from all adjacent peers in the end
2024-08-14 16:52:18 +09:00
Youngjoon Lee
5aeecf45d9
fix optimization: put right messages to cache in nomssip
2024-08-14 16:40:52 +09:00
Youngjoon Lee
618705e252
use only transmission_rate=1 in session2.1 and ignore min_queue_size for some queue types when building paramsets
2024-08-14 11:55:17 +09:00
Youngjoon Lee
4bd1f5f159
fix: queuesim_stats: filter out topology csv files
2024-08-14 11:29:04 +09:00
Youngjoon Lee
bedf9b2ef3
store topology to csv file
2024-08-13 01:26:57 +09:00
Youngjoon Lee
befb52d014
optimize: exclude the node who sent the message when gossiping the message
2024-08-13 01:14:27 +09:00
Youngjoon Lee
c60039963f
optimize: mark messages as RECEIVED immediately in the publisher node when the messages are published
2024-08-13 01:02:16 +09:00
Youngjoon Lee
aebc0459b5
add more columns to iteration result csv files
2024-08-13 00:40:31 +09:00
Youngjoon Lee
8bfbabed15
use __WIP__ filename prefix for WIP paramsets and iterations
2024-08-13 00:35:54 +09:00
Youngjoon Lee
495b633837
refactor: rename _mix_pool_size -> _min_pool_size
2024-08-12 11:07:24 +09:00
Youngjoon Lee
cefe352402
add buffering for csv.writer
2024-08-12 11:01:59 +09:00
Youngjoon Lee
d5d94ca3e5
add session 2.1
2024-08-08 15:14:30 +09:00
Youngjoon Lee
ff5baa4bfe
add --num-workers arg
2024-08-08 15:04:54 +09:00
Youngjoon Lee
156bff6ddc
measure iteration duration
2024-08-08 14:41:58 +09:00
Youngjoon Lee
dc79540e15
add benchmark for finding the optimal number of workers
2024-08-08 14:05:16 +09:00
Youngjoon Lee
8a16d63131
store iteration result into csv gradually, and add queuesim_stats CLI to merge all iterations of all paramsets
2024-08-08 13:37:09 +09:00
Youngjoon Lee
00c058528d
remove unused imports
2024-08-07 22:36:21 +09:00
Youngjoon Lee
4b1da729bc
continue even if iteration failed, after saving err file
2024-08-07 08:27:31 +09:00
Youngjoon Lee
c93324da55
try-catch
2024-08-07 07:59:56 +09:00
Youngjoon Lee
301c3e5be4
add cross-experiment plots
2024-08-05 22:10:34 +09:00
Youngjoon Lee
d26c5aa272
update test code for session 2
2024-08-02 22:32:50 +09:00
Youngjoon Lee
1477ba75e5
use only n-1 cores
2024-08-02 22:28:46 +09:00
Youngjoon Lee
6a7146cc80
session 2 for experiment 4
2024-08-02 22:24:25 +09:00
Youngjoon Lee
3d14319588
Targeted experiments for queuing mechanism
...
Targeted experiments for queuing mechanism
gather series into dataframe
put exp_id to the CSV path
revert iterations back to num_nodes/2
add missing print and decrease msg_interval_sec
change param sequence for readability
use struct instead of pickle for fixed-size & faster serde
include dtime series into dataframe
optimize: choose optimized connection type according to latency setting
add skip_sending_noise option
optimize filling up the queue with noises
move queue_type to the end of param set, and build CSV gradually row by row
fix: consider num_senders when waiting until all messages are disseminated
fix: sample senders without duplicate
fix: build param combinations correctly
add plot script
initialize MinSizeMixQueue with noises
define SessionParameterSet and add paramset for session2
improve topology connectivity check to avoid "maxmimum recursions depth exceeded" error
fix: the correct parameter set constructor
store individual series to separate CSV files
reorganize files and draw plot automatically
start series file id from 1 (not 0)
add queue_type CLI argument for parallelization
pretty format of elapsed time
pretty format of elapsed time
add merge CLI and draw multiple plots
split functions
do not draw plot for each session
use concurrent.futures to utilize multiprocessing
add from_paramset argument
fix: count num of finished iterations correctly
draw plots for num_sent_msgs and num_senders for specific experiments
2024-08-02 11:38:17 +09:00
Youngjoon Lee
39eabe1537
Mixnet: Initial simulation ( #6 )
2024-08-01 11:07:52 +09:00
Alvatar
537f86f53f
Deprecate Carnot node ( #8 )
...
Co-authored-by: Álvaro Castro-Castilla <alvatar@protonmail.com>
2024-07-19 09:25:20 +03:00
gusto
6a24875b48
Move node simulations into a dedicated directory ( #5 )
2024-07-16 15:34:59 +03:00
gusto
d8fc6110cd
CSV results for updated test cases ( #3 )
2023-08-19 09:55:30 +03:00
gusto
bb88434ae6
Test case results ( #2 )
...
* Add test results for all test cases
* Increase template stalled threshold
2023-08-18 11:29:05 +03:00
gusto
02a82a421b
Run all configs without log parsing from simapp ( #1 )
2023-08-16 11:11:16 +03:00
gusto
ad86cd0495
Create README.md
2023-08-15 22:44:08 +03:00
Gusto
7b188012fa
Update data_to_csv to convert provided dir to csv
2023-08-15 13:34:11 +03:00
Gusto
c03bc400eb
Tree overlay configurations and output
2023-08-15 09:56:48 +03:00
Gusto
4c257a5ba3
Add stalled warding to template
2023-08-15 09:39:42 +03:00
Gusto
80cdbbda21
Running simulations for all configs
2023-08-15 02:37:09 +03:00
Gusto
b8652c67a9
Script for converting output to csv
2023-08-15 02:36:22 +03:00
Gusto
f6ae008e40
Use python for scripts
2023-08-15 02:35:38 +03:00
Gusto
99ec9cec32
Scripts for building config variations
2023-08-14 22:25:09 +03:00