Merge pull request 'perf(image): batch final mip-chain layout transition (#70)' (#100) from claude/issue-70 into master
This commit is contained in:
commit
e86facc2af
3 changed files with 202 additions and 4 deletions
27
project.cpp
27
project.cpp
|
|
@ -446,6 +446,33 @@ extern "C" Configuration CrafterBuildProject(std::span<const std::string_view> a
|
|||
mc.GetInterfacesAndImplementations(ifaces, memImpls);
|
||||
cfg.tests.push_back(std::move(memTest));
|
||||
|
||||
// Issue #70: ImageVulkan's mip-chain upload folds the never-read final
|
||||
// blit destination into a single batched final-transition barrier
|
||||
// instead of giving it a dedicated DST->SRC barrier. The barrier set is
|
||||
// built by BuildMipChainFinalBarriers, pure CPU logic over mip count and
|
||||
// layout, so this test drives it directly — no GPU device at runtime.
|
||||
Test mipBarrierTest;
|
||||
Configuration& mbc = mipBarrierTest.config;
|
||||
mbc.path = cfg.path;
|
||||
mbc.name = "MipChainBarrierBatch";
|
||||
mbc.outputName = "MipChainBarrierBatch";
|
||||
mbc.type = ConfigurationType::Executable;
|
||||
mbc.target = cfg.target;
|
||||
mbc.march = cfg.march;
|
||||
mbc.mtune = cfg.mtune;
|
||||
mbc.debug = cfg.debug;
|
||||
mbc.sysroot = cfg.sysroot;
|
||||
mbc.dependencies = cfg.dependencies;
|
||||
mbc.externalDependencies = cfg.externalDependencies;
|
||||
mbc.compileFlags = cfg.compileFlags;
|
||||
mbc.linkFlags = cfg.linkFlags;
|
||||
mbc.defines = cfg.defines;
|
||||
mbc.cFiles = cfg.cFiles;
|
||||
std::vector<fs::path> mipBarrierImpls(impls.begin(), impls.end());
|
||||
mipBarrierImpls.emplace_back("tests/MipChainBarrierBatch/main");
|
||||
mbc.GetInterfacesAndImplementations(ifaces, mipBarrierImpls);
|
||||
cfg.tests.push_back(std::move(mipBarrierTest));
|
||||
|
||||
// Issue #47: the fused UI uber-kernel (shaders/ui-fused.comp.glsl) and
|
||||
// its C++ push-constant mirror UIFusedHeader. Compiles the real shader
|
||||
// with glslang, validates with spirv-val, and pins the push-constant
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue