Commit Graph

62 Commits

Author SHA1 Message Date
ad5ff2d783 [*] Simplified Win32 TLS callback overhead to prevent unwanted LoadLibraryW calls
(ive seen windows components do stupid things to result in crashes. time to harden.)
2023-12-07 19:04:30 +00:00
cde646ae86 [*] More formatting regressions 2023-12-01 08:03:31 +00:00
9ba049d485 [*] Refactor "Jiffies" to "Frequency" 2023-12-01 04:49:18 +00:00
de6b9d0bcb [*] (todo port) Dont forget these should be upcasted to doubles 2023-11-29 07:12:25 +00:00
0331c7cf87 [+] DispatchTimeFromAuSteadyAbsNS 2023-11-04 04:43:55 +00:00
5041b2f241 [+] Mach steady time 2023-11-02 17:45:03 +00:00
13e8ff460b [+] AURORA_STEADY_TIME_SHID_CPU_XP_MODE 2023-10-17 07:55:44 +01:00
f798c59cb8 [*] Fixed missed and double mimalloc init, via allocation under SwInfo, being probed by alternative nt clock query logic, under the fallback rng algorithm, possibly under another tls thread_only race condition 2023-10-08 15:00:52 +01:00
795fb3d2d1 [+] NT 3.5 through Windows 7 specific clock backends 2023-10-07 16:57:20 +01:00
522def0a85 [*] I'm going to be autistic and say "everybody" is (read: industry midwits are) wrong about dates
(amend comments)
2023-09-28 18:29:28 +01:00
0a1db024e8 [+] QueryClockTimeNS
[+] QueryClockTimeFrequency
2023-09-23 02:28:06 +01:00
dfecf10f1d [*] All CivilTime APIs should just use ETimezoneShift 2023-09-22 06:21:50 +01:00
f310fa9aae [+] AuTime::GetClockUserAndKernelTimeNS 2023-09-20 22:51:59 +01:00
746f39f848 [*] yeet 2023-09-19 00:17:28 +01:00
2a0ff9ab0c [+] AuCivilTime.cpp
[*] Split AuClock.cpp
2023-09-18 22:53:28 +01:00
e60c891eac [-] last trace of the high res clock 2023-09-18 22:34:34 +01:00
4915c5e6bf [*] dont like me stds' - big baz 2023-09-10 17:58:36 +01:00
e7ec875851 [*] added more win32 steady time clock, frequency-based fast paths 2023-09-09 13:58:14 +01:00
0d759f85f8 [*] Linux/Clang fixerinos/improvements 2023-08-28 16:35:32 +01:00
1f173a8799 [*] Begin resolving 8 months of Linux neglect 2023-08-11 16:51:42 +01:00
fc08e8351d [+] Begin work on a POSIX 2001 based clock implementation as opposed to the retarded stinking free-shit glibc toddlers hacked together alongside linux vdso. Once again, a POSIX spec from 2001 and NT kernel releases from 2 decades ago are much better than whatever the hell Linux toddlers are up to in the 2020s.
Fuck your 1998 POSIX1.b UNIX ass interface with extensions that dont even provide the functionality of POSIX 2001.

Much like how UWP is forcing us to support Windows XP, Linux retardation is pushing us towards legacy POSIX support (the deprecation of AuProcesses pidfd requirements, now this)

Alongside this, #60, this is yet another monthly reminder that the Linux kernel maintainers are the most useless incompetent boomers gluing forced-source drivers into a monolithic mess.

PS: if i wasnt malding before, i am now after trying to unearth the context of this disaster.

https://nextcloud.reece.sx/index.php/s/jx82SsygJYWSir6/preview
https://nextcloud.reece.sx/index.php/s/RpRpNbnBixyMT5G/preview
https://nextcloud.reece.sx/index.php/s/NfMfDCcxL6sfXCf/preview
https://nextcloud.reece.sx/index.php/s/7A4t5JNzzFctPT6/preview
https://nextcloud.reece.sx/index.php/s/cyYwm8GPLKiLFqS/preview Bills peen company had this figured out before < LINUX 2.2 1999 EVEN HAD CLOCK APIs. ARE YOU FUCKING KIDDING? LINUXs MAIN CLOCK IMPLEMENTATION WASNT EVEN DONE UNTIL 2002 BY ONE GEORGE BECAUSE PATHER DIDNT FUCK IT UP ENOUGH?

Freetards should get the wall. I don't know how these braindead fuckers could've ever eaten a bowl of cereal without choking on the milk and dying.

* 2002-10-15  Posix Clocks & timers by George Anzinger
 [...]
 These are all the functions necessary to implement
 POSIX clocks & timers

Meanwhile at Microsoft in 1997, ...

