Ryan Fleury
|
cc099f55aa
|
do not call destroy on caches without a destroy hook :(
|
2026-05-11 13:30:59 -07:00 |
|
Ryan Fleury
|
de35a86505
|
fix artifact cache replaced-value deletion - this CAN NOT run if the new value == the old value
|
2026-05-11 13:29:29 -07:00 |
|
Ryan Fleury
|
52da228efe
|
artifact_cache: fix leak of old-generation artifacts, when those artifacts are replaced by newer generation computations. artifacts can opaquely hold things like arena pointers, and so when we replace them in the cache, we need to respect the lookup api's provision of create/destroy hooks for the cache, such that the artifacts can be released correctly (using the destroy hook) before being replaced. this is separate from regular eviction.
|
2026-05-11 11:49:15 -07:00 |
|
Ryan Fleury
|
aea4a4ff9d
|
eliminate os_core, move into base; eliminate regs, move into arch abstraction layer, define x64 regs in x64 layer; move win32 backend for os core (now base) functionality to top-level win32 layer
|
2026-05-08 15:21:21 -07:00 |
|
Nikita Smith
|
13ce0cf020
|
fix race condition in artifact cache
|
2025-12-19 17:34:35 -08:00 |
|
Ryan Fleury
|
4ea3c5a0e4
|
artifact cache cancellation mutex -> semaphore (fixes cancellation thread on linux - we cannot take/drop across threads with mutexes); flip no_meta -> meta
|
2025-11-07 15:47:15 -08:00 |
|
Ryan Fleury
|
bc49b806c1
|
do not retry artifact computation if cancelled
|
2025-11-07 10:33:17 -08:00 |
|
Ryan Fleury
|
e6c3942ed3
|
artifact_cache: keep access points that we're waiting for up-to-date, even if we don't get the result, so that they are not prematurely cancelled.
|
2025-10-23 17:16:13 -07:00 |
|
Ryan Fleury
|
ae17084b44
|
better artifact cache cancellation thread work organization - only do more frequent cancellation scans when in a tick, otherwise sleep
|
2025-10-23 14:39:44 -07:00 |
|
Ryan Fleury
|
721649b7ea
|
tweak process working set size placement
|
2025-10-23 14:14:48 -07:00 |
|
Ryan Fleury
|
6bf2d2abb1
|
artifact cache cancellation mechanism - use in dbgi searching, since this gets huge (& is often not needed quickly after querying)
|
2025-10-17 14:10:51 -07:00 |
|
Ryan Fleury
|
9022efd3ab
|
new strategy - allow artifact creation to report a completed generation which differs from the requested generation, thus preventing duplicate gen requests (in the case of ctrl process memory)
|
2025-10-09 11:24:48 -07:00 |
|
Ryan Fleury
|
fe6eff9d3b
|
pass requested gen to artifact creation hooks, use to retry ctrl memory reads on many successive mem gen bumps - prevents spurious duplicate hashes in content store history
|
2025-10-09 10:40:31 -07:00 |
|
Ryan Fleury
|
f60ccb60f1
|
do not attach last successful filter to view state, since does not apply in all cases - fix artifact staleness default marker (if we do not get an artifact at all, then it is stale)
|
2025-10-07 12:09:14 -07:00 |
|
Ryan Fleury
|
2acf77ad9e
|
fix impossible disasm loading condition; do not go wide on dbgi matching unless we have significant-enough dbgis
|
2025-10-07 11:34:30 -07:00 |
|
Ryan Fleury
|
db66beaf22
|
correctly interpret conversion completions; single high priority re-loop bit for async threads
|
2025-10-01 14:32:44 -07:00 |
|
Ryan Fleury
|
5b00aaadaf
|
debugging / fixes
|
2025-09-30 14:18:11 -07:00 |
|
Ryan Fleury
|
bf27344a9b
|
replace extra gen parameters in artifact creation hook; replace with explicit cancellation signal, passed by caller
|
2025-09-30 11:01:04 -07:00 |
|
Ryan Fleury
|
5fa3efe76a
|
bugfix evictions, correctly maintain downstream content hash counts
|
2025-09-26 15:09:47 -07:00 |
|
Ryan Fleury
|
cd7e2d3f89
|
breakpad dumping: include pdb name if missing exe name, include pdb guid if no exe hash
|
2025-09-26 11:37:07 -07:00 |
|
Ryan Fleury
|
9ad7361cb9
|
thin out needed entities for call stack build; fix unnecessary re-loops on async threads
|
2025-09-25 17:07:02 -07:00 |
|
Ryan Fleury
|
366c63e3ce
|
extend artifact cache loop with an early-out cancellation path, when new high priority requests have been pushed, while low priority ones are still being worked on
|
2025-09-25 15:35:22 -07:00 |
|
Ryan Fleury
|
c4bf855af9
|
extend artifact cache nodes with last requested vs. last completed gen; pass last requested gen to artifact creation to support cancellation
|
2025-09-25 14:59:29 -07:00 |
|
Ryan Fleury
|
a338b3413e
|
artifact cache fixes, move ctrl process memory streaming to artifact cache
|
2025-09-25 10:35:47 -07:00 |
|
Ryan Fleury
|
ca7bfab7ea
|
bucket artifact cache requests by wideness/priority; do high/wide, high/thin, low/wide, low/thin
|
2025-09-24 17:08:08 -07:00 |
|
Ryan Fleury
|
4b335103bc
|
begin moving call stack computation / cache to artifact cache; fix incorrect broadcast val location
|
2025-09-24 15:04:45 -07:00 |
|
Ryan Fleury
|
e7368af35c
|
artifact cache waitable cache access; debugging / fixes; start plugging in file stream to artifact cache
|
2025-09-24 11:25:18 -07:00 |
|
Ryan Fleury
|
7e05a60ffe
|
checkpoint on more artifact cache port of ctrl process memory streaming
|
2025-09-23 17:05:45 -07:00 |
|
Ryan Fleury
|
6cdce22284
|
expand artifacts a bit more, to be more useful with larger-than-ptr but not huge allocations
|
2025-09-23 11:27:56 -07:00 |
|
Ryan Fleury
|
9787c698e6
|
sketch out new async path for ctrl memory streaming
|
2025-09-23 10:58:17 -07:00 |
|
Ryan Fleury
|
4b1939bd6d
|
provide u64 broadcasting mechanism in base layer wavefront lane context, allows more flexible data sharing mechanism which does not depend on statics; reshape dasm building codepath for clicking into artifact cache
|
2025-09-22 16:21:30 -07:00 |
|
Ryan Fleury
|
8a1e6ab2e6
|
extend artifact cache with non-key-included generations, to allow gracefully decaying certain computations
|
2025-09-22 15:25:01 -07:00 |
|
Ryan Fleury
|
811e58c249
|
progress on single async-filled computation artifact cache; hook up to text cache layer, eliminate bespoke cache for text only
|
2025-09-22 15:13:31 -07:00 |
|
Ryan Fleury
|
9459327687
|
pull out table stripe arrays as base layer primitive; unified 'artifact cache' experiment
|
2025-09-22 14:07:21 -07:00 |
|