Skip to content

Set default min runahead to 1ms#1711

Merged
robgjansen merged 1 commit intoshadow:mainfrom
robgjansen:default-runahead
Oct 11, 2021
Merged

Set default min runahead to 1ms#1711
robgjansen merged 1 commit intoshadow:mainfrom
robgjansen:default-runahead

Conversation

@robgjansen
Copy link
Copy Markdown
Member

Larger values for the --runahead option improves our ability to parallelize work across workers, leading to faster run-times. 1 millisecond was the lowest possible minimum in Shadow 1.x, and I think a reasonable default since most latencies for our target networks are in terms of milliseconds.

refs #1699

@robgjansen
Copy link
Copy Markdown
Member Author

Effect on Shadow performance in a 10% Tor network when adjusting --runahead:
run_time_runahead

We might also consider increasing to larger than 1ms - I do not notice Tor performance changes that could be attributed to changing the runahead to 1ms or 2ms.

@github-actions github-actions bot added Component: Documentation In-repository documentation, under docs/ Component: Main Composing the core Shadow executable labels Oct 10, 2021
@codecov
Copy link
Copy Markdown

codecov bot commented Oct 10, 2021

Codecov Report

Merging #1711 (487c476) into main (4718871) will increase coverage by 0.00%.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #1711   +/-   ##
=======================================
  Coverage   54.46%   54.47%           
=======================================
  Files         144      144           
  Lines       18940    18940           
  Branches     4551     4551           
=======================================
+ Hits        10316    10317    +1     
- Misses       5869     5870    +1     
+ Partials     2755     2753    -2     
Flag Coverage Δ
tests 54.47% <ø> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
src/main/host/syscall/mman.c 65.15% <0.00%> (-2.28%) ⬇️
...main/core/scheduler/scheduler_policy_host_single.c 72.97% <0.00%> (-0.68%) ⬇️
src/main/core/scheduler/scheduler.c 74.34% <0.00%> (-0.53%) ⬇️
src/main/host/syscall/socket.c 78.63% <0.00%> (-0.15%) ⬇️
src/main/host/network_interface.c 71.91% <0.00%> (+0.28%) ⬆️
src/main/core/controller.c 66.42% <0.00%> (+0.36%) ⬆️
src/main/host/descriptor/descriptor.c 73.93% <0.00%> (+0.60%) ⬆️
src/main/host/descriptor/epoll.c 75.80% <0.00%> (+0.64%) ⬆️
src/test/futex/test_futex.c 65.26% <0.00%> (+1.05%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4718871...487c476. Read the comment docs.

@robgjansen robgjansen merged commit 06d9d8d into shadow:main Oct 11, 2021
@robgjansen robgjansen deleted the default-runahead branch October 11, 2021 15:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Component: Documentation In-repository documentation, under docs/ Component: Main Composing the core Shadow executable

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants