diff --git a/doc/devel/dump/2023-12-09.Scheduler-Integration/Time-01 b/doc/devel/dump/2023-12-09.Scheduler-Integration/Time-01 new file mode 100644 index 000000000..906803c79 --- /dev/null +++ b/doc/devel/dump/2023-12-09.Scheduler-Integration/Time-01 @@ -0,0 +1,548 @@ +search_breaking_point +===================== + +Search for the »breaking Point« where the computation slips off schedule. + +- using a load graph with 64 nodes in a single chain +- this chain progresses for the first half with no or low concurrency +- after node-23 the graph forks out massively up to 16 nodes in parallel +- concurrency is set to 4 and the worker pool limited accordingly + +Trigger criteria: + +- more than 55% glitches with Δ > 2ms +- σ > 2ms +- ∅Δ > 4ms + +Time in single threaded computation: 33.8ms +Scheduler run time at breaking point: ~38ms +Breaking point: for stressFactor ∈ [0.47 ... 0.5] + +....·0 : t=82.5 + Δ= 0.3 ○ +....·1 : t=82.4 - Δ= 0.2 ○ +....·2 : t=82.4 - Δ= 0.3 ○ +....·3 : t=82.4 - Δ= 0.2 ○ +....·4 : t=82.5 + Δ= 0.3 ○ +....·5 : t=82.5 + Δ= 0.3 ○ +....·6 : t=82.5 + Δ= 0.3 ○ +....·7 : t=82.5 + Δ= 0.3 ○ +....·8 : t=82.4 - Δ= 0.3 ○ +....·9 : t=82.5 + Δ= 0.3 ○ +....·10: t=82.3 - Δ= 0.2 ○ +....·11: t=82.4 - Δ= 0.2 ○ +....·12: t=82.3 - Δ= 0.2 ○ +....·13: t=82.4 - Δ= 0.2 ○ +....·14: t=82.3 - Δ= 0.2 ○ +....·15: t=82.5 + Δ= 0.3 ○ +....·16: t=82.5 + Δ= 0.3 ○ +....·17: t=82.4 - Δ= 0.3 ○ +....·18: t=82.5 + Δ= 0.3 ○ +....·19: t=82.5 + Δ= 0.3 ○ +....·20: t=82.4 - Δ= 0.3 ○ +....·21: t=82.5 + Δ= 0.4 ○ +....·22: t=82.4 - Δ= 0.2 ○ +....·23: t=82.5 + Δ= 0.3 ○ +....·24: t=82.4 - Δ= 0.2 ○ +....·25: t=82.4 - Δ= 0.2 ○ +....·26: t=82.5 + Δ= 0.3 ○ +....·27: t=82.4 - Δ= 0.2 ○ +....·28: t=82.5 + Δ= 0.4 ○ +....·29: t=82.5 + Δ= 0.3 ○ +0.20| : ∅=82.4 ±0.06 ∅Δ= 0.3 %0.0 -- expect:82.2ms +....·0 : t=71.7 - Δ= 0.3 ○ +....·1 : t=71.8 - Δ= 0.3 ○ +....·2 : t=71.8 - Δ= 0.3 ○ +....·3 : t=71.7 - Δ= 0.3 ○ +....·4 : t=71.7 - Δ= 0.3 ○ +....·5 : t=72.0 + Δ= 0.6 ○ +....·6 : t=71.6 - Δ= 0.2 ○ +....·7 : t=71.8 - Δ= 0.3 ○ +....·8 : t=71.7 - Δ= 0.3 ○ +....·9 : t=71.7 - Δ= 0.2 ○ +....·10: t=72.0 + Δ= 0.5 ○ +....·11: t=72.1 + Δ= 0.6 ○ +....·12: t=72.0 + Δ= 0.5 ○ +....·13: t=72.0 + Δ= 0.5 ○ +....·14: t=72.0 + Δ= 0.5 ○ +....·15: t=72.1 + Δ= 0.6 ○ +....·16: t=71.7 - Δ= 0.3 ○ +....·17: t=71.6 - Δ= 0.2 ○ +....·18: t=71.7 - Δ= 0.3 ○ +....·19: t=71.8 - Δ= 0.3 ○ +....·20: t=72.0 + Δ= 0.6 ○ +....·21: t=71.8 - Δ= 0.3 ○ +....·22: t=71.7 - Δ= 0.3 ○ +....·23: t=71.7 - Δ= 0.3 ○ +....·24: t=71.8 - Δ= 0.3 ○ +....·25: t=71.7 - Δ= 0.3 ○ +....·26: t=71.7 - Δ= 0.3 ○ +....·27: t=72.1 + Δ= 0.6 ○ +....·28: t=71.6 - Δ= 0.2 ○ +....·29: t=71.7 - Δ= 0.3 ○ +0.23| : ∅=71.8 ±0.15 ∅Δ= 0.4 %0.0 -- expect:71.4ms +....·0 : t=63.4 - Δ= 0.2 ○ +....·1 : t=63.5 - Δ= 0.3 ○ +....·2 : t=63.5 - Δ= 0.3 ○ +....·3 : t=63.5 - Δ= 0.3 ○ +....·4 : t=63.5 - Δ= 0.3 ○ +....·5 : t=63.5 - Δ= 0.3 ○ +....·6 : t=63.5 - Δ= 0.3 ○ +....·7 : t=63.4 - Δ= 0.2 ○ +....·8 : t=63.4 - Δ= 0.2 ○ +....·9 : t=64.2 + Δ= 1.0 ○ +....·10: t=63.5 - Δ= 0.3 ○ +....·11: t=63.4 - Δ= 0.2 ○ +....·12: t=63.4 - Δ= 0.2 ○ +....·13: t=63.5 - Δ= 0.3 ○ +....·14: t=63.5 - Δ= 0.3 ○ +....·15: t=63.5 - Δ= 0.3 ○ +....·16: t=63.4 - Δ= 0.2 ○ +....·17: t=63.5 - Δ= 0.3 ○ +....·18: t=63.5 - Δ= 0.3 ○ +....·19: t=63.5 - Δ= 0.3 ○ +....·20: t=63.5 - Δ= 0.3 ○ +....·21: t=63.5 - Δ= 0.3 ○ +....·22: t=63.5 - Δ= 0.3 ○ +....·23: t=63.4 - Δ= 0.2 ○ +....·24: t=63.5 - Δ= 0.3 ○ +....·25: t=63.5 - Δ= 0.3 ○ +....·26: t=64.2 + Δ= 1.0 ○ +....·27: t=63.5 - Δ= 0.3 ○ +....·28: t=63.5 - Δ= 0.3 ○ +....·29: t=64.2 + Δ= 1.0 ○ +0.26| : ∅=63.5 ±0.22 ∅Δ= 0.3 %0.0 -- expect:63.2ms +....·0 : t=57.0 - Δ= 0.3 ○ +....·1 : t=57.4 + Δ= 0.8 ○ +....·2 : t=57.0 - Δ= 0.3 ○ +....·3 : t=56.9 - Δ= 0.2 ○ +....·4 : t=57.0 + Δ= 0.4 ○ +....·5 : t=56.9 - Δ= 0.2 ○ +....·6 : t=56.8 - Δ= 0.1 ○ +....·7 : t=57.0 - Δ= 0.3 ○ +....·8 : t=56.8 - Δ= 0.2 ○ +....·9 : t=56.9 - Δ= 0.3 ○ +....·10: t=57.0 - Δ= 0.3 ○ +....·11: t=56.9 - Δ= 0.2 ○ +....·12: t=56.9 - Δ= 0.2 ○ +....·13: t=57.0 - Δ= 0.3 ○ +....·14: t=56.9 - Δ= 0.3 ○ +....·15: t=56.9 - Δ= 0.2 ○ +....·16: t=57.0 - Δ= 0.3 ○ +....·17: t=56.8 - Δ= 0.2 ○ +....·18: t=56.8 - Δ= 0.2 ○ +....·19: t=56.9 - Δ= 0.2 ○ +....·20: t=56.9 - Δ= 0.2 ○ +....·21: t=57.0 - Δ= 0.3 ○ +....·22: t=56.9 - Δ= 0.3 ○ +....·23: t=58.1 + Δ= 1.5 ○ +....·24: t=57.0 - Δ= 0.3 ○ +....·25: t=58.1 + Δ= 1.4 ○ +....·26: t=56.8 - Δ= 0.1 ○ +....·27: t=56.9 - Δ= 0.2 ○ +....·28: t=57.0 - Δ= 0.3 ○ +....·29: t=56.8 - Δ= 0.1 ○ +0.29| : ∅=57.0 ±0.32 ∅Δ= 0.3 %0.0 -- expect:56.7ms +....·0 : t=51.6 - Δ= 0.3 ○ +....·1 : t=51.5 - Δ= 0.2 ○ +....·2 : t=51.7 - Δ= 0.3 ○ +....·3 : t=51.6 - Δ= 0.2 ○ +....·4 : t=51.6 - Δ= 0.3 ○ +....·5 : t=53.1 + Δ= 1.7 ○ +....·6 : t=52.5 + Δ= 1.1 ○ +....·7 : t=53.5 + Δ= 2.1 ● +....·8 : t=51.7 - Δ= 0.3 ○ +....·9 : t=51.5 - Δ= 0.2 ○ +....·10: t=52.5 + Δ= 1.2 ○ +....·11: t=51.6 - Δ= 0.2 ○ +....·12: t=51.6 - Δ= 0.2 ○ +....·13: t=51.5 - Δ= 0.2 ○ +....·14: t=51.6 - Δ= 0.2 ○ +....·15: t=51.6 - Δ= 0.3 ○ +....·16: t=51.5 - Δ= 0.1 ○ +....·17: t=51.6 - Δ= 0.3 ○ +....·18: t=51.5 - Δ= 0.2 ○ +....·19: t=51.5 - Δ= 0.2 ○ +....·20: t=51.5 - Δ= 0.2 ○ +....·21: t=53.2 + Δ= 1.8 ○ +....·22: t=51.5 - Δ= 0.2 ○ +....·23: t=51.6 - Δ= 0.3 ○ +....·24: t=51.5 - Δ= 0.1 ○ +....·25: t=53.5 + Δ= 2.2 ● +....·26: t=51.7 - Δ= 0.3 ○ +....·27: t=51.6 - Δ= 0.3 ○ +....·28: t=53.1 + Δ= 1.8 ○ +....·29: t=51.6 - Δ= 0.3 ○ +0.32| : ∅=51.9 ±0.65 ∅Δ= 0.6 %0.1 -- expect:51.4ms +....·0 : t=47.2 - Δ= 0.2 ○ +....·1 : t=47.2 - Δ= 0.2 ○ +....·2 : t=47.2 - Δ= 0.2 ○ +....·3 : t=49.0 + Δ= 2.1 ● +....·4 : t=47.1 - Δ= 0.2 ○ +....·5 : t=47.8 + Δ= 0.8 ○ +....·6 : t=47.0 - Δ= 0.1 ○ +....·7 : t=47.1 - Δ= 0.1 ○ +....·8 : t=47.1 - Δ= 0.2 ○ +....·9 : t=47.6 + Δ= 0.7 ○ +....·10: t=47.4 - Δ= 0.4 ○ +....·11: t=47.5 - Δ= 0.5 ○ +....·12: t=47.3 - Δ= 0.3 ○ +....·13: t=47.2 - Δ= 0.2 ○ +....·14: t=47.2 - Δ= 0.3 ○ +....·15: t=47.2 - Δ= 0.2 ○ +....·16: t=49.1 + Δ= 2.1 ● +....·17: t=47.2 - Δ= 0.3 ○ +....·18: t=47.3 - Δ= 0.3 ○ +....·19: t=49.0 + Δ= 2.1 ● +....·20: t=47.4 - Δ= 0.4 ○ +....·21: t=47.5 - Δ= 0.5 ○ +....·22: t=47.1 - Δ= 0.2 ○ +....·23: t=47.5 - Δ= 0.5 ○ +....·24: t=51.1 + Δ= 4.1 ● +....·25: t=47.2 - Δ= 0.3 ○ +....·26: t=47.3 - Δ= 0.3 ○ +....·27: t=47.2 - Δ= 0.3 ○ +....·28: t=47.2 - Δ= 0.3 ○ +....·29: t=47.1 - Δ= 0.1 ○ +0.35| : ∅=47.6 ±0.86 ∅Δ= 0.6 %0.1 -- expect:47.0ms +....·0 : t=44.0 - Δ= 0.7 ○ +....·1 : t=44.0 - Δ= 0.8 ○ +....·2 : t=43.5 - Δ= 0.3 ○ +....·3 : t=45.5 + Δ= 2.2 ● +....·4 : t=45.5 + Δ= 2.3 ● +....·5 : t=43.4 - Δ= 0.2 ○ +....·6 : t=46.5 + Δ= 3.3 ● +....·7 : t=44.1 - Δ= 0.9 ○ +....·8 : t=43.4 - Δ= 0.2 ○ +....·9 : t=46.9 + Δ= 3.7 ● +....·10: t=43.5 - Δ= 0.3 ○ +....·11: t=43.4 - Δ= 0.2 ○ +....·12: t=43.8 - Δ= 0.6 ○ +....·13: t=43.5 - Δ= 0.3 ○ +....·14: t=44.0 - Δ= 0.7 ○ +....·15: t=43.5 - Δ= 0.3 ○ +....·16: t=43.6 - Δ= 0.3 ○ +....·17: t=43.9 - Δ= 0.7 ○ +....·18: t=43.4 - Δ= 0.1 ○ +....·19: t=43.6 - Δ= 0.3 ○ +....·20: t=43.5 - Δ= 0.3 ○ +....·21: t=45.6 + Δ= 2.4 ● +....·22: t=44.0 - Δ= 0.7 ○ +....·23: t=43.8 - Δ= 0.5 ○ +....·24: t=43.5 - Δ= 0.3 ○ +....·25: t=43.8 - Δ= 0.6 ○ +....·26: t=43.4 - Δ= 0.1 ○ +....·27: t=46.0 + Δ= 2.7 ● +....·28: t=43.9 - Δ= 0.6 ○ +....·29: t=43.5 - Δ= 0.3 ○ +0.38| : ∅=44.1 ±0.99 ∅Δ= 0.9 %0.2 -- expect:43.2ms +....·0 : t=40.4 - Δ= 0.3 ○ +....·1 : t=41.1 + Δ= 1.0 ○ +....·2 : t=40.8 - Δ= 0.7 ○ +....·3 : t=41.6 + Δ= 1.5 ○ +....·4 : t=40.2 - Δ= 0.1 ○ +....·5 : t=40.3 - Δ= 0.2 ○ +....·6 : t=40.9 - Δ= 0.8 ○ +....·7 : t=40.2 - Δ= 0.2 ○ +....·8 : t=41.5 + Δ= 1.4 ○ +....·9 : t=40.2 - Δ= 0.1 ○ +....·10: t=43.0 + Δ= 2.9 ● +....·11: t=40.3 - Δ= 0.2 ○ +....·12: t=41.0 + Δ= 0.9 ○ +....·13: t=40.3 - Δ= 0.2 ○ +....·14: t=40.4 - Δ= 0.3 ○ +....·15: t=40.2 - Δ= 0.2 ○ +....·16: t=41.0 - Δ= 0.9 ○ +....·17: t=40.4 - Δ= 0.3 ○ +....·18: t=40.3 - Δ= 0.2 ○ +....·19: t=40.3 - Δ= 0.2 ○ +....·20: t=40.3 - Δ= 0.2 ○ +....·21: t=40.3 - Δ= 0.2 ○ +....·22: t=40.2 - Δ= 0.1 ○ +....·23: t=40.3 - Δ= 0.2 ○ +....·24: t=41.0 + Δ= 0.9 ○ +....·25: t=45.8 + Δ= 5.8 ● +....·26: t=42.6 + Δ= 2.5 ● +....·27: t=43.5 + Δ= 3.4 ● +....·28: t=40.3 - Δ= 0.2 ○ +....·29: t=40.9 - Δ= 0.9 ○ +0.41| : ∅=41.0 ±1.23 ∅Δ= 0.9 %0.1 -- expect:40.1ms +....·0 : t=40.8 + Δ= 3.5 ● +....·1 : t=38.5 - Δ= 1.1 ○ +....·2 : t=37.7 - Δ= 0.3 ○ +....·3 : t=41.6 + Δ= 4.2 ● +....·4 : t=41.6 + Δ= 4.3 ● +....·5 : t=41.5 + Δ= 4.1 ● +....·6 : t=38.5 - Δ= 1.2 ○ +....·7 : t=39.1 - Δ= 1.8 ○ +....·8 : t=37.8 - Δ= 0.4 ○ +....·9 : t=37.7 - Δ= 0.4 ○ +....·10: t=39.1 - Δ= 1.8 ○ +....·11: t=45.8 + Δ= 8.5 ● +....·12: t=38.3 - Δ= 0.9 ○ +....·13: t=40.9 + Δ= 3.6 ● +....·14: t=38.9 - Δ= 1.6 ○ +....·15: t=39.1 - Δ= 1.8 ○ +....·16: t=37.6 - Δ= 0.2 ○ +....·17: t=37.6 - Δ= 0.2 ○ +....·18: t=42.9 + Δ= 5.6 ● +....·19: t=40.3 - Δ= 3.0 ● +....·20: t=42.6 + Δ= 5.3 ● +....·21: t=37.6 - Δ= 0.3 ○ +....·22: t=39.3 - Δ= 1.9 ○ +....·23: t=40.0 - Δ= 2.6 ● +....·24: t=39.3 - Δ= 2.0 ○ +....·25: t=39.8 - Δ= 2.5 ● +....·26: t=72.7 + Δ=35.4 ● +....·27: t=41.7 + Δ= 4.4 ● +....·28: t=37.4 - Δ= 0.1 ○ +....·29: t=37.6 - Δ= 0.2 ○ +0.44| : ∅=40.8 ±6.25 ∅Δ= 3.4 %0.4 -- expect:37.3ms +....·0 : t=44.1 + Δ= 9.1 ● +....·1 : t=40.7 + Δ= 5.7 ● +....·2 : t=37.0 - Δ= 2.1 ● +....·3 : t=36.4 - Δ= 1.4 ○ +....·4 : t=35.2 - Δ= 0.2 ○ +....·5 : t=36.2 - Δ= 1.3 ○ +....·6 : t=37.5 - Δ= 2.6 ● +....·7 : t=35.5 - Δ= 0.5 ○ +....·8 : t=36.7 - Δ= 1.7 ○ +....·9 : t=39.6 + Δ= 4.6 ● +....·10: t=35.5 - Δ= 0.5 ○ +....·11: t=35.1 - Δ= 0.2 ○ +....·12: t=36.3 - Δ= 1.3 ○ +....·13: t=44.0 + Δ= 9.1 ● +....·14: t=36.3 - Δ= 1.3 ○ +....·15: t=36.1 - Δ= 1.1 ○ +....·16: t=35.6 - Δ= 0.7 ○ +....·17: t=35.5 - Δ= 0.6 ○ +....·18: t=43.7 + Δ= 8.7 ● +....·19: t=44.5 + Δ= 9.6 ● +....·20: t=35.2 - Δ= 0.2 ○ +....·21: t=39.4 + Δ= 4.4 ● +....·22: t=35.2 - Δ= 0.2 ○ +....·23: t=35.6 - Δ= 0.6 ○ +....·24: t=35.1 - Δ= 0.1 ○ +....·25: t=38.4 - Δ= 3.4 ● +....·26: t=36.4 - Δ= 1.5 ○ +....·27: t=36.4 - Δ= 1.5 ○ +....·28: t=38.6 + Δ= 3.6 ● +....·29: t=64.0 + Δ=29.0 ● +0.47| : ∅=38.5 ±5.54 ∅Δ= 3.6 %0.4 -- expect:35.0ms +....·0 : t=36.0 - Δ= 3.1 ● +....·1 : t=54.4 + Δ=21.5 ● +....·2 : t=37.5 - Δ= 4.6 ● +....·3 : t=39.7 - Δ= 6.8 ● +....·4 : t=37.8 - Δ= 4.9 ● +....·5 : t=33.6 - Δ= 0.7 ○ +....·6 : t=40.0 + Δ= 7.2 ● +....·7 : t=41.4 + Δ= 8.5 ● +....·8 : t=36.9 - Δ= 4.1 ● +....·9 : t=59.6 + Δ=26.7 ● +....·10: t=35.0 - Δ= 2.1 ● +....·11: t=37.3 - Δ= 4.4 ● +....·12: t=34.3 - Δ= 1.4 ○ +....·13: t=33.9 - Δ= 1.0 ○ +....·14: t=36.1 - Δ= 3.2 ● +....·15: t=40.3 + Δ= 7.4 ● +....·16: t=43.4 + Δ=10.5 ● +....·17: t=36.2 - Δ= 3.3 ● +....·18: t=36.5 - Δ= 3.6 ● +....·19: t=39.2 - Δ= 6.3 ● +....·20: t=58.3 + Δ=25.4 ● +....·21: t=43.0 + Δ=10.2 ● +....·22: t=35.1 - Δ= 2.2 ● +....·23: t=43.6 + Δ=10.7 ● +....·24: t=33.0 - Δ= 0.2 ○ +....·25: t=33.8 - Δ= 0.9 ○ +....·26: t=36.9 - Δ= 4.1 ● +....·27: t=52.1 + Δ=19.2 ● +....·28: t=33.2 - Δ= 0.3 ○ +....·29: t=34.3 - Δ= 1.4 ○ +0.50| : ∅=39.7 ±7.14 ∅Δ= 6.9 %0.8 -- expect:32.9ms +....·0 : t=38.9 - Δ= 7.9 ● +....·1 : t=32.7 - Δ= 1.7 ○ +....·2 : t=32.7 - Δ= 1.7 ○ +....·3 : t=52.7 + Δ=21.7 ● +....·4 : t=32.7 - Δ= 1.7 ○ +....·5 : t=42.1 + Δ=11.1 ● +....·6 : t=46.9 + Δ=15.9 ● +....·7 : t=44.2 + Δ=13.2 ● +....·8 : t=50.9 + Δ=19.8 ● +....·9 : t=34.4 - Δ= 3.4 ● +....·10: t=31.6 - Δ= 0.6 ○ +....·11: t=40.4 + Δ= 9.4 ● +....·12: t=31.4 - Δ= 0.4 ○ +....·13: t=31.5 - Δ= 0.5 ○ +....·14: t=38.9 - Δ= 7.9 ● +....·15: t=62.1 + Δ=31.1 ● +....·16: t=36.1 - Δ= 5.1 ● +....·17: t=35.0 - Δ= 4.0 ● +....·18: t=31.8 - Δ= 0.8 ○ +....·19: t=40.7 + Δ= 9.7 ● +....·20: t=39.0 - Δ= 8.0 ● +....·21: t=32.7 - Δ= 1.7 ○ +....·22: t=50.2 + Δ=19.2 ● +....·23: t=34.7 - Δ= 3.7 ● +....·24: t=47.6 + Δ=16.6 ● +....·25: t=35.4 - Δ= 4.4 ● +....·26: t=38.4 - Δ= 7.4 ● +....·27: t=31.7 - Δ= 0.7 ○ +....·28: t=39.2 - Δ= 8.2 ● +....·29: t=61.7 + Δ=30.7 ● +0.53| : ∅=39.9 ±8.51 ∅Δ= 8.9 %0.7 -- expect:31.0ms +....·0 : t=38.2 - Δ= 8.8 ● +....·1 : t=36.6 - Δ= 7.2 ● +....·2 : t=31.1 - Δ= 1.8 ○ +....·3 : t=39.9 - Δ=10.6 ● +....·4 : t=30.4 - Δ= 1.0 ○ +....·5 : t=36.7 - Δ= 7.3 ● +....·6 : t=56.9 + Δ=27.6 ● +....·7 : t=42.9 + Δ=13.5 ● +....·8 : t=43.3 + Δ=13.9 ● +....·9 : t=32.3 - Δ= 3.0 ● +....·10: t=33.1 - Δ= 3.8 ● +....·11: t=52.9 + Δ=23.6 ● +....·12: t=31.6 - Δ= 2.2 ● +....·13: t=40.6 - Δ=11.2 ● +....·14: t=31.5 - Δ= 2.1 ● +....·15: t=32.6 - Δ= 3.2 ● +....·16: t=58.2 + Δ=28.8 ● +....·17: t=40.1 - Δ=10.7 ● +....·18: t=56.1 + Δ=26.7 ● +....·19: t=34.8 - Δ= 5.4 ● +....·20: t=33.4 - Δ= 4.1 ● +....·21: t=41.4 + Δ=12.0 ● +....·22: t=36.6 - Δ= 7.2 ● +....·23: t=39.2 - Δ= 9.9 ● +....·24: t=53.9 + Δ=24.6 ● +....·25: t=39.8 - Δ=10.5 ● +....·26: t=43.5 + Δ=14.1 ● +....·27: t=53.1 + Δ=23.8 ● +....·28: t=34.7 - Δ= 5.3 ● +....·29: t=50.0 + Δ=20.6 ● +0.56| : ∅=40.8 ±8.43 ∅Δ=11.5 %0.9 -- expect:29.3ms +....·0 : t=38.4 - Δ=10.6 ● +....·1 : t=31.1 - Δ= 3.3 ● +....·2 : t=46.3 + Δ=18.4 ● +....·3 : t=31.3 - Δ= 3.5 ● +....·4 : t=31.6 - Δ= 3.7 ● +....·5 : t=32.5 - Δ= 4.6 ● +....·6 : t=30.1 - Δ= 2.2 ● +....·7 : t=63.4 + Δ=35.6 ● +....·8 : t=32.3 - Δ= 4.5 ● +....·9 : t=51.4 + Δ=23.5 ● +....·10: t=40.7 - Δ=12.9 ● +....·11: t=48.5 + Δ=20.7 ● +....·12: t=31.5 - Δ= 3.7 ● +....·13: t=50.2 + Δ=22.3 ● +....·14: t=36.3 - Δ= 8.5 ● +....·15: t=33.2 - Δ= 5.4 ● +....·16: t=46.0 + Δ=18.2 ● +....·17: t=39.8 - Δ=11.9 ● +....·18: t=63.4 + Δ=35.5 ● +....·19: t=41.1 - Δ=13.2 ● +....·20: t=32.2 - Δ= 4.4 ● +....·21: t=41.5 + Δ=13.6 ● +....·22: t=36.3 - Δ= 8.5 ● +....·23: t=56.7 + Δ=28.8 ● +....·24: t=43.9 + Δ=16.1 ● +....·25: t=28.8 - Δ= 1.0 ○ +....·26: t=36.2 - Δ= 8.3 ● +....·27: t=45.3 + Δ=17.4 ● +....·28: t=42.0 + Δ=14.2 ● +....·29: t=57.1 + Δ=29.3 ● +0.59| : ∅=41.3 ±9.72 ∅Δ=13.5 %1.0 -- expect:27.9ms +....·0 : t=46.6 + Δ=20.1 ● +....·1 : t=33.2 - Δ= 6.7 ● +....·2 : t=28.6 - Δ= 2.1 ● +....·3 : t=50.9 + Δ=24.4 ● +....·4 : t=33.2 - Δ= 6.7 ● +....·5 : t=32.7 - Δ= 6.2 ● +....·6 : t=44.5 + Δ=18.0 ● +....·7 : t=47.8 + Δ=21.3 ● +....·8 : t=35.8 - Δ= 9.3 ● +....·9 : t=52.6 + Δ=26.1 ● +....·10: t=38.2 - Δ=11.7 ● +....·11: t=31.8 - Δ= 5.3 ● +....·12: t=33.1 - Δ= 6.6 ● +....·13: t=34.7 - Δ= 8.2 ● +....·14: t=58.2 + Δ=31.7 ● +....·15: t=30.7 - Δ= 4.2 ● +....·16: t=38.0 - Δ=11.5 ● +....·17: t=50.3 + Δ=23.8 ● +....·18: t=35.3 - Δ= 8.8 ● +....·19: t=37.3 - Δ=10.8 ● +....·20: t=56.3 + Δ=29.8 ● +....·21: t=35.1 - Δ= 8.6 ● +....·22: t=36.7 - Δ=10.2 ● +....·23: t=33.2 - Δ= 6.7 ● +....·24: t=48.0 + Δ=21.5 ● +....·25: t=34.7 - Δ= 8.2 ● +....·26: t=34.3 - Δ= 7.8 ● +....·27: t=34.5 - Δ= 8.0 ● +....·28: t=30.9 - Δ= 4.4 ● +....·29: t=47.0 + Δ=20.5 ● +0.62| : ∅=39.5 ±8.21 ∅Δ=13.0 %1.0 -- expect:26.5ms +....·0 : t=34.0 - Δ= 8.8 ● +....·1 : t=49.9 + Δ=24.6 ● +....·2 : t=35.1 - Δ= 9.8 ● +....·3 : t=36.3 - Δ=11.0 ● +....·4 : t=35.9 - Δ=10.6 ● +....·5 : t=33.9 - Δ= 8.6 ● +....·6 : t=53.6 + Δ=28.4 ● +....·7 : t=33.9 - Δ= 8.6 ● +....·8 : t=36.1 - Δ=10.8 ● +....·9 : t=29.9 - Δ= 4.6 ● +....·10: t=55.6 + Δ=30.3 ● +....·11: t=46.6 + Δ=21.4 ● +....·12: t=32.1 - Δ= 6.8 ● +....·13: t=30.2 - Δ= 4.9 ● +....·14: t=37.5 - Δ=12.2 ● +....·15: t=31.8 - Δ= 6.5 ● +....·16: t=55.7 + Δ=30.4 ● +....·17: t=31.4 - Δ= 6.1 ● +....·18: t=32.1 - Δ= 6.9 ● +....·19: t=36.5 - Δ=11.3 ● +....·20: t=69.1 + Δ=43.8 ● +....·21: t=30.1 - Δ= 4.8 ● +....·22: t=47.8 + Δ=22.5 ● +....·23: t=33.9 - Δ= 8.6 ● +....·24: t=55.6 + Δ=30.3 ● +....·25: t=34.5 - Δ= 9.2 ● +....·26: t=30.3 - Δ= 5.0 ● +....·27: t=36.5 - Δ=11.2 ● +....·28: t=52.8 + Δ=27.5 ● +....·29: t=47.0 + Δ=21.7 ● +0.65| : ∅=40.2 ±10.18 ∅Δ=14.9 %1.0 -- expect:25.3ms +....·0 : t=34.0 - Δ= 9.8 ● +....·1 : t=35.2 - Δ=11.1 ● +....·2 : t=40.2 + Δ=16.0 ● +....·3 : t=33.3 - Δ= 9.2 ● +....·4 : t=40.1 + Δ=15.9 ● +....·5 : t=25.5 - Δ= 1.4 ○ +....·6 : t=47.6 + Δ=23.4 ● +....·7 : t=30.6 - Δ= 6.5 ● +....·8 : t=27.7 - Δ= 3.5 ● +....·9 : t=51.7 + Δ=27.5 ● +....·10: t=31.6 - Δ= 7.5 ● +....·11: t=59.8 + Δ=35.6 ● +....·12: t=41.4 + Δ=17.2 ● +....·13: t=28.9 - Δ= 4.7 ● +....·14: t=63.3 + Δ=39.1 ● +....·15: t=29.7 - Δ= 5.5 ● +....·16: t=50.8 + Δ=26.6 ● +....·17: t=26.9 - Δ= 2.8 ● +....·18: t=27.6 - Δ= 3.4 ● +....·19: t=62.1 + Δ=37.9 ● +....·20: t=28.8 - Δ= 4.7 ● +....·21: t=35.5 - Δ=11.3 ● +....·22: t=33.0 - Δ= 8.9 ● +....·23: t=32.4 - Δ= 8.2 ● +....·24: t=41.1 + Δ=17.0 ● +....·25: t=33.7 - Δ= 9.5 ● +....·26: t=31.1 - Δ= 7.0 ● +....·27: t=47.0 + Δ=22.8 ● +....·28: t=31.3 - Δ= 7.1 ● +....·29: t=30.4 - Δ= 6.3 ● +0.68| : ∅=37.7 ±10.56 ∅Δ=13.6 %1.0 -- expect:24.2ms + diff --git a/doc/devel/dump/2023-12-09.Scheduler-Integration/index.txt b/doc/devel/dump/2023-12-09.Scheduler-Integration/index.txt index be302aa35..4b7d547c2 100644 --- a/doc/devel/dump/2023-12-09.Scheduler-Integration/index.txt +++ b/doc/devel/dump/2023-12-09.Scheduler-Integration/index.txt @@ -104,3 +104,24 @@ Dump-06:: - refTime(singleThr): 31.8014ms - runTime(Scheduler): 42.0706ms + +Time-01:: + Search for the »breaking Point« where the computation slips off schedule. ++ +- using a load graph with 64 nodes in a single chain +- this chain progresses for the first half with no or low concurrency +- after node-23 the graph forks out massively up to 16 nodes in parallel +- concurrency is set to 4 and the worker pool limited accordingly ++ +The overall density of the schedule (»stress factor«) is increased in small steps, +repeating each series 30 times and computing averages. The Scheduler is able to +follow initially, with very low standard derivation and low average delta to +the scheduled overall time. When approaching stress factor = 0.5, the number +of _glitches_ (with Δ > 2ms) increases, while the average delta and the +standard derivation exhibit a steep rise. This leads to the following +trigger criteria ++ +- more than 55% glitches with Δ > 2ms +- σ > 2ms +- ∅Δ > 4ms + diff --git a/tests/vault/gear/scheduler-stress-test.cpp b/tests/vault/gear/scheduler-stress-test.cpp index a3dbe468a..6a9e3ee2d 100644 --- a/tests/vault/gear/scheduler-stress-test.cpp +++ b/tests/vault/gear/scheduler-stress-test.cpp @@ -38,6 +38,8 @@ //#include "lib/util.hpp" //#include +//#include +#include using test::Test; //using std::move; @@ -52,6 +54,8 @@ namespace test { // using lib::time::Offset; // using lib::time::Time; using util::_Fmt; +// using std::vector; + using std::array; namespace { // Test definitions and setup... @@ -296,7 +300,6 @@ SHOW_EXPR(micros); // Adapted Schedule---------- TRANSIENTLY(work::Config::COMPUTATION_CAPACITY) = 4; auto LOAD_BASE = 500us; - double stressFac = 0.5; uint concurrency = 4; // Build-Performance-test-setup-------- @@ -307,19 +310,40 @@ SHOW_EXPR(micros); auto testSetup = testLoad.setupSchedule(scheduler) .withLoadTimeBase(LOAD_BASE) - .withLoadMem() .withJobDeadline(50ms) - .withUpfrontPlanning() - .withAdaptedSchedule(stressFac, concurrency); + .withUpfrontPlanning(); + auto sqr = [](auto n){ return n*n; }; + _Fmt pointFmt{"....·%-2d: t=%4.1f %s Δ=%4.1f %s"}; + _Fmt rowFmt {"%4.2f| : ∅=%4.1f ±%4.2f ∅Δ=%4.1f %%%3.1f -- expect:%4.1fms"}; double refTime = testLoad.calcRuntimeReference(LOAD_BASE); SHOW_EXPR(refTime); - - double runTime = testSetup.launch_and_wait(); -SHOW_EXPR(runTime); - double expTime = testSetup.getExpectedEndTime(); -SHOW_EXPR(expTime); -SHOW_EXPR(runTime-expTime) + const uint REPETITIONS{30}; + for (double stress=0.2; stress < 0.7; stress+=0.03) + { + testSetup.withAdaptedSchedule(stress, concurrency); + array runTime; + array delta; + for (uint i=0; i 2000) + ++misses; + cout << pointFmt % i % (runTime[i]/1000) % (runTime[i]>avg?"+":"-") % (delta[i]/1000) % (delta[i] > 2000? "●":"○") < - - + + @@ -107793,6 +107793,30 @@ Date:   Thu Apr 20 18:53:17 2023 +0200
+ + + + + + + + + + + + + + +

+ das ist aber nicht klar genug ausgeprägt, um daraus ein Kriterium zu machen +

+ + +
+
+ + +