02826d2365
[+] AuLoop::kWaitMultipleFlagNoIOCallbacks
...
[+] AuLoop::kWaitMultipleFlagBreakAfterAPC
[+] Alternative Wait AND implementations for NT, POSIX, and generic
[+] IOConfig::...
[*] LoopQueue improvements
[+] ILoopQueue::ConfigureDoIOApcCallbacks
[+] ILoopQueue::ConfigureDoIOApcCallbacks
2024-10-10 11:03:26 +01:00
82ed6e5617
[*] AuAsync build regression
...
[*] Fix potential for null deref under net adapters api
[*] Improved generic IO WaitFor * AND * (still suxs)
2024-10-09 01:59:50 +01:00
6e9e962c84
[*] AuLoop::WaitMultipleLoopSources optimizations (do not allocate so much, if we can), and
...
[*] Updated Loop.hpp comment
2024-09-28 23:14:48 +01:00
ff65193d0f
[*] TODO: (Finish me) Win7 ILoopQueue doesn't seem to like the in process high perf timer io primitive so much. It works fine under Linux and WaitForMultipleObject WinXP-WinRT.
...
Windows 7 Perf hack
2024-09-21 01:45:46 +01:00
36349b4d02
[*] NT: fix AuLoop::ILoopQueue::WaitAll defects
2024-09-21 01:43:03 +01:00
b80bb7fc77
[*] Fix regression in WaitForMultipleObjectsEx
2024-09-13 08:47:32 +01:00
6852fbddf1
[*] Improved high resolution timing on Windows 7, Windows 10 < RS4, and Windows10 >= RS4/Win11
...
Win7 test:
[2024-09-10 07:09:31] [Debug] | Waiting 750 overshoot: 103600 NS
[2024-09-10 07:09:31] [Debug] | bret: true
[2024-09-10 07:09:31] [Debug] | Waiting 750 overshoot: 145200 NS
[2024-09-10 07:09:32] [Debug] | bret: true
[2024-09-10 07:09:32] [Debug] | Waiting 750 overshoot: 100000 NS
[2024-09-10 07:09:33] [Debug] | bret: true
[2024-09-10 07:09:33] [Debug] | Waiting 750 overshoot: 88000 NS
[2024-09-10 07:09:34] [Debug] | bret: true
[2024-09-10 07:09:34] [Debug] | Waiting 750 overshoot: 114500 NS
[2024-09-10 07:09:34] [Debug] | bret: true
[2024-09-10 07:09:34] [Debug] | Waiting 750 overshoot: 85000 NS
[2024-09-10 07:09:35] [Debug] | bret: true
[2024-09-10 07:09:35] [Debug] | Waiting 750 overshoot: 133500 NS
[2024-09-10 07:09:36] [Debug] | bret: true
[2024-09-10 07:09:36] [Debug] | Waiting 750 overshoot: 137600 NS
[2024-09-10 07:09:36] [Debug] | bret: true
[2024-09-10 07:09:36] [Debug] | Waiting 750 overshoot: 111800 NS
[2024-09-10 07:09:37] [Debug] | bret: true
[2024-09-10 07:09:37] [Debug] | Waiting 750 overshoot: 103100 NS
[2024-09-10 07:09:38] [Debug] | bret: true
[2024-09-10 07:09:38] [Debug] | Waiting 750 overshoot: 132100 NS
[2024-09-10 07:09:39] [Debug] | bret: true
[2024-09-10 07:09:39] [Debug] | Waiting 750 overshoot: 87900 NS
[2024-09-10 07:09:39] [Debug] | bret: true
[2024-09-10 07:09:39] [Debug] | Waiting 750 overshoot: 105000 NS
[2024-09-10 07:09:40] [Debug] | Waiting 250 overshoot: 59100 NS
[2024-09-10 07:09:40] [Debug] | Waiting 250 overshoot: 95000 NS
[2024-09-10 07:09:40] [Debug] | Waiting 250 overshoot: 116100 NS
[2024-09-10 07:09:40] [Debug] | Waiting 250 overshoot: 111600 NS
[2024-09-10 07:09:41] [Debug] | Waiting 250 overshoot: 46600 NS
[2024-09-10 07:09:41] [Debug] | Waiting 250 overshoot: 82300 NS
[2024-09-10 07:09:41] [Debug] | Waiting 250 overshoot: 84700 NS
[2024-09-10 07:09:41] [Debug] | Waiting 250 overshoot: 77400 NS
[2024-09-10 07:09:42] [Debug] | Waiting 250 overshoot: 56500 NS
[2024-09-10 07:09:42] [Debug] | Waiting 250 overshoot: 88500 NS
[2024-09-10 07:09:42] [Debug] | Waiting 250 overshoot: 67100 NS
[2024-09-10 07:09:42] [Debug] | Waiting 250 overshoot: 69200 NS
[2024-09-10 07:09:43] [Debug] | Waiting 250 overshoot: 52500 NS
[2024-09-10 07:09:43] [Debug] | Waiting 250 overshoot: 87300 NS
[2024-09-10 07:09:43] [Debug] | Waiting 250 overshoot: 66600 NS
[2024-09-10 07:09:43] [Debug] | Waiting 250 overshoot: 83700 NS
[2024-09-10 07:09:44] [Debug] | Waiting 250 overshoot: 79700 NS
[2024-09-10 07:09:44] [Debug] | Waiting 250 overshoot: 60300 NS
[2024-09-10 07:09:44] [Debug] | Waiting 250 overshoot: 116800 NS
[2024-09-10 07:09:44] [Debug] | Waiting 250 overshoot: 80500 NS
[2024-09-10 07:09:46] [Debug] | Waiting 1250 overshoot: 75800 NS
[2024-09-10 07:09:47] [Debug] | Waiting 1250 overshoot: 87500 NS
[2024-09-10 07:09:48] [Debug] | Waiting 1250 overshoot: 5367700 NS
[2024-09-10 07:09:49] [Debug] | Waiting 1250 overshoot: 103200 NS
[2024-09-10 07:09:51] [Debug] | Waiting 1250 overshoot: 7424400 NS
[2024-09-10 07:09:52] [Debug] | Waiting 1250 overshoot: 5281800 NS
[2024-09-10 07:09:53] [Debug] | Waiting 1250 overshoot: 5673100 NS
[2024-09-10 07:09:54] [Debug] | Waiting 1250 overshoot: 10185700 NS
[2024-09-10 07:09:55] [Debug] | Waiting 1250 overshoot: 12369200 NS
[2024-09-10 07:09:57] [Debug] | Waiting 1250 overshoot: 75800 NS
[2024-09-10 07:09:58] [Debug] | Waiting 1250 overshoot: 96900 NS
[2024-09-10 07:09:59] [Debug] | Waiting 1250 overshoot: 3663000 NS
[2024-09-10 07:10:00] [Debug] | Waiting 1250 overshoot: 11713900 NS
[2024-09-10 07:10:02] [Debug] | Waiting 1250 overshoot: 138500 NS
[2024-09-10 07:10:03] [Debug] | Waiting 1250 overshoot: 9764800 NS
[2024-09-10 07:10:04] [Debug] | Waiting 1250 overshoot: 8398700 NS
[2024-09-10 07:10:05] [Debug] | Waiting 1250 overshoot: 8862000 NS
[2024-09-10 07:10:07] [Debug] | Waiting 1250 overshoot: 3616900 NS
[2024-09-10 07:10:08] [Debug] | Waiting 1250 overshoot: 6343400 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1250 overshoot: 9492100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 111900 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 115700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 137100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 135000 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 219300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 127700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 87900 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 862200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 107200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 80000 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 69800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 230000 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 72400 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 67100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 89000 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 80400 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 73200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 58100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 64100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 5 overshoot: 55700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 75100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 59900 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 56100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 57300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 141700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 1089800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 183100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 328500 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 80200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 72200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 74800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 67900 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 74000 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 65400 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 83400 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 85500 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 74600 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 73200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 79300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 10 overshoot: 74100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 77800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 93200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 71000 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 71300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 80700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 90700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 95200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 81500 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 79300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 90600 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 104000 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 99400 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 89600 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 106500 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 107800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 104300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 105300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 103900 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 72900 NS
[2024-09-10 07:10:09] [Debug] | Waiting 1 overshoot: 112300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 109600 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 112800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 75700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 103900 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 104800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 109600 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 126700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 110700 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 108500 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 96900 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 111200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 118800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 115800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 137200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 65200 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 233800 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 106300 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 126500 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 105100 NS
[2024-09-10 07:10:09] [Debug] | Waiting 2 overshoot: 104600 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 106300 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 107200 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 107000 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 102300 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 97600 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 95800 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 104800 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 115900 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 104900 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 114200 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 108900 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 117400 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 106400 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 118400 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 348300 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 113300 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 125600 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 111800 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 106300 NS
[2024-09-10 07:10:09] [Debug] | Waiting .6 overshoot: 106700 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 108000 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 82100 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 116500 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 96500 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 99100 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 78000 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 87500 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 103100 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 99100 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 114000 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 87800 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 101600 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 89300 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 76100 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 75700 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 75900 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 90200 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 94700 NS
[2024-09-10 07:10:09] [Debug] | Waiting .3 overshoot: 88000 NS
-----------------------------------------------------------------
[2024-09-10 07:16:32] [Debug] | bret: true
[2024-09-10 07:16:32] [Debug] | Waiting 750 overshoot: 65200 NS
[2024-09-10 07:16:33] [Debug] | bret: true
[2024-09-10 07:16:33] [Debug] | Waiting 750 overshoot: 73900 NS
[2024-09-10 07:16:34] [Debug] | bret: true
[2024-09-10 07:16:34] [Debug] | Waiting 750 overshoot: 66800 NS
[2024-09-10 07:16:34] [Debug] | bret: true
[2024-09-10 07:16:34] [Debug] | Waiting 750 overshoot: 63800 NS
[2024-09-10 07:16:35] [Debug] | bret: true
[2024-09-10 07:16:35] [Debug] | Waiting 750 overshoot: 84200 NS
[2024-09-10 07:16:36] [Debug] | bret: true
[2024-09-10 07:16:36] [Debug] | Waiting 750 overshoot: 138500 NS
[2024-09-10 07:16:37] [Debug] | bret: true
[2024-09-10 07:16:37] [Debug] | Waiting 750 overshoot: 85000 NS
[2024-09-10 07:16:37] [Debug] | bret: true
[2024-09-10 07:16:37] [Debug] | Waiting 750 overshoot: 71900 NS
[2024-09-10 07:16:38] [Debug] | bret: true
[2024-09-10 07:16:38] [Debug] | Waiting 750 overshoot: 81400 NS
[2024-09-10 07:16:39] [Debug] | bret: true
[2024-09-10 07:16:39] [Debug] | Waiting 750 overshoot: 65600 NS
[2024-09-10 07:16:40] [Debug] | bret: true
[2024-09-10 07:16:40] [Debug] | Waiting 750 overshoot: 60400 NS
[2024-09-10 07:16:40] [Debug] | bret: true
[2024-09-10 07:16:40] [Debug] | Waiting 750 overshoot: 77400 NS
[2024-09-10 07:16:41] [Debug] | bret: true
[2024-09-10 07:16:41] [Debug] | Waiting 750 overshoot: 81500 NS
[2024-09-10 07:16:42] [Debug] | bret: true
[2024-09-10 07:16:42] [Debug] | Waiting 750 overshoot: 91600 NS
[2024-09-10 07:16:43] [Debug] | bret: true
[2024-09-10 07:16:43] [Debug] | Waiting 750 overshoot: 148500 NS
[2024-09-10 07:16:43] [Debug] | bret: true
[2024-09-10 07:16:43] [Debug] | Waiting 750 overshoot: 75600 NS
[2024-09-10 07:16:44] [Debug] | bret: true
[2024-09-10 07:16:44] [Debug] | Waiting 750 overshoot: 112200 NS
[2024-09-10 07:16:45] [Debug] | bret: true
[2024-09-10 07:16:45] [Debug] | Waiting 750 overshoot: 102700 NS
[2024-09-10 07:16:46] [Debug] | bret: true
[2024-09-10 07:16:46] [Debug] | Waiting 750 overshoot: 103700 NS
[2024-09-10 07:16:46] [Debug] | Waiting 250 overshoot: 96700 NS
[2024-09-10 07:16:46] [Debug] | Waiting 250 overshoot: 101500 NS
[2024-09-10 07:16:46] [Debug] | Waiting 250 overshoot: 59100 NS
[2024-09-10 07:16:47] [Debug] | Waiting 250 overshoot: 73500 NS
[2024-09-10 07:16:47] [Debug] | Waiting 250 overshoot: 89700 NS
[2024-09-10 07:16:47] [Debug] | Waiting 250 overshoot: 65900 NS
[2024-09-10 07:16:47] [Debug] | Waiting 250 overshoot: 53600 NS
[2024-09-10 07:16:48] [Debug] | Waiting 250 overshoot: 117200 NS
[2024-09-10 07:16:48] [Debug] | Waiting 250 overshoot: 133600 NS
[2024-09-10 07:16:48] [Debug] | Waiting 250 overshoot: 65700 NS
[2024-09-10 07:16:48] [Debug] | Waiting 250 overshoot: 60900 NS
[2024-09-10 07:16:49] [Debug] | Waiting 250 overshoot: 76400 NS
[2024-09-10 07:16:49] [Debug] | Waiting 250 overshoot: 77000 NS
[2024-09-10 07:16:49] [Debug] | Waiting 250 overshoot: 115700 NS
[2024-09-10 07:16:49] [Debug] | Waiting 250 overshoot: 45000 NS
[2024-09-10 07:16:50] [Debug] | Waiting 250 overshoot: 73000 NS
[2024-09-10 07:16:50] [Debug] | Waiting 250 overshoot: 75400 NS
[2024-09-10 07:16:50] [Debug] | Waiting 250 overshoot: 95300 NS
[2024-09-10 07:16:50] [Debug] | Waiting 250 overshoot: 164200 NS
[2024-09-10 07:16:51] [Debug] | Waiting 250 overshoot: 97600 NS
[2024-09-10 07:16:52] [Debug] | Waiting 1250 overshoot: 274900 NS
[2024-09-10 07:16:53] [Debug] | Waiting 1250 overshoot: 121300 NS
[2024-09-10 07:16:54] [Debug] | Waiting 1250 overshoot: 61100 NS
[2024-09-10 07:16:55] [Debug] | Waiting 1250 overshoot: 172200 NS
[2024-09-10 07:16:57] [Debug] | Waiting 1250 overshoot: 75700 NS
[2024-09-10 07:16:58] [Debug] | Waiting 1250 overshoot: 218500 NS
[2024-09-10 07:16:59] [Debug] | Waiting 1250 overshoot: 172700 NS
[2024-09-10 07:17:00] [Debug] | Waiting 1250 overshoot: 87200 NS
[2024-09-10 07:17:02] [Debug] | Waiting 1250 overshoot: 197300 NS
[2024-09-10 07:17:03] [Debug] | Waiting 1250 overshoot: 213600 NS
[2024-09-10 07:17:04] [Debug] | Waiting 1250 overshoot: 388600 NS
[2024-09-10 07:17:05] [Debug] | Waiting 1250 overshoot: 85200 NS
[2024-09-10 07:17:07] [Debug] | Waiting 1250 overshoot: 91900 NS
[2024-09-10 07:17:08] [Debug] | Waiting 1250 overshoot: 176100 NS
[2024-09-10 07:17:09] [Debug] | Waiting 1250 overshoot: 7844400 NS
[2024-09-10 07:17:10] [Debug] | Waiting 1250 overshoot: 145600 NS
[2024-09-10 07:17:11] [Debug] | Waiting 1250 overshoot: 61100 NS
[2024-09-10 07:17:13] [Debug] | Waiting 1250 overshoot: 94400 NS
[2024-09-10 07:17:14] [Debug] | Waiting 1250 overshoot: 94400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1250 overshoot: 101800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 81100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 96800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 97500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 43600 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 60000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 62400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 74500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 96600 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 93800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 74500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 87900 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 102600 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 61600 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 55200 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 57200 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 83600 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 53300 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 56000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 58900 NS
[2024-09-10 07:17:15] [Debug] | Waiting 5 overshoot: 91000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 96500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 51900 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 322800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 82600 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 140300 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 334400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 317200 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 110800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 318200 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 102800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 141000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 84000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 190100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 69100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 104300 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 84500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 123400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 77500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 57300 NS
[2024-09-10 07:17:15] [Debug] | Waiting 10 overshoot: 59000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 41000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 31900 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 86100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 54100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 201000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 43800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 47300 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 62900 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 56000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 58700 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 40900 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 55800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 57500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 33900 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 39100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 40500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 40100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 65400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 77500 NS
[2024-09-10 07:17:15] [Debug] | Waiting 1 overshoot: 27000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 57700 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 50100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 63100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 62400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 74200 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 59000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 39000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 56700 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 67200 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 445400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 60900 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 46600 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 48800 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 39400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 35000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 52400 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 41100 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 38000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 36000 NS
[2024-09-10 07:17:15] [Debug] | Waiting 2 overshoot: 41400 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 36800 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 36900 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 30400 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 61000 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 36800 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 48700 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 30000 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 31400 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 41100 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 25700 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 37900 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 36700 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 31300 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 30700 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 27600 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 29200 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 28600 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 28800 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 47200 NS
[2024-09-10 07:17:15] [Debug] | Waiting .6 overshoot: 28300 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 28900 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 29700 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 28700 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 28000 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 27400 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 28100 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 26100 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 28100 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 28000 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 29200 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 29700 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 29300 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 27100 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 26600 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 28100 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 28200 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 27300 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 27400 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 30100 NS
[2024-09-10 07:17:15] [Debug] | Waiting .3 overshoot: 35100 NS
2024-09-10 08:17:32 +01:00
e62a99777f
[*] WaitMultipleLoopSourcesEx (any) fixes
2024-09-09 12:40:49 +01:00
16409d449b
[*] Build regression ( 4d4f5e2501
) and amend ( 35761edaec
)
...
v0.3.1178
2024-09-08 23:35:12 +01:00
35761edaec
[+] AuIO::Loop::NewLSTimerHighResolution
...
[*] ILSTimer::UpdateTime -> ILSTimer::UpdateTimeWall
[*] ILSTimer::UpdateTimeNs -> ILSTimer::UpdateTimeWallNs
[+] ILSTimer::UpdateTimeSteady
[+] ILSTimer::UpdateTimeSteadyNs
2024-09-08 07:26:23 +01:00
4d4f5e2501
[+] ILoopSource::IsSignaledExt(...)
...
[+] ILoopSource::WaitOnExt(...)
[+] ILoopSource::WaitOnAbsExt(...)
2024-09-07 22:45:34 +01:00
55cac676f5
[+] AuLoop::NewSemaphoreEx with max count option for in-process (not ipc) limiting the total wakes.
...
This is required for Xbox, Xbox 360, and Win32 emulators deriving a mutex via a the NT semaphore primitive instead of the builtin binary semaphore (event) and mutex.
2024-08-05 15:57:13 +01:00
5947e6a2c3
[*/+] Added internal AuLoop::WaitMultipleOrObjects function for POSIX Issue4+ users, excluding the BSDs, to optimize AuLoop::WaitForMultipleObject users. (Win32 and Xbox emulators).
...
This mitigates the epoll allocation / release under Linux.
2024-08-02 02:23:19 +01:00
67c4cdbee0
[*] TODO: fix int on both platforms
2024-08-01 13:33:36 +01:00
cc01b0557a
[*] Improve ILoopQueue::WaitAll parity (been on the todo list for, idk, 3 years)
2024-08-01 12:55:08 +01:00
8545c59cba
[*] Amend: 5cafefae
bad linux optimization (?)
2024-07-31 12:02:31 +01:00
5cafefae5d
[*] LSLocalSemaphore bug fix for scriptability. (TODO: reimpl like the event?)
...
[*] Fix: IO objects not using the explicit slow sync primitives.
Dunno how these werent refactored; then again, i never properly got around to finishing the factories for fast/slow io objects. In addition, some of these arent even accessed by the ILoopSource interface, so it's not as critical of a failure.
2024-07-30 17:53:58 +01:00
9956f1c153
[+] AuIO::Loop::kWaitMultipleFlagBreakAfterOne for Win32 WaitForMultipleObjects shim (we cannot return an array of indices to a win32 program)
2024-07-30 17:26:38 +01:00
134816e128
[*] Optimize primitives SMTYield for Alderlake+ user-space, BIOS-ring mwait, and AARCH
2024-05-03 12:22:38 +01:00
c87ec4e4b6
[*] Linux build regressions
2024-03-21 00:32:13 +00:00
2163a58892
[*] Linux runtime regressions
2024-03-04 11:55:54 +00:00
1920f5a8d5
[+] IO Thread Pool
...
[+] FileSeekingWriter
[+] ISeekingWriter
[+] AuIO::Adapters::NewAsyncTransactionFromStreamReader
[+] AuIO::Adapters::NewAsyncTransactionFromStreamSeekingReader
[+] AuIO::Adapters::NewAsyncTransactionFromStreamWriter
[+] AuIO::Adapters::NewAsyncTransactionFromStreamSeekingWriter
[+] AuIO::Async::UseSpecifiedWorkerGroup
[+] AuMemory::NewSharableResizableBuffer
[+] AuMemory::NewSharableBuffer
[*] Update comments
2024-02-26 18:12:04 +00:00
493f449d1d
[*] Major Linux build regressions
2024-02-23 12:44:43 +00:00
aa811f93aa
[*] Readd the public symbols to create base kernel io primitives for interop
2024-01-03 17:36:45 +00:00
1c0efebd87
[+] AuLoop::DbgLoopSourceToReadFd
...
[+] AuLoop::DbgLoopSourceToWriteFd
2024-01-03 01:49:15 +00:00
662dbac0c1
[+] IO completion groups
2023-12-28 16:49:11 +00:00
a2c8f036e0
[*] 1576f56d
cont (i messed up again)
2023-12-23 16:55:04 +00:00
1576f56d19
[*] Fix busted nt timeouts under loopsource waits
2023-12-23 08:03:59 +00:00
24fec2301c
[+] NtWaitForMultipleObjects awareness
2023-12-22 06:00:13 +00:00
2570aea213
[+] Clang/Win32 compilation support
2023-12-19 03:43:11 +00:00
414c736179
[+] ELoopSource expansion
2023-12-18 07:39:53 +00:00
22486b90e6
[*] NT: WaitMultipleLoopSourcesEx wasn't bypassing the wait cap
2023-12-18 07:35:24 +00:00
a3046658fe
[*] Minor update to WaitMultipleLoopSourcesEx
2023-12-11 23:34:31 +00:00
5541c25050
[+] AuIO::Loop::WaitMultipleLoopSourcesEx
2023-12-10 22:25:03 +00:00
fe529b31da
[*] ITimer comment and win32 patch
2023-12-09 12:25:46 +00:00
783bed0d85
[*] LSLocalEvent: finish optimized impl (?)
2023-12-09 11:10:02 +00:00
8944d8bd16
[+] IAsyncTimer
...
[+] IAsyncTimerCallback
[+] ETickType.hpp
[+] EWorkPriority.hpp
[+] static IThreadPool::GetSelfIOProcessor()
[+] static IThreadPool::GetSelfIONetInterface()
[+] static IThreadPool::GetSelfIONetWorker()
[-] [Source/Async/]AsyncRunnable.hpp
[*] Begin encapsulating WorkerPId_t
[*] WorkerPId_t no longer take strong pointers to prevent leaks given that these identifiers are copied and kept alive everywhere
2023-12-07 09:20:23 +00:00
e60e308087
[*] Minor WaitMultipleLoopSources optimization
2023-12-03 07:40:20 +00:00
9fea60a9ed
[*] 64ce35dd
cont
2023-12-02 11:06:49 +00:00
64ce35dd87
[*] Cont work on WaitMultipleLoopSources's yield time
2023-12-02 03:39:41 +00:00
eceb037e70
[*] WaitMultipleLoopSources optimizations cont
2023-12-01 12:31:09 +00:00
3f7f2639c4
[*] AuLoop: Fixed missing logic in a fast path
2023-12-01 12:16:47 +00:00
507f418b81
[*] Attempt to optimize AuLoop::WaitMultipleLoopSources
2023-12-01 11:20:40 +00:00
b0a7417d6f
[*] Local loopsources werent calling the parents OnTrigger
2023-12-01 11:02:15 +00:00
f05cafbff7
[*] Win32 loopqueue optimization
2023-12-01 10:36:47 +00:00
dcb27645a1
[*] bug: drop limitation in io processor
...
[*] attempting to mitigate freeze on remote start watch
2023-11-05 21:20:16 +00:00
17ca7a6bef
[*] Added SMT yield down these paths
2023-10-26 17:25:40 +01:00
4ce49941ff
[+] SysCheckNotNullMemory
...
[+] SysCheckNotNull
[+] SysCheckRetExpNotNull
[+] SysCheckRetExpNotNullMemory
2023-10-24 17:43:00 +01:00
72fd8d018e
[*] a7af61e9
cont: Potential Win32 loop queue bug fixes/improvements
2023-10-23 10:21:31 +01:00
a7af61e9bf
[*] Potential Win32 loop queue bug fixes/improvements
2023-10-22 22:12:55 +01:00