I just cant anymore. Why the fuck are we even paying lip service to Linshit?
2023-08-04 00:42:51 +01:00
62b41ff93e [*] Further deprecate the "high res" clock
(might introduce a fast low res clock, tbd)
2023-07-06 10:17:22 +01:00
47746de462 [+] Process and threaded user and kernel time keeping clocks 2023-06-19 17:48:24 +01:00
2fdf730263 [*] Stats now return nanoseconds timestamps 2023-05-03 08:57:21 +01:00
c787d85485 [*] bug: fix process time counters under win32 2023-04-29 05:26:53 +01:00
5fd655b501 [*] further deprecate 2023-04-22 23:08:49 +01:00
772d08fee6 [*] amend 2a33d61e 2023-04-22 23:04:46 +01:00
2a33d61e63 [*] further deprecate high res clock
[*] further posix resolution reporting
2023-04-22 22:58:20 +01:00
945d54ef78 [*] i did a dumb 2023-04-22 22:38:37 +01:00
6d73dde240 [+] Thread + Process clocks 2023-04-21 22:08:56 +01:00
440b5877b2 [*] link errors 2023-03-22 16:59:21 +00:00
184ef34838 [*] This error should be logged under future telementry
(legacy 2020 print)
2023-03-22 15:20:36 +00:00
82d455c4b1 [+] AuTime::EClock
[+] AuTime::IClock
[+] AuTime::GetWallClock
[+] AuTime::GetProcessClock
[+] AuTime::GetSteadyClock
[+] AuTime::GetClockFromEnum
[*] Rename Timer -> Stopwatch
[*] Refactor a serial AuString to a string view

(*amended year)
2023-03-21 10:26:16 +00:00
6e78ce5e07 [*] UNIX benchmarks: follow CLOCK_PROCESS_CPUTIME_ID time 2022-12-27 19:41:52 +00:00
4e6f116925 [*] Refactor
[+] IProcessSectionView::GetStart
[+] IProcessSectionView::GetEnd
2022-12-17 20:14:19 +00:00
766be57a46 [+] Linux build [again]
[+] ProcessSectionViewReserved.Unix.cpp
[*] Fix missing ::Flush() member on ViewWriter
2022-12-16 00:41:01 +00:00
7be2d3fbdc [+] AuUtility::ThroughputCalculator
[+] AuNet::ISocketStats
[+] AuNet::ISocketChannel::GetRecvStats()
[+] AuNet::ISocketChannel::GetSendStats()
[+] AuIO::IOProcessor::RunTickEx(AuUInt32 dwTimeout)
[*] Refactor clock APIs
[+] Documentation in headers
[+] AuIO::IIOPipeWork::GetStartTickMS()
[+] AuIO::IIOPipeWork::GetLastTickMS()
[+] AuIO::IIOPipeWork::GetPredictedThroughput()
[+] AuIO::IIOPipeWork::GetBytesProcessed()
2022-12-06 22:58:15 +00:00
72dc0d715e [*] Begin enforcing steady time
[+] IOProcessor::WakeupThread
[+] NT: Begin hacking in timeBeginPeriod (must spam it in some places)
[+] ConsoleTTY (more specifically the win32 calls) are too slow to run on the mainthread. Delegate to worker.
[*] AuTime.CurrentClockSteady
[*] AuTime.CurrentClockSteadyMS
[*] AuTime.CurrentClockSteadyNS
2022-11-28 16:01:08 +00:00
6de5cbfb95 [+] Linux: Added bSingleshot API to timerfd backend
[*] NT: Added TTY handle static getter optimization alongside a secret setter API
[*] Made ILoopSource virtual
[+] Linux: Added console TTY stubs
[*] Renamed ConsoleTTY.Linux.cpp -> ConsoleTTY.Unix.cpp
[-] Redundant commented out shm_unlink (zero ref condition should unlink, i believe.)
[+] Added IProcess async pipe transaction getter stubs
[+] Added additional userland env lookup variables: XDG_SESSION_DESKTOP, DESKTOP_SESSION
[+] Unix: AuTime::ns2ts
2022-05-04 16:43:23 +01:00
9f93b8a0b1 [+] 100 nanosecond resolution ILoopSource timer API (gl getting that res) 2022-05-03 18:42:14 +01:00
52983989b5 [*] Update time util 2022-04-20 14:17:37 +01:00
77a7b99c7c [+] Linux timerfd-backed LSTimer
[+] auabs[ns/ms]2ts
[*] Formatting/Refactor loop sources
2022-04-19 22:50:34 +01:00
7dca8ecd29 [+] LSTimer (NT)
[*] Bug fix stupid mismatching variable usage with similar name in LoopQueue.NT.cpp
2022-04-19 00:51:36 +01:00
8cbe481dba [*] Update NT Epoch 2022-04-18 23:49:00 +01:00
7da61f406d [*] Amend timeval func 2022-04-12 22:33:43 +01:00
457d263fb0 [+] ILoopSource::WaitOn(u32: timeout)
[+] ms2tv
2022-04-12 22:29:50 +01:00
cf219eabaa [+] Initial attempt at an epoll backend
[+] Added comments in nt opener
[*] Fixed rng close
[*] Fixed possible aarch64 crash where unix thread ep function didnt return a value
2022-04-09 16:53:14 +01:00
d81d4564e9 [+] Initial Linux exit signal handler
[*] Linux Semaphore bug (apparently I can't write loops)
[*] Linux sleep bug
2022-04-07 05:35:17 +01:00
8b72865586 [*] Found closed issue related to the MSVC STL clock. Proposed solution gave us a 2x boost in benchmarks. Using this over MSVC's clocks when possible (it's not even using kernel32/related apis, it's using high level apis of the crt and frens... The Microsoft STL has shit tier performance for real time usage, yea, who fucking knew? Why was I writing this project again?) 2022-04-01 18:40:56 +01:00
6afe6c7342 [*] Clean up 2022-03-08 01:36:12 +00:00