Merge pull request 'perf(ui): flush only the written descriptor range, not the whole heap (#61)' (#99) from claude/issue-61 into master
This commit is contained in:
commit
c3d7f52891
6 changed files with 236 additions and 7 deletions
27
project.cpp
27
project.cpp
|
|
@ -530,6 +530,33 @@ extern "C" Configuration CrafterBuildProject(std::span<const std::string_view> a
|
|||
fc.GetInterfacesAndImplementations(ifaces, flushImpls);
|
||||
cfg.tests.push_back(std::move(flushTest));
|
||||
|
||||
// Ranged FlushDevice: UI descriptor registration now flushes only the
|
||||
// written descriptor byte range instead of the whole heap, rounding the
|
||||
// range outward to nonCoherentAtomSize via AlignMappedFlushRange. The
|
||||
// rounding is pure math and the coherent gate is pure logic, so this
|
||||
// test drives both directly with no GPU device.
|
||||
Test rangedFlushTest;
|
||||
Configuration& rfc = rangedFlushTest.config;
|
||||
rfc.path = cfg.path;
|
||||
rfc.name = "VulkanBufferRangedFlush";
|
||||
rfc.outputName = "VulkanBufferRangedFlush";
|
||||
rfc.type = ConfigurationType::Executable;
|
||||
rfc.target = cfg.target;
|
||||
rfc.march = cfg.march;
|
||||
rfc.mtune = cfg.mtune;
|
||||
rfc.debug = cfg.debug;
|
||||
rfc.sysroot = cfg.sysroot;
|
||||
rfc.dependencies = cfg.dependencies;
|
||||
rfc.externalDependencies = cfg.externalDependencies;
|
||||
rfc.compileFlags = cfg.compileFlags;
|
||||
rfc.linkFlags = cfg.linkFlags;
|
||||
rfc.defines = cfg.defines;
|
||||
rfc.cFiles = cfg.cFiles;
|
||||
std::vector<fs::path> rangedFlushImpls(impls.begin(), impls.end());
|
||||
rangedFlushImpls.emplace_back("tests/VulkanBufferRangedFlush/main");
|
||||
rfc.GetInterfacesAndImplementations(ifaces, rangedFlushImpls);
|
||||
cfg.tests.push_back(std::move(rangedFlushTest));
|
||||
|
||||
// Issue #63: VulkanBuffer::Resize now reuses the existing allocation in
|
||||
// place when a new request still fits the created capacity and the
|
||||
// immutable-at-create properties match (usage flags fixed at create;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue