Commit Graph

169 Commits

Author SHA1 Message Date
89686eb022 [*] Use PMR allocators instead 2024-09-09 06:52:38 +01:00
0571aa8dd4 [+] AU_LOCK_GLOBAL_GUARD
[+] AuThreading::GetShutdownReadLock()
2024-09-09 03:46:38 +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
830286de46 [*] (f466df84: cont): OOM hardening 2024-09-05 17:41:15 +01:00
f466df8464 [*] Minor thread pool fixes / improvements before some bigger commits are done 2024-09-05 06:38:57 +01:00
46ef3231a2 [*] Change how the default work completion group for an AuAsync threads is created and kept alive 2024-07-12 20:40:05 +01:00
d803f1547c [+] Added AuAsync per thread io group singleton
[*] Move static functions out of the thread pool interface. no idea how i had successful builds before
2024-07-12 17:22:07 +01:00
85cf0a793a [*] Release AuAsyncTimer callback references as soon as the object is canceled 2024-05-28 18:18:54 +01:00
78d4ce3d58 [*] You stupid fuck. How was this not committed? 2024-05-27 20:57:09 +01:00
e4fa5d549e [*] Refactor IAuroraThread 2024-05-27 13:28:57 +01:00
9b26eea886 [+] IAsyncTimer::SetCatchUp(bool bCatchUp) 2024-05-19 17:01:51 +01:00
316fb3f6b2 [*] (Disabled) bad optimization: possibility to disable spinning of the auasync task scheduler. Worsens CPU usage when spinning is desired on the target platform, when paired with the two platforms this optimization would've benefited, Windows 7 and Linux. 2024-05-05 22:01:19 +01:00
a35c1f165a [+] AuAsync::ThreadPool::Wakeup(WorkerId_t) 2024-05-03 11:32:31 +01:00
373ccc3660 [+] C++20 QOL changes to AuFutures including AuFuture<X, Y>::BlockUntilComplete()
[*] Added additional check for failing dependencies of IWorkItems. Not required for fails to cascade, but this is nice to have here.
2024-05-03 09:28:14 +01:00
195af26aa4 [*] C++20 coroutine support: recursive callstack 2024-05-01 20:09:35 +01:00
13ddd42961 [*] Limit kThreadIdAny dequeues until one until we can preempt the work queues of threads within our local group 2024-04-10 07:44:06 +01:00
30fa15b726 [*] Clean up grug and auasync scheduler / improved idle cpu usage 2024-03-26 18:38:52 +00:00
2163a58892 [*] Linux runtime regressions 2024-03-04 11:55:54 +00:00
957338d0e3 [*] bug fixes 2024-02-28 14:47:00 +00:00
097c0c1917 [+] IWorkItem::AddDelayTimeRepeating
[+] IWorkItem::AddDelayTimeNsRepeating
2024-02-27 12:24:17 +00:00
4ef055f81e [+] IWorkItem::SetSchedByLoopSourceRepeating
[+] ETickType::eRerunAndNotifyRepeatingWaiters
[+] ETickType::eScheduleAndNotifyRepeatingWaiters
[*] ETickType::eRerun async work items of ANY io fences
2024-02-27 12:08:22 +00:00
0784d9101c [*] Harden AuAsync shutdown 2024-02-01 21:35:42 +00:00
2b69c07b67 [*] IncrementAbortFenceOnWorker should support kThreadIdAny 2024-01-26 03:04:23 +00:00
cb751d0286 [*] Fix regressions in work groups 2024-01-23 22:59:13 +00:00
662dbac0c1 [+] IO completion groups 2023-12-28 16:49:11 +00:00
be2b781ed6 [*] mitigations and clean up before two major commits 2023-12-26 21:01:29 +00:00
cdc6eeeabd [*] Two trivial bug fixes 2023-12-24 22:03:14 +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
e853b44ee6 [*] Fix bugs in the partially rewritten async scheduler 2023-12-06 17:48:20 +00:00
e9651eead3 [*] Linux build regressons 2023-12-04 21:13:25 +00:00
a189151c59 [+] AuAsync::IThreadPool::GetIOProcessor
[+] AuAsync::IThreadPool::GetIONetInterface
[+] AuAsync::IThreadPool::GetIONetWorker
[+] AuAsync::IWorkItem::SetSchedByLoopSource
2023-12-01 09:22:51 +00:00
3225d8cbda [*] Fix shutdown regression (e037fc21, a7dfd899 151bb106, cleanup cont) 2023-11-12 00:21:50 +00:00
151bb106fb [*] Lock access to wpWorkers (e037fc21, a7dfd899 cleanup cont) and remove a redundant write lock to solve a deadlock 2023-11-11 12:48:02 +00:00
a7dfd899f8 [*] e037fc21 cleanup cont 2023-11-11 11:30:38 +00:00
e037fc214a [*] Begin cleaning up AuAsync (2/?)
6af9940b, ???
2023-11-11 10:11:09 +00:00
8624499ab8 [*] async: none of these async io mixing modes ever worked properly. simplify/remove 2023-11-06 04:14:43 +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
df784c45b8 [+] IWorkItemHandler::ProcessInfo::reschedSteadyClockAbsNs 2023-10-31 21:07:51 +00:00
deaa18ab07 [*] Bug fixes 2023-10-25 23:49:43 +01:00
ceb67798f1 [+] IThreadPool::IncrementAbortFenceOnPool
[+] IThreadPool::IncrementAbortFenceOnWorker
[+] IThreadPool::QueryAbortFence
[+] IThreadPool::QueryShouldAbort
2023-10-24 15:33:30 +01:00
f62771b6e7 [*] Build regression after ROXTL AuMin/Max update to use the common type as opposed to a stupid reference of a forced common T in the usual case of taking one of two integer values
(thats to say, the edge case of needing copy-less operator-overloaded numeric-like classes aren't used anywhere. The c++ definition of min/max is stupid; we dont ever need a reference to min/max variable)
2023-10-17 04:58:30 +01:00
9686457891 [*] caught async crash on shutdown 2023-10-02 21:33:15 +01:00
a60e740328 [*] caught async deinit deadlock
featues conflicting with idec what. this mess needs rewriting
2023-10-01 17:10:48 +01:00
f6437ef66e [-] Engine 0.0/1.0 async 2023-09-22 06:07:03 +01:00
7010155916 [*] Improved schedular regressed intraprocess command dispatch of main thread cmds 2023-09-16 18:08:27 +01:00
d0fb19f87e [*] Global build regressions caused by addd4080 2023-09-15 18:09:34 +01:00
d49d4ad4fc [*] addd4080 cont 2023-09-15 16:54:21 +01:00
addd4080b2 [*] Adjust PId_t::pool null behaviour 2023-09-15 16:48:55 +01:00
213ed6c49b [*] yes 2023-09-05 22:31:16 +01:00
3adb019cf1 [*] d3587dbf cont 2023-09-05 15:03:59 +01:00