1
0
Fork 0
mirror of https://github.com/VSadov/Satori.git synced 2025-06-08 03:27:04 +09:00
Commit graph

136318 commits

Author SHA1 Message Date
vsadov
2632c87cd1 current 2025-06-04 15:46:27 -07:00
Vladimir Sadov
eb8d99299b
Make ByRefWriteBarrier to use the same call convention as in standard GC for R2R compatibility. (#56) 2025-06-04 14:17:45 -07:00
vsadov
5a8c497d68 fixes after rebasing 2025-05-28 08:31:50 -07:00
Steve
af826162ba Implement GetTotalPauseDuration and GC counters (#50)
* Implement GC counters

* Introduce a separate set of counters

* GCMemoryInfo.PauseTimePercentage

---------

Co-authored-by: vsadov <8218165+VSadov@users.noreply.github.com>
2025-05-22 12:20:27 -07:00
Vladimir Sadov
6b266898e5 Revert "Report collection counts non-inclusively (#51)" (#52)
This reverts commit 50b175bcbb.
2025-05-22 12:20:27 -07:00
Vladimir Sadov
e75c4b78be Report collection counts non-inclusively (#51) 2025-05-22 12:20:27 -07:00
Vladimir Sadov
cb005b7ced Fix scenarios around committing the page map (#49)
* Make page map reservation and commit more precise.

* fix for arm64

* better comment

* one more comment
2025-05-22 12:20:27 -07:00
Vladimir Sadov
79ae1ddf76 Implement GCMemoryInfo.TotalCommittedBytes (#40) 2025-05-13 14:01:46 -07:00
Vladimir Sadov
a6398a0e06 Concurrent phase completion improvements. (#39) 2025-05-13 14:01:46 -07:00
vsadov
2041c7adf9 fix after rebase 2025-05-13 14:01:46 -07:00
Vladimir Sadov
eb380d22d5 Concurrent Mark completion and Card Cleaning improvements (#38)
* simpler ShouldDoConcurrent
* m_ccHelpersNum
* more pacing tweaks
* comments and todos
2025-05-13 14:01:45 -07:00
Vladimir Sadov
893141c8bf Improve pacing (#37)
* pacing tweaks and fixes

* 2025

* RelocatedToUnchecked

* cmp when checking same region

* coments
2025-05-13 14:01:27 -07:00
Vladimir Sadov
6dd178f834 Arm64 tweaks (#36)
* tweaks

* Gen2Target

* trimmer pause

* style and comment fixes
2025-05-13 14:01:27 -07:00
Vladimir Sadov
9755128719 Low Latency Mode TODOs (#35)
* Gate and new Lock, also GC thread spin/rate

* barrier tweaks

* GetGCSafeMethodTable

* Suspend SpinWait tweak

* GetMemoryInfo throttling

* collection heuristics

* avail ram

* recycler and env changes

* barriers

* bulk copy

* gc spin tweak

* TryPopWithTryEnter

* small commit is back

* m_helperWoken

* AskForHelp

* tweaks

* do stacks last

* only lock changes

* AllocAligned

* misalign TLABs

* prefer concurrent in LowLat mode

* worklist

* spin in TryEnter

* rationalizing mark chunk size

* shorter card groups

* a few todos

* Gen0 Gen1 switches

* gcTHP switch

* tweak conc block time

* more conservative trimming

* fixes for OSX

* fix for arm64

* tweak helper counts

* round up

* helper --> worker
2025-05-13 14:01:27 -07:00
Vladimir Sadov
7f52e2c11d Write barrier improvements and some clean ups (#34)
* Write Barrier updates for arm64

* some allocator and relocation tweaks

* dictionary fixes

* disable test and stress nuisances
2025-05-13 13:58:44 -07:00
Vladimir Sadov
4ad3284252 Concurrent cleaning of cards dirtied by incremental marking. (#33)
* Concurrent card cleaning on all platforms

* larger cache

* update year

* use ld_classic in ILC build and in build integration

* Missing checkbox
2025-05-13 13:58:28 -07:00
vsadov
8305906bdb fix after rebasing 2025-05-13 11:26:13 -07:00
Vladimir Sadov
61a7ddd33d Shared nursery regions, more TODOs (#32)
* HelpOnce improvements

* Shared Pinned

* Individual promotion and some TODOs

* Shared Large

* Shared regular

* more TODOs
2025-05-13 11:26:12 -07:00
vsadov
dd0ff1aa10 fix after rebasing 2025-05-13 11:25:23 -07:00
vsadov
5e1777708e Fixes after rebasing 2025-05-13 11:25:23 -07:00
vsadov
4bc84d3255 Fixes after rebasing 2025-05-13 11:25:23 -07:00
Vladimir Sadov
66485f9d6b Support for NativeAOT (#31) 2025-05-13 11:24:44 -07:00
vsadov
960a20e046 Fix after rebase 2025-05-13 09:14:26 -07:00
Vladimir Sadov
9991147ab5 Immortal Allocations (#30)
* can allocate

* recycler aware of 3rd gen

* barriers are gen3 aware

* zeroing and linking

* some tweaks to immortal alloc

* Update README.md
2025-05-12 23:42:45 -07:00
vsadov
338834902b fix stuff up after rebase 2025-05-12 23:41:29 -07:00
vsadov
fa6ed19234 tweaked a test 2025-05-12 23:41:28 -07:00
vsadov
4690b79881 disabled incompatible tests 2025-05-12 23:40:22 -07:00
vsadov
e8d51377c3 fixes after rebasing 2025-05-12 23:40:22 -07:00
vsadov
afa1c01728 fixes after rebase for 8.0 2025-05-12 23:40:22 -07:00
vsadov
316f273538 fixes after rebase 2025-05-12 23:40:21 -07:00
vsadov
b075592c2d use IsReferenceOrContainsReferences 2025-05-12 23:40:21 -07:00
vsadov
0672c76a63 some improvements in concurrent dictionary 2025-05-12 23:40:21 -07:00
vsadov
0792c5363b switch to nonblocking ditctionary 2025-05-12 23:40:21 -07:00
vsadov
772de9964d fix build after rebase onto 7.0 2025-05-12 23:37:29 -07:00
Vladimir Sadov
3cf62cb529 Update README.md 2025-05-12 23:37:28 -07:00
vsadov
09c63a5bfd disable incompatible test 2025-05-12 23:36:25 -07:00
vsadov
7bb82b72d2 GCAllocationTick ETW event 2025-05-12 23:36:25 -07:00
vsadov
aaec9ea378 a few fixes 2025-05-12 23:36:25 -07:00
vsadov
4e162e3e9b GCHeapStats ETW event 2025-05-12 23:31:45 -07:00
vsadov
dcb1f4a536 Some more diagnostics 2025-05-12 23:31:44 -07:00
vsadov
147ed98e4a SpinLock fix 2025-05-12 23:31:44 -07:00
vsadov
f133b36c8e readme tweak 2025-05-12 23:31:44 -07:00
vsadov
865b3a059d revert unnecessary changes 2025-05-12 23:31:44 -07:00
vsadov
63f0cdb3bb readme 2025-05-12 23:31:44 -07:00
vsadov
745e5a5586 comments 2025-05-12 23:31:43 -07:00
vsadov
cc59888b35 do not wait 1 msec in suspension. 2025-05-12 23:31:43 -07:00
vsadov
329ac704f9 min budget 2025-05-12 23:31:05 -07:00
vsadov
5317b471db lock tweak 2025-05-12 23:30:26 -07:00
vsadov
8cd5724a3a bucket tweaks 2025-05-12 23:30:25 -07:00
vsadov
547d8d0ea0 some renames and member reorder 2025-05-12 23:30:25 -07:00