Repository navigation
Conversation
|
A second way the same compaction repeats, in case it fits here: We hit it before if (ep->compacting && ok) unlink(arch_compact_marker().fileSystemRepresentation);brought the next three starts to 3.63, 3.66 and 3.67 s, with the same picture and frame times. Since |
e73bf62 to
946b8c8
Compare
…h replaces seedds#1840's compaction limit
… size, which seedds#1880's size tiers replace
… size, which seedds#1880's size tiers replace
… +0x5b); the compaction stamp survives a failed archive write (padsiwono on seedds#1840) Upstream pull requests applied in this commit (their authors' work, brought onto this tree with a three-way merge; the description is in each PR): - seedds#1840 by nanotchec (open): Ocarina of Time: stop recompacting large pipeline caches on every launch - seedds#1846 by uncraftablexd (closed): NVN2 pixel shaders honour the early fragment tests flag: control byte +0x5b (SET_API_MANDATED_EARLY_Z), read from control sub-version 11 on, with the NVN1 rule that depth writers stay late (chain aac18fca634d)
Ocarina of Time's large warm pipeline archive was being compacted again on ordinary launches, adding preparation work without enough new cache content to justify it.
Keep the existing compaction policy for small archives. For a large archive, require sufficient growth before compacting again, and preserve the existing safeguards and archive contents. No cache is deleted to make startup appear faster.
Rebased on official main
d8b2b64a1fc5, retaining its CI repairs. Also document theDM_TEST_ARCHIVE_LARGEfixture switch, which the environment-table check correctly reported missing.Validation on the current sources, Apple M3 Max:
Scope: this avoids unnecessary archive compaction. It does not persist native mesh pipelines that the driver evicts, and does not guarantee the optional expanded mesh prewarm will finish quickly on every launch. The separately reported failed-flush marker behavior remains outside this patch.
Front-ends: no changes required. No game files, keys, saves or cache archives are included.