Scheduler-test: investigate planning failure

- fix mistake in schdule time for planning chunks (must use start, not end of chunk)
- allow to configure the heuristics for pre-roll (time reserved for planning a node)
This commit is contained in:
Fischlurch 2023-12-23 19:33:55 +01:00
parent 90ab20be61
commit dedfbf4984
3 changed files with 415 additions and 9 deletions

View file

@ -122,6 +122,7 @@ namespace test {
testLoad.setupSchedule(scheduler)
.withLoadTimeBase(LOAD_BASE)
.withJobDeadline(100ms)
.withPlanningStep(200us)
.withChunkSize(20)
.launch_and_wait();

View file

@ -166,7 +166,8 @@ namespace test {
const double LOAD_SPEED_BASELINE = 100; ///< initial assumption for calculation speed (without calibration)
const microseconds LOAD_DEFAULT_TIME = 100us; ///< default time delay produced by ComputationalLoad at `Node.weight==1`
const size_t LOAD_DEFAULT_MEM_SIZE = 1000; ///< default allocation base size used if ComputationalLoad.useAllocation
const microseconds PLANNING_TIME_PER_NODE = 400us; ///< time budget to reserve for each node to be planned and scheduled
const Duration SCHEDULE_LEVEL_STEP{_uTicks(1ms)}; ///< time budget to plan for the calculation of each »time level« of jobs
const Duration SCHEDULE_PLAN_STEP{_uTicks(100us)}; ///< time budget to reserve for each node to be planned and scheduled
}
@ -1573,12 +1574,13 @@ namespace test {
lib::UninitialisedDynBlock<ScheduleSpec> schedule_;
FrameRate levelSpeed_{1, Duration{_uTicks(1ms)}};
FrameRate levelSpeed_{1, SCHEDULE_LEVEL_STEP};
FrameRate planSpeed_{1, SCHEDULE_PLAN_STEP};
uint blockLoadFactor_{2};
size_t chunkSize_{DEFAULT_CHUNKSIZE};
TimeVar startTime_{Time::ANYTIME};
microseconds deadline_{STANDARD_DEADLINE};
microseconds preRoll_{guessPlanningPreroll (chunkSize_)};
microseconds preRoll_{guessPlanningPreroll()};
ManifestationID manID_{};
std::promise<void> signalDone_{};
@ -1617,7 +1619,7 @@ namespace test {
if (work_left)
{
size_t nextChunkEndNode = calcNextChunkEnd (lastNodeIDX);
scheduler_.continueMetaJob (calcPlanScheduleTime (nextChunkEndNode)
scheduler_.continueMetaJob (calcPlanScheduleTime (lastNodeIDX+1)
,planningJob (nextChunkEndNode)
,manID_);
}
@ -1683,6 +1685,14 @@ namespace test {
return move(*this);
}
ScheduleCtx&&
withPlanningStep (microseconds planningTime_per_node)
{
planSpeed_ = FrameRate{1, Duration{_uTicks(planningTime_per_node)}};
preRoll_ = guessPlanningPreroll();
return move(*this);
}
ScheduleCtx&&
withLoadFactor (uint factor_on_levelSpeed)
{
@ -1694,7 +1704,7 @@ namespace test {
withChunkSize (size_t nodes_per_chunk)
{
chunkSize_ = nodes_per_chunk;
preRoll_ = guessPlanningPreroll (chunkSize_);
preRoll_ = guessPlanningPreroll();
return move(*this);
}
@ -1803,10 +1813,10 @@ namespace test {
return RealClock::now() + _uTicks(preRoll_);
}
static microseconds
guessPlanningPreroll(size_t chunkSize)
microseconds
guessPlanningPreroll()
{
return chunkSize * PLANNING_TIME_PER_NODE;
return microseconds(_raw(Time{chunkSize_ / planSpeed_}));
}
FrameRate

View file

@ -107144,7 +107144,7 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
<icon BUILTIN="hourglass"/>
</node>
</node>
<node BACKGROUND_COLOR="#fafe99" COLOR="#fa002a" CREATED="1702949773611" FOLDED="true" ID="ID_1539248543" MODIFIED="1703200574860" TEXT="wieder Assertion-Failure aus dem Allokator">
<node BACKGROUND_COLOR="#fafe99" COLOR="#fa002a" CREATED="1702949773611" ID="ID_1539248543" MODIFIED="1703346098120" TEXT="wieder Assertion-Failure aus dem Allokator">
<linktarget COLOR="#fd1e5d" DESTINATION="ID_1539248543" ENDARROW="Default" ENDINCLINATION="-214;-502;" ID="Arrow_ID_1665215112" SOURCE="ID_1042591319" STARTARROW="None" STARTINCLINATION="417;46;"/>
<linktarget COLOR="#e02174" DESTINATION="ID_1539248543" ENDARROW="Default" ENDINCLINATION="-578;34;" ID="Arrow_ID_250558884" SOURCE="ID_1069075638" STARTARROW="None" STARTINCLINATION="186;12;"/>
<icon BUILTIN="broken-line"/>
@ -107774,7 +107774,402 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
</html></richcontent>
<arrowlink COLOR="#e52142" DESTINATION="ID_960168734" ENDARROW="Default" ENDINCLINATION="408;21;" ID="Arrow_ID_1198532158" STARTARROW="Default" STARTINCLINATION="-380;-216;"/>
<icon BUILTIN="forward"/>
<node BACKGROUND_COLOR="#f0d5c5" COLOR="#750099" CREATED="1703346114689" ID="ID_1031276036" MODIFIED="1703351355333" TEXT="wie ist die Situation zustandegekommen?">
<icon BUILTIN="help"/>
<node CREATED="1703346210222" ID="ID_821266283" MODIFIED="1703346224774" TEXT="Chunk-1 : im Vorlauf"/>
<node CREATED="1703346225482" ID="ID_224653691" MODIFIED="1703346267705" TEXT="Chunk-2 :">
<node CREATED="1703346269119" ID="ID_1114771845" MODIFIED="1703346289716" TEXT="geplant t=12ms ab Level 15"/>
<node CREATED="1703346326413" ID="ID_1312760005" MODIFIED="1703346351869" TEXT="mu&#xdf; also vor level 14 kommen"/>
<node CREATED="1703346516035" ID="ID_1687469304" MODIFIED="1703346585321" TEXT="99: @12066 : !&#x25c6;!plan...to:40 |curr=21"/>
<node COLOR="#338800" CREATED="1703346538735" ID="ID_1951607799" MODIFIED="1703346546780" TEXT="blockt offensichtlich korrekt">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1703346667511" ID="ID_1827386966" MODIFIED="1703346746889" TEXT="@15674 Continuation(lastNode=44, levelDone=22) --&gt; to ...64 &#x25cb; start=15000"/>
</node>
<node CREATED="1703346840232" ID="ID_1296195576" MODIFIED="1703346844171" TEXT="Chunk-3">
<node CREATED="1703346849638" ID="ID_1833645619" MODIFIED="1703346869543" TEXT="geplant t=15ms ab Level 23"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703346881650" ID="ID_82518288" MODIFIED="1703346907039">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
&lt; now &#10233; <b>re-entrant</b>
</p>
</body>
</html>
</richcontent>
<node CREATED="1703346965533" ID="ID_603651540" MODIFIED="1703346989887" TEXT="99: @15674 : !&#x25c6;!plan...to:64 |curr=45"/>
<node COLOR="#338800" CREATED="1703347003242" ID="ID_409247792" MODIFIED="1703347009361" TEXT="blockt weiterhin korrekt">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1703347197887" ID="ID_688237832" MODIFIED="1703347282992" TEXT="@17996 Continuation(lastNode=69, levelDone=25) --&gt; to ...89 &#x25cb; start=18000"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703346881650" ID="ID_1711278580" MODIFIED="1703347320722">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
== now &#10233; <b>re-entrant</b>
</p>
</body>
</html>
</richcontent>
<node CREATED="1703346965533" ID="ID_885952367" MODIFIED="1703347361585" TEXT="99: @17996 : !&#x25c6;!plan...to:89 |curr=70"/>
<node COLOR="#338800" CREATED="1703347003242" ID="ID_1727350178" MODIFIED="1703347009361" TEXT="blockt weiterhin korrekt">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1703347197887" ID="ID_174514915" MODIFIED="1703347476878" TEXT="@20713 Continuation(lastNode=98, levelDone=28) --&gt; to ...118 &#x25cb; start=20000"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703346881650" ID="ID_1637038066" MODIFIED="1703346907039">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
&lt; now &#10233; <b>re-entrant</b>
</p>
</body>
</html></richcontent>
<node CREATED="1703346965533" ID="ID_1293433291" MODIFIED="1703347527706" TEXT="99: @20713 : !&#x25c6;!plan...to:118|curr=99"/>
<node COLOR="#338800" CREATED="1703347003242" ID="ID_303938974" MODIFIED="1703347009361" TEXT="blockt weiterhin korrekt">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1703347197887" ID="ID_1150963190" MODIFIED="1703347649528" TEXT="@23483 Continuation(lastNode=130, levelDone=30) --&gt; to ...150 &#x25cb; start=22000"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703346881650" ID="ID_1701647932" MODIFIED="1703346907039">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
&lt; now &#10233; <b>re-entrant</b>
</p>
</body>
</html></richcontent>
<node CREATED="1703346965533" ID="ID_1369916695" MODIFIED="1703347688242" TEXT="99: @23483 : !&#x25c6;!plan...to:150|curr=131"/>
<node COLOR="#338800" CREATED="1703347003242" ID="ID_753044152" MODIFIED="1703347009361" TEXT="blockt weiterhin korrekt">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1703347197887" ID="ID_954899164" MODIFIED="1703347779150" TEXT="@25886 Continuation(lastNode=158, levelDone=32) --&gt; to ...178 &#x25cb; start=24000"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703346881650" ID="ID_163312539" MODIFIED="1703346907039">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
&lt; now &#10233; <b>re-entrant</b>
</p>
</body>
</html></richcontent>
<node CREATED="1703346965533" ID="ID_377012214" MODIFIED="1703347820353" TEXT="99: @25886 : !&#x25c6;!plan...to:178|curr=159"/>
<node COLOR="#338800" CREATED="1703347003242" ID="ID_1032409190" MODIFIED="1703347009361" TEXT="blockt weiterhin korrekt">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1703347197887" ID="ID_1551895356" MODIFIED="1703347907832" TEXT="@27484 Continuation(lastNode=180, levelDone=34) --&gt; to ...200 &#x25cb; start=26000"/>
<node CREATED="1703348166974" ID="ID_1361189785" MODIFIED="1703348176268">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
...
</p>
<p>
...
</p>
<p>
...
</p>
</body>
</html>
</richcontent>
<node CREATED="1703348179659" HGAP="31" ID="ID_1333047768" MODIFIED="1703348408580" TEXT="Continuation(lastNode=274, levelDone=41) --&gt; to ...294 @34040 &#x25cb; start=33000 " VSHIFT="84"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703346881650" ID="ID_65984176" MODIFIED="1703346907039">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
&lt; now &#10233; <b>re-entrant</b>
</p>
</body>
</html></richcontent>
<node CREATED="1703346965533" ID="ID_391655002" MODIFIED="1703348260542" TEXT="99: @34040 : !&#x25c6;!plan...to:294|curr=275"/>
<node COLOR="#338800" CREATED="1703347003242" ID="ID_242860" MODIFIED="1703347009361" TEXT="blockt weiterhin korrekt">
<icon BUILTIN="button_ok"/>
</node>
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1703347197887" ID="ID_243059135" MODIFIED="1703352547331">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
@<b>36141</b>&#160;Continuation(lastNode=304, <b><font color="#e2018c">levelDone=43</font></b>) --&gt; to ...324&#160;&#160;&#9675; start=<b>45000</b>
</p>
</body>
</html>
</richcontent>
<arrowlink COLOR="#3d9fb7" DESTINATION="ID_1146327218" ENDARROW="Default" ENDINCLINATION="423;-48;" ID="Arrow_ID_182205611" STARTARROW="None" STARTINCLINATION="-886;32;"/>
<linktarget COLOR="#a9196d" DESTINATION="ID_243059135" ENDARROW="Default" ENDINCLINATION="-4;488;" ID="Arrow_ID_158178883" SOURCE="ID_1986727321" STARTARROW="None" STARTINCLINATION="707;-844;"/>
</node>
<node COLOR="#338800" CREATED="1703348360740" ID="ID_1981048664" MODIFIED="1703348364627" TEXT="&gt;now">
<icon BUILTIN="button_ok"/>
</node>
</node>
<node CREATED="1703348375703" ID="ID_1525663103" MODIFIED="1703348384717" TEXT="workforce schl&#xe4;ft..."/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node CREATED="1703348541667" ID="ID_1259844284" MODIFIED="1703348549310" TEXT="WorkForce wacht wieder auf">
<node CREATED="1703348672727" ID="ID_1313550607" MODIFIED="1703348683461" TEXT="ein Worker ist zuf&#xe4;llig sofort da"/>
<node CREATED="1703348684265" ID="ID_1009136796" MODIFIED="1703348695899" TEXT="ein weiterer +400&#xb5;s"/>
<node CREATED="1703348722908" ID="ID_272907805" MODIFIED="1703348739931" TEXT="diese zwei nehmen die liegengebliebende notify-Arbeit auf"/>
<node CREATED="1703348696355" ID="ID_911344898" MODIFIED="1703348702059" TEXT="ein weiterer +1ms">
<node CREATED="1703348704926" ID="ID_594536745" MODIFIED="1703348715894" TEXT="dieser arbeitet erst mal das ganze &#xbb;leere&#xab; Backlog ab"/>
</node>
<node CREATED="1703349034850" ID="ID_1065464983" MODIFIED="1703349049332" TEXT="Node 23 wie &#xfc;blich lang und forkt * 5"/>
<node CREATED="1703349050368" ID="ID_79749861" MODIFIED="1703349071953" TEXT="Level 18(alle kurz) wird 5 * von einem Thread gemacht"/>
<node CREATED="1703349072724" ID="ID_1717877313" MODIFIED="1703349133300">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
Level 19(lang) <b>* 5</b>&#160;wird von <b>5 Threads</b>&#160;bearbeitet
</p>
</body>
</html>
</richcontent>
<node COLOR="#338800" CREATED="1703349090164" HGAP="28" ID="ID_1896749838" MODIFIED="1703349113821" TEXT="also das mit der Parallelisierung klappt wirklich gut jetzt" VSHIFT="9">
<font ITALIC="true" NAME="SansSerif" SIZE="14"/>
<icon BUILTIN="yes"/>
</node>
</node>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703349215408" HGAP="12" ID="ID_128351408" MODIFIED="1703349302207" TEXT="infolgedessen + 1ms Verz&#xf6;gerung" VSHIFT="1">
<arrowlink COLOR="#c6113e" DESTINATION="ID_63570145" ENDARROW="Default" ENDINCLINATION="7;-13;" ID="Arrow_ID_1100514931" STARTARROW="None" STARTINCLINATION="-28;17;"/>
</node>
</node>
<node CREATED="1703348549835" ID="ID_1146327218" MODIFIED="1703349255522" TEXT="Chunk-12">
<linktarget COLOR="#3d9fb7" DESTINATION="ID_1146327218" ENDARROW="Default" ENDINCLINATION="423;-48;" ID="Arrow_ID_182205611" SOURCE="ID_243059135" STARTARROW="None" STARTINCLINATION="-886;32;"/>
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1703348838523" HGAP="29" ID="ID_63570145" MODIFIED="1703349299740" TEXT="Achtung: ab Level 44 aber start t=45ms ..!!" VSHIFT="39">
<linktarget COLOR="#c6113e" DESTINATION="ID_63570145" ENDARROW="Default" ENDINCLINATION="7;-13;" ID="Arrow_ID_1100514931" SOURCE="ID_128351408" STARTARROW="None" STARTINCLINATION="-28;17;"/>
<icon BUILTIN="messagebox_warning"/>
<node CREATED="1703349346424" ID="ID_861726986" MODIFIED="1703349651485" TEXT="Start ca t=46.7ms">
<icon BUILTIN="info"/>
</node>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703349635922" ID="ID_38456104" MODIFIED="1703349646441" TEXT="... dispose(i=305,lev:44) -&gt; @44000"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703349625971" ID="ID_1860818648" MODIFIED="1703349646441" TEXT="SCH&#x2016; 0F: @46942 &#x25cb; start=44000"/>
<node BACKGROUND_COLOR="#d1ae75" COLOR="#cd0123" CREATED="1703349444075" ID="ID_1276146330" MODIFIED="1703349536414" TEXT="!&#x25c6;! 0F: @46983 &#x2699; calc(i=305, lev:44)">
<icon BUILTIN="broken-line"/>
</node>
<node BACKGROUND_COLOR="#d6a181" COLOR="#990033" CREATED="1703349556172" ID="ID_803666677" MODIFIED="1703349589931" TEXT="FD: @47026 HT:47359 -&gt; &#x25b6; 20000">
<icon BUILTIN="broken-line"/>
</node>
</node>
</node>
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1703350000768" ID="ID_1912726888" MODIFIED="1703350010722" TEXT="ab diesem Punkt...">
<icon BUILTIN="clanbomber"/>
<node CREATED="1703350015151" ID="ID_668325601" MODIFIED="1703350030577" TEXT="l&#xe4;uft die echte Berechnungs-Kette ab Level 20"/>
<node CREATED="1703350031374" ID="ID_60232772" MODIFIED="1703350052446" TEXT="die f&#xe4;lschlich direkt getriggerten Berechnungen ab Level 44"/>
<node CREATED="1703350059649" ID="ID_832024303" MODIFIED="1703350070609" TEXT="und die sonstigen Dispatches"/>
<node CREATED="1703350053618" ID="ID_250978687" MODIFIED="1703350073419" TEXT="+ mehrfach der Tick"/>
</node>
</node>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703350398676" ID="ID_1295920613" MODIFIED="1703351339292" TEXT="Dependency-Mark bedingt eine Allokation">
<icon BUILTIN="idea"/>
<node CREATED="1703350421245" ID="ID_1378115580" MODIFIED="1703351073002" STYLE="bubble">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
<font face="Monospaced" size="2">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font><font color="#6b05cd" face="Monospaced" size="2">scheduleCalcJob_</font><font face="Monospaced" size="2">(currIdx_, n-&gt;level); </font>
</p>
<p>
<font face="Monospaced" size="2">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;for&#160;(Node* pred: n-&gt;pred) </font>
</p>
<p>
<font face="Monospaced" size="2">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font><font color="#dd0909" face="Monospaced" size="2">markDependency_</font><font face="Monospaced" size="2">(pred,n); </font>
</p>
</body>
</html>
</richcontent>
<arrowlink COLOR="#c6005a" DESTINATION="ID_585444523" ENDARROW="Default" ENDINCLINATION="-259;-8;" ID="Arrow_ID_1356290670" STARTARROW="None" STARTINCLINATION="12;135;"/>
<icon BUILTIN="info"/>
</node>
<node BACKGROUND_COLOR="#fafe99" COLOR="#fa002a" CREATED="1703350535218" ID="ID_1070838316" MODIFIED="1703354065957" STYLE="fork" TEXT="ScheduleSpec::linkToSuccessor() ist noch nicht gesch&#xfc;tzt">
<arrowlink COLOR="#3f1abf" DESTINATION="ID_1782946591" ENDARROW="Default" ENDINCLINATION="172;-6;" ID="Arrow_ID_67888117" STARTARROW="None" STARTINCLINATION="-516;25;"/>
<font NAME="SansSerif" SIZE="12"/>
<icon BUILTIN="broken-line"/>
<node COLOR="#435e98" CREATED="1703350674998" HGAP="10" ID="ID_1066318656" MODIFIED="1703351002992" TEXT="Treffer! Versenkt!" VSHIFT="-14">
<icon BUILTIN="idea"/>
</node>
<node CREATED="1703350685454" ID="ID_241988264" MODIFIED="1703352526453" STYLE="bubble">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
</p>
<p>
<font face="Monospaced">... dispose(i=412,lev:72) -&gt; @72000 </font>
</p>
<p>
<font face="Monospaced">&#8214;&#8226;&#9651;&#8226;&#8214;&#160;&#160;&#160;&#160;&#160;wof:8 HT:154587 </font>
</p>
<p>
<font face="Monospaced">&#8214;SCH&#8214; </font><font color="#e50202" face="Monospaced"><b>0F</b></font><font face="Monospaced">: @154927 &#9675; start=72000 dead:100000 </font>
</p>
<p>
<font face="Monospaced">!&#9670;!&#160;&#160;&#160;</font><font color="#e50202" face="Monospaced"><b>0F</b></font><font face="Monospaced">: @154940&#160;&#160;&#9881;&#160;&#160;calc(i=412, lev:72) </font>
</p>
<p>
</p>
<p>
<font face="Monospaced">&#8214;PST&#8214; FD: @154987 &#9682; start=68000&#9657;&#9657;69000 dead:100000 </font>
</p>
<p>
<font face="Monospaced">..!&#160;&#160;&#160;BF: @154998&#160;&#10548;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(i=381) </font>
</p>
<p>
<font face="Monospaced">&#8214;PST&#8214; FD: @155018 &#9682; start=68000&#9657;&#9657;69000 dead:100000 </font>
</p>
<p>
<font face="Monospaced">&#8214;PST&#8214; BF: @155029 &#9682; start=68000&#9657;&#9657;69000 dead:100000 </font>
</p>
<p>
<font face="Monospaced">&#160;&#160;&#160;&#183;&#8214; 74: @155076 HT:69000&#160;&#160;-&gt; &#9654; 69000 </font>
</p>
<p>
</p>
<p>
<font face="Monospaced">!&#9670;!&#160;&#160;&#160;74: @155162&#160;&#160;&#9881;&#160;&#160;calc(i=383, lev:69) </font>
</p>
<p>
<font face="Monospaced">!&#9670;!&#160;&#160;&#160;BF: @155194&#160;&#160;&#9881;&#160;&#160;calc(i=384, lev:69) </font>
</p>
<p>
<font face="Monospaced">&#160;&#160;&#160;&#183;&#8214; FD: @155354 HT:69000&#160;&#160;-&gt; &#9654; 69000 </font>
</p>
<p>
</p>
<p>
<font face="Monospaced">!&#9670;!&#160;&#160;&#160;FD: @155371&#160;&#160;&#9881;&#160;&#160;calc(i=387, lev:69) </font>
</p>
<p>
<font face="Monospaced">..!&#160;&#160;&#160;</font><font color="#e50202" face="Monospaced"><b>0F</b></font><font face="Monospaced">: @155533&#160;&#160;</font><font color="#e50202" face="Monospaced"><b>&#10548;</b></font><font face="Monospaced">&#160;&#160;&#160;&#160;&#160;&#160;(i=412) </font>
</p>
<p>
<font color="#e50202" face="Monospaced"><b>PRECONDITION: extent-family.hpp:321: thread_4: access: (isValidPos (idx))</b></font>
</p>
</body>
</html>
</richcontent>
<edge COLOR="#af0a93"/>
</node>
<node CREATED="1703351009483" HGAP="19" ID="ID_585444523" MODIFIED="1703351067409" TEXT="unmittelbar vor der Assertion kam der &#xbb;arbeitende Planer&#xab; aus dem Calc-Job zur&#xfc;ck" VSHIFT="31">
<linktarget COLOR="#c6005a" DESTINATION="ID_585444523" ENDARROW="Default" ENDINCLINATION="-259;-8;" ID="Arrow_ID_1356290670" SOURCE="ID_1378115580" STARTARROW="None" STARTINCLINATION="12;135;"/>
</node>
<node CREATED="1703351079046" ID="ID_1288012843" MODIFIED="1703351288764">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
...und der Stack-Trace zeigt ja, da&#223; der Call-Pfad &#252;ber <b>SchedulerCtx::setDependency()</b>&#160; lief
</p>
</body>
</html>
</richcontent>
</node>
</node>
</node>
</node>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703351409418" ID="ID_1936410340" MODIFIED="1703353881323" STYLE="fork">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
sichtbar wurde das durch eine <b>zu sp&#228;te Startzeit</b>
</p>
</body>
</html>
</richcontent>
<font NAME="SansSerif" SIZE="12"/>
<icon BUILTIN="broken-line"/>
<node CREATED="1703351454521" ID="ID_1802797733" MODIFIED="1703351476385" TEXT="diese allein allerdings h&#xe4;tte nur zur Korruption des Hashes gef&#xfc;hrt">
<icon BUILTIN="info"/>
</node>
<node BACKGROUND_COLOR="#d2a88f" COLOR="#990033" CREATED="1703351477857" ID="ID_1986727321" MODIFIED="1703354008004" TEXT="Planungs-Chunk ab Level 44 wurde auf t=45ms terminiert">
<arrowlink COLOR="#a9196d" DESTINATION="ID_243059135" ENDARROW="Default" ENDINCLINATION="-4;488;" ID="Arrow_ID_158178883" STARTARROW="None" STARTINCLINATION="707;-844;"/>
<icon BUILTIN="help"/>
<icon BUILTIN="yes"/>
<node CREATED="1703351673584" ID="ID_1917629807" MODIFIED="1703351690653" TEXT="das h&#xe4;tte sein m&#xfc;ssen t=42ms - preRoll"/>
<node BACKGROUND_COLOR="#ccb59b" COLOR="#6e2a38" CREATED="1703352265078" ID="ID_378590002" MODIFIED="1703352271187" TEXT="das ist ein Neben-Schauplatz">
<font ITALIC="true" NAME="SansSerif" SIZE="14"/>
<icon BUILTIN="yes"/>
<node CREATED="1703352272506" ID="ID_1155949651" MODIFIED="1703352284021" TEXT="der Test-Planer hier beachtet die aktuelle Zeit nicht (KISS)"/>
<node CREATED="1703352284547" ID="ID_856920311" MODIFIED="1703352316461">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
der reale Planer mu&#223; daf&#252;r sogar <b>elaborierte Kontroll-Logik</b>&#160; haben
</p>
</body>
</html>
</richcontent>
</node>
</node>
<node CREATED="1703352638457" ID="ID_1942328962" MODIFIED="1703352653564" TEXT="trotzdem h&#xe4;tte das nicht passieren d&#xfc;rfen"/>
</node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#3f0099" CREATED="1703353017072" ID="ID_1850770118" MODIFIED="1703354053482" TEXT="Logik-Fehler: falsche Bezugs-Node verwendet">
<arrowlink COLOR="#2f28ad" DESTINATION="ID_1815362637" ENDARROW="Default" ENDINCLINATION="205;-5;" ID="Arrow_ID_258584322" STARTARROW="None" STARTINCLINATION="-334;20;"/>
<icon BUILTIN="broken-line"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703353040028" ID="ID_813083541" MODIFIED="1703353822445" TEXT="brauche den Anfang vom Chunk">
<icon BUILTIN="yes"/>
</node>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1703353049796" ID="ID_913957159" MODIFIED="1703353822444" TEXT="habe aber die End-Node genommen">
<icon BUILTIN="broken-line"/>
</node>
</node>
</node>
</node>
</node>
<node CREATED="1703353891475" ID="ID_1234547026" MODIFIED="1703353896302" TEXT="Fixes / Verbesserungen">
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1703353897930" ID="ID_1782946591" MODIFIED="1703354058778" TEXT="auch Dependency-Planung per Grooming-Token sch&#xfc;tzen">
<linktarget COLOR="#3f1abf" DESTINATION="ID_1782946591" ENDARROW="Default" ENDINCLINATION="172;-6;" ID="Arrow_ID_67888117" SOURCE="ID_1070838316" STARTARROW="None" STARTINCLINATION="-516;25;"/>
<icon BUILTIN="flag-yellow"/>
</node>
<node COLOR="#338800" CREATED="1703353913264" ID="ID_1815362637" MODIFIED="1703354053483" TEXT="Chunk-Start-Zeit korrekt (auf Anfang) setzen">
<linktarget COLOR="#2f28ad" DESTINATION="ID_1815362637" ENDARROW="Default" ENDINCLINATION="205;-5;" ID="Arrow_ID_258584322" SOURCE="ID_1850770118" STARTARROW="None" STARTINCLINATION="-334;20;"/>
<icon BUILTIN="button_ok"/>
</node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1703353928974" ID="ID_538772671" MODIFIED="1703353948865" TEXT="auch Planungs Zeit-Schritt konfigurierbar machen">
<icon BUILTIN="flag-yellow"/>
</node>
</node>
</node>