What's happening in Shadow 2021-04 #1274
sporksmith
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
This is part of a series of periodic updates of development in Shadow. This work is sponsored by the NSF. Previous update: 2020-12
We're approaching release of a new version of Shadow with our new process-based architecture! With the new architecture, Shadow is now capable of running Tor simulations using unmodified
tor
binaries, faster and using less RAM than the latest production release! Although our work on the new architecture is available in our dev branch, we don't recommend using it quite yet; in particular, we plan to rework some of the command-line and configuration options before an official release in order to make Shadow more pleasant to use. We are targeting an official release within the next 1-2 months.In the meantime, here are some of the major changes we have made in the last few months:
Functionality:
get_robust_list
andset_robust_list
syscalls #1260) before release.Performance:
LD_PRELOAD
d shim, saving a context switch to Shadow and back (Handle hot-path time syscalls in the shim #1224).waitpid
in Linux is unexpectedly O(n) instead of O(1) in Linux, leading to quadratic overhead in Shadow simulations (waitpid is O(# children), resulting in O((# sim processes)^2) in thread_ptrace #1134). We've submitted a patch to the Linux maintainers to makewaitpid
O(1).Code health:
pipe()
in Rust #1068).dev
branch (Run small Tor network as part of CI tests #1184) using all supported versions of tor (we were already doing so inmain
).Happy simulating!
The Shadow team
Beta Was this translation helpful? Give feedback.
All reactions