-
Notifications
You must be signed in to change notification settings - Fork 269
Organize and remove legacy options #1220
Copy link
Copy link
Closed
Labels
Component: MainComposing the core Shadow executableComposing the core Shadow executableType: MaintenanceRefactoring, cleanup, documenation, or process improvementsRefactoring, cleanup, documenation, or process improvements
Description
We've collected a set of options that may be rarely used. As we are migrating to a new option and config format for Shadow 2.0, we are going to remove legacy options that we don't think are that useful for most users.
Here are the legacy options I am pretty confident we can remove:
Simulation Examples
--test Run basic benchmark tests
--tgen PLACEHOLDER - Run basic data transfer simulation
System Options
--cpu-precision=TIME round measured CPU delays to the nearest TIME, in microseconds (negative value to disable fuzzy CPU delays) [200]
--cpu-threshold=TIME TIME delay threshold after which the CPU becomes blocked, in microseconds (negative value to disable CPU delays) (experimental!) [-1]
--tcp-ssthresh=N Set TCP ssthresh value instead of discovering it via packet loss or hystart [0]
--tcp-windows=N Initialize the TCP send, receive, and congestion windows to N packets [10]
Application Options:
-p, --preload=VALUE LD_PRELOAD environment VALUE to use for function interposition (/path/to/lib:...) [None]
I'm less confident about these, and we might want to keep them around. How about we move them to the "Experimental" section?
System Options
--interface-batch=TIME Batch TIME for network interface sends and receives, in microseconds [5000]
--interface-buffer=N Size of the network interface receive buffer, in bytes [1024000]
--interface-qdisc=QDISC The interface queuing discipline QDISC used to select the next sendable socket ('fifo' or 'rr') ['fifo']
--socket-recv-buffer=N Initialize the socket receive buffer to N bytes [174760]
--socket-send-buffer=N Initialize the socket send buffer to N bytes [131072]
These we do want, but I would move them to the "Experimental" section too:
Application Options:
-r, --runahead=TIME If set, overrides the automatically calculated minimum TIME workers may run ahead when sending events between nodes, in milliseconds [0]
-t, --scheduler-policy=SPOL The event scheduler's policy for thread synchronization ('thread', 'host', 'steal', 'threadXthread', 'threadXhost') ['steal']
-n, --interpose-method=METHOD Which interposition method to use ('hybrid', 'preload', 'ptrace') ['ptrace']
-z, --pin-cpus Use experimental CPU pinning
I think those options not listed here are still useful to keep.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Component: MainComposing the core Shadow executableComposing the core Shadow executableType: MaintenanceRefactoring, cleanup, documenation, or process improvementsRefactoring, cleanup, documenation, or process improvements