Compare commits

...

1 Commits

Author SHA1 Message Date
CamilleLaVey
928a2b267d [vk] DrainPendingBuild 2025-12-24 16:47:03 -03:00
3 changed files with 13 additions and 0 deletions

View File

@@ -421,6 +421,13 @@ PipelineCache::~PipelineCache() {
}
}
void PipelineCache::DrainPendingBuilds() {
if (!device.HasBrokenParallelShaderCompiling()) {
return;
}
workers.WaitForRequests();
}
GraphicsPipeline* PipelineCache::CurrentGraphicsPipeline() {
if (!RefreshStages(graphics_key.unique_hashes)) {

View File

@@ -113,6 +113,8 @@ public:
void LoadDiskResources(u64 title_id, std::stop_token stop_loading,
const VideoCore::DiskResourceLoadCallback& callback);
void DrainPendingBuilds();
private:
[[nodiscard]] GraphicsPipeline* CurrentGraphicsPipelineSlowPath();

View File

@@ -227,6 +227,10 @@ void RasterizerVulkan::PrepareDraw(bool is_indexed, Func&& draw_func) {
FlushWork();
gpu_memory->FlushCaching();
if (device.HasBrokenParallelShaderCompiling()) {
pipeline_cache.DrainPendingBuilds();
}
GraphicsPipeline* const pipeline{pipeline_cache.CurrentGraphicsPipeline()};
if (!pipeline) {
return;