mirror of
https://github.com/par274/sharpemu.git
synced 2026-08-22 09:21:34 +08:00
62c3852556
* [AGC] Fix arena/fence tracking stalls and recover lost GPU progress Fix several AGC synchronization issues that could leave GPU work unsubmitted or fences permanently unsatisfied: - Recover fence writes missed during arena transitions by tracking closed arena tails and resweeping unresolved fence locations. - Fix chunk submission accounting so only actually parsed ranges are considered submitted, avoiding missed orphan recovery. - Extend arena sweeps to follow chained command ranges without duplicate submissions. - Preserve GPU state tracking across native worker memory wrappers by using canonical guest memory identity. - Fix builder-ring orphan submissions and stale ring-tail waits. - Improve frame cycling by handling arena reuse, cursor regression, and transiently unavailable builder headers. - Record conditional DCB execution (IT_COND_EXEC) instead of silently dropping the packet. These changes improve AGC progress tracking and prevent GPU fence starvation/deadlocks on titles relying on builder arenas and indirect command chains. * chore: trigger CI
48 lines
1.9 KiB
XML
48 lines
1.9 KiB
XML
<!--
|
|
Copyright (C) 2026 SharpEmu Emulator Project
|
|
SPDX-License-Identifier: GPL-2.0-or-later
|
|
-->
|
|
|
|
<Project Sdk="Microsoft.NET.Sdk">
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\SharpEmu.LibAtrac9\SharpEmu.LibAtrac9.csproj" />
|
|
<ProjectReference Include="..\SharpEmu.HLE\SharpEmu.HLE.csproj" />
|
|
<ProjectReference Include="..\SharpEmu.Logging\SharpEmu.Logging.csproj" />
|
|
<ProjectReference Include="..\SharpEmu.ShaderCompiler\SharpEmu.ShaderCompiler.csproj" />
|
|
<ProjectReference Include="..\SharpEmu.ShaderCompiler.Metal\SharpEmu.ShaderCompiler.Metal.csproj" />
|
|
<ProjectReference Include="..\SharpEmu.ShaderCompiler.Vulkan\SharpEmu.ShaderCompiler.Vulkan.csproj" />
|
|
<!-- SysAbi export generator + analyzers (compile-time registry, NID validation). -->
|
|
<ProjectReference Include="..\SharpEmu.SourceGenerators\SharpEmu.SourceGenerators.csproj"
|
|
OutputItemType="Analyzer"
|
|
ReferenceOutputAssembly="false" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<!-- The PS5 symbol catalog: lets the analyzer flag export names it doesn't know. -->
|
|
<AdditionalFiles Include="..\..\scripts\ps5_names.txt" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<InternalsVisibleTo Include="SharpEmu.Libs.Tests" />
|
|
<!-- SharpEmu.Core's stall watchdog reads GpuWaitRegistry for diagnostics. -->
|
|
<InternalsVisibleTo Include="SharpEmu.Core" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="FFmpeg.AutoGen" />
|
|
<PackageReference Include="NLayer" />
|
|
<PackageReference Include="ppy.SDL3-CS" />
|
|
<PackageReference Include="Silk.NET.Vulkan" />
|
|
<PackageReference Include="Silk.NET.Vulkan.Extensions.EXT" />
|
|
<PackageReference Include="Silk.NET.Vulkan.Extensions.KHR" />
|
|
</ItemGroup>
|
|
|
|
<PropertyGroup>
|
|
<NoWarn>$(NoWarn);1591</NoWarn>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
|
</PropertyGroup>
|
|
</Project>
|