Skip to content

Commit

Permalink
Update xgl from commit 2670e6ec
Browse files Browse the repository at this point in the history
Update Khronos Vulkan Headers to 1.3.297
Fix dEQP-VK.binding_model.descriptor_buffer.* - test failure
Fix queue family index asserts
Support for Disabling Color Compression setting for driver experiments
Fixes for VK_KHR_maintenance5 flags
Allow vkSetDebugUtilsObjectNameExt to label an acceleration structure in RRA
Fix cache masks in renderpass barriers
Implement VK_MESA_image_alignment_control support and enable it for vkd3d
Fix crash happened in vkDestroyInstance_SG during test exit
Always return surface formats if the screen is missing
Add driver support for handling RT pipelines in RGA
[VKD3D] Add VkPhysicalDeviceImageCompressionControlFeaturesEXT for VK_EXT_image_compression_control
Remove unreferenced app profiles
Add LDSPsGroupSize tuning option
[KHR_PUSH_DESCRIPTOR] Change restriction for some entry points
Ubuntu24.04: Improper scaling is observed in games @1080p Resolution
Fix Llama2 Vulkan version only works with Mem Carve-out size >= 16GB
Fix queueFlags in Device::Create
Fix GPURT descriptor table node mapping
Add workaround for the corruption of '7Days To Die'
Fix unpackedBufferFormat in vertex offset mode
Consider Transfer write (USAGE_TRANSFER_DST) dependencies when initializing the barrier policy for resources
Bump up GPURT version to 49
Add missing mesh/task support
[KHR_maintenance6] Add device extensions for existing entry points
Add RenderOp Trace Controller to UberTrace DevModeMgr
Consolidate preColorResolve and preDsResolve syncs into one flag
Fix split raytracing layer dispatches too many workgroups
Fix vkGetPhysicalDeviceImageFormatProperties does not take into account VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT
Implement VK_EXT_device_generated_commands support
Update PAL Version in XGL 905
Fix vkGetPipelineBinaryDataKHR() not writing binary key
Fix GPU hang with vkd3d Raytracing sample
Bump LLPC version to 75
Implement VK_EXT_pipeline_robustness support
Add a layer to work-around an app side barrier issue for 'Baldur's Gate 3'
Support the extension VK_EXT_depth_clamp_control
Expose the extension VK_EXT_fragment_shader_interlock
  • Loading branch information
qiaojbao committed Oct 30, 2024
1 parent c4ca1f6 commit 8e7968c
Show file tree
Hide file tree
Showing 72 changed files with 3,824 additions and 564 deletions.
6 changes: 0 additions & 6 deletions cmake/XglCompileDefinitions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -106,12 +106,6 @@ macro(xgl_set_compile_definitions)
endif()
#endif

#if VKI_RAY_TRACING
#endif

#if VKI_RAY_TRACING
#endif

#if VKI_RAY_TRACING
#endif

Expand Down
1 change: 0 additions & 1 deletion cmake/XglOptions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@ macro(xgl_options)
option(XGL_ENABLE_LTO "Build with LTO enabled?" ON)

option(XGL_ENABLE_GCOV "Build with gcov source code coverage?" OFF)

#if VKI_BUILD_GFX115
option(XGL_BUILD_GFX115 "Build vulkan for GFX115" ON)
#endif
Expand Down
1 change: 0 additions & 1 deletion cmake/XglOverrides.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,6 @@ endmacro()

macro(xgl_overrides_pal)
### For PAL ###########################################################################################################

set(PAL_BUILD_JEMALLOC OFF CACHE BOOL "Force jemalloc off" FORCE)

set(PAL_CLIENT_INTERFACE_MAJOR_VERSION ${ICD_PAL_CLIENT_MAJOR_VERSION} CACHE STRING "${PROJECT_NAME} override." FORCE)
Expand Down
43 changes: 35 additions & 8 deletions cmake/XglPackaging.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,11 @@ function(identifyPackageType)
endif()

if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX "/usr" CACHE PATH "cmake install prefix" FORCE)
if(PACKAGE_NAME STREQUAL "vulkan-amdgpu")
set(CMAKE_INSTALL_PREFIX "/opt/amdgpu" CACHE PATH "cmake install prefix" FORCE)
else()
set(CMAKE_INSTALL_PREFIX "/usr" CACHE PATH "cmake install prefix" FORCE)
endif()
if(TARGET_ARCHITECTURE_BITS EQUAL 64)
if(PACKAGE_TYPE STREQUAL "DEB")
set(CMAKE_INSTALL_LIBDIR "lib/x86_64-linux-gnu" CACHE PATH "cmake install libdir" FORCE)
Expand Down Expand Up @@ -127,11 +131,22 @@ endfunction()
function(generateInstallTargets)
install(FILES ${CMAKE_BINARY_DIR}/icd/amd_icd${TARGET_ARCHITECTURE_BITS}.json COMPONENT icd DESTINATION /etc/vulkan/icd.d)
install(FILES ${CMAKE_BINARY_DIR}/icd/amd_icd${TARGET_ARCHITECTURE_BITS}.json COMPONENT icd DESTINATION /etc/vulkan/implicit_layer.d)
if(EXISTS ${CMAKE_SOURCE_DIR}/LICENSE.txt)
install(FILES ${CMAKE_SOURCE_DIR}/LICENSE.txt COMPONENT icd DESTINATION share/doc/${PACKAGE_NAME})
else()
message(WARNING "LICENSE.txt is not found under ${CMAKE_SOURCE_DIR}, please put it there")

if(PACKAGE_NAME STREQUAL "vulkan-amdgpu"
)
if(EXISTS ${CMAKE_SOURCE_DIR}/copyright)
install(FILES ${CMAKE_SOURCE_DIR}/copyright COMPONENT icd DESTINATION share/doc/${PACKAGE_NAME})
else()
message(WARNING "copyright is not found under ${CMAKE_SOURCE_DIR}, please put it there")
endif()
elseif(PACKAGE_NAME STREQUAL "amdvlk")
if(EXISTS ${CMAKE_SOURCE_DIR}/LICENSE.txt)
install(FILES ${CMAKE_SOURCE_DIR}/LICENSE.txt COMPONENT icd DESTINATION share/doc/${PACKAGE_NAME})
else()
message(WARNING "LICENSE.txt is not found under ${CMAKE_SOURCE_DIR}, please put it there")
endif()
endif()

if(PACKAGE_TYPE STREQUAL "DEB")
if(EXISTS ${CMAKE_SOURCE_DIR}/changelog.Debian.gz)
install(FILES ${CMAKE_SOURCE_DIR}/changelog.Debian.gz COMPONENT icd DESTINATION share/doc/${PACKAGE_NAME})
Expand All @@ -148,7 +163,14 @@ function(generatePackageTarget)
set(CPACK_PACKAGE_NAME "${PACKAGE_NAME}")
set(CPACK_PACKAGE_VENDOR "Advanced Micro Devices (AMD)")
set(CPACK_PACKAGE_CONTACT "[email protected]")
set(CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/GPUOpen-Drivers/AMDVLK")

if(PACKAGE_NAME STREQUAL "vulkan-amdgpu"
)
set(CPACK_PACKAGE_HOMEPAGE_URL "http://www.amd.com")
else()
set(CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/GPUOpen-Drivers/AMDVLK")
endif()

set(CPACK_PACKAGE_RELOCATABLE OFF)
set(CPACK_GENERATOR "${PACKAGE_TYPE}")
set(CPACK_COMPONENTS_ALL "icd")
Expand All @@ -161,8 +183,13 @@ function(generatePackageTarget)
endif()
set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional")
set(CPACK_DEBIAN_PACKAGE_SECTION "libs")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>=2.17), libgcc1 (>= 1:3.4), libstdc++6 (>= 5.2)")
set(CPACK_DEBIAN_PACKAGE_RECOMMENDS "libssl1.1")
if(PACKAGE_NAME STREQUAL "vulkan-amdgpu")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>=2.17), libgcc1 (>= 1:3.4), libstdc++6 (>= 5.2), libwayland-amdgpu-client0, amdgpu-core")
set(CPACK_DEBIAN_PACKAGE_RECOMMENDS "libssl1.1")
else()
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>=2.17), libgcc1 (>= 1:3.4), libstdc++6 (>= 5.2)")
set(CPACK_DEBIAN_PACKAGE_RECOMMENDS "libssl1.1")
endif()
if(PACKAGE_RELEASE)
set(CPACK_PACKAGE_VERSION "${PACKAGE_VERSION}-${PACKAGE_RELEASE}")
else()
Expand Down
8 changes: 5 additions & 3 deletions cmake/XglVersions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,12 @@

include_guard()

# WARNING! This file is parsed by some scripts. Do not change the formatting or the case of set statements.

# This will become the value of PAL_CLIENT_INTERFACE_MAJOR_VERSION. It describes the version of the PAL interface
# that the ICD supports. PAL uses this value to enable backwards-compatibility for older interface versions.
# It must be updated on each PAL promotion after handling all of the interface changes described in palLib.h.
set(ICD_PAL_CLIENT_MAJOR_VERSION "892")
set(ICD_PAL_CLIENT_MAJOR_VERSION "905")

# This will become the value of GPUOPEN_CLIENT_INTERFACE_MAJOR_VERSION if ICD_GPUOPEN_DEVMODE_BUILD=1.
# It describes the interface version of the gpuopen shared module (part of PAL) that the ICD supports.
Expand All @@ -37,9 +39,9 @@ set(ICD_GPUOPEN_CLIENT_MAJOR_VERSION "42")
#if VKI_RAY_TRACING
# This will become the value of GPURT_CLIENT_INTERFACE_MAJOR_VERSION if VKI_RAY_TRACING=1.
# It describes the interface version of the GpuRT shared module that the ICD supports.
set(ICD_GPURT_CLIENT_MAJOR_VERSION "48")
set(ICD_GPURT_CLIENT_MAJOR_VERSION "49")
#endif

# This will become the value of LLPC_CLIENT_INTERFACE_MAJOR_VERSION if ICD_BUILD_LLPC=1.
# It describes the version of the interface version of LLPC that the ICD supports.
set(ICD_LLPC_CLIENT_MAJOR_VERSION "74")
set(ICD_LLPC_CLIENT_MAJOR_VERSION "75")
2 changes: 2 additions & 0 deletions icd/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,8 @@ target_sources(xgl PRIVATE
api/vk_indirect_commands_layout.cpp
api/appopt/barrier_filter_layer.cpp
api/appopt/strange_brigade_layer.cpp
api/appopt/baldurs_gate3_layer.cpp
api/appopt/gravity_mark_layer.cpp
api/appopt/g_shader_profile.cpp
api/render_state_cache.cpp
api/renderpass/renderpass_builder.cpp
Expand Down
4 changes: 2 additions & 2 deletions icd/Loader/LunarG/Lnx/amd-icd.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@
"file_format_version": "1.0.0",
"ICD": {
"library_path": "@AMDVLK_INSTALL_PATH@/amdvlk@[email protected]",
"api_version": "1.3.295"
"api_version": "1.3.297"
},
"layer": {
"name": "VK_LAYER_AMD_switchable_graphics_@ISABITS@",
"type": "GLOBAL",
"library_path": "@AMDVLK_INSTALL_PATH@/amdvlk@[email protected]",
"api_version": "1.3.295",
"api_version": "1.3.297",
"implementation_version": "1",
"description": "AMD switchable graphics layer",
"functions": {
Expand Down
87 changes: 43 additions & 44 deletions icd/api/app_profile.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -136,12 +136,6 @@ constexpr AppProfilePatternEntry AppNameDota2 =
"dota"
};

constexpr AppProfilePatternEntry AppNameHalfLifeAlyx =
{
PatternAppNameLower,
"hlvr"
};

constexpr AppProfilePatternEntry AppEngineSource2 =
{
PatternEngineNameLower,
Expand Down Expand Up @@ -214,12 +208,6 @@ constexpr AppProfilePatternEntry AppNameSeriousSam4Win =
"serious sam 4 - 64bit"
};

constexpr AppProfilePatternEntry AppNameRomeRemasteredLinux =
{
PatternAppNameLower,
"rome"
};

constexpr AppProfilePatternEntry AppNameEnscape =
{
PatternAppNameLower,
Expand Down Expand Up @@ -702,12 +690,6 @@ constexpr AppProfilePatternEntry AppNameSeriousSamVr =
"serious sam vr: the last hope - 64bit- vr"
};

constexpr AppProfilePatternEntry AppNameSatisfactory =
{
PatternAppNameLower,
"factorygame"
};

constexpr AppProfilePatternEntry AppNameQuakeEnhanced =
{
PatternAppNameLower,
Expand Down Expand Up @@ -798,6 +780,24 @@ constexpr AppProfilePatternEntry AppNameHoudini =
"houdini"
};

constexpr AppProfilePatternEntry AppNameGravityMark =
{
PatternAppNameLower,
"clayapp"
};

constexpr AppProfilePatternEntry AppNameSevenDaysToDie =
{
PatternAppNameLower,
"7 days to die"
};

constexpr AppProfilePatternEntry AppNameGgmlVulkan =
{
PatternAppNameLower,
"ggml-vulkan"
};

// Section END of AppProfilePatternEntry for all games

// This is a table of patterns. The first matching pattern in this table will be returned.
Expand Down Expand Up @@ -878,15 +878,6 @@ AppProfilePattern AppPatternTable[] =
}
},

{
AppProfile::HalfLifeAlyx,
{
AppNameHalfLifeAlyx,
AppEngineSource2,
PatternEnd
}
},

{
AppProfile::Talos,
{
Expand Down Expand Up @@ -1048,15 +1039,6 @@ AppProfilePattern AppPatternTable[] =
}
},

{
AppProfile::RomeRemastered,
{
AppNameRomeRemasteredLinux,
AppEngineFeral3D,
PatternEnd
}
},

{
AppProfile::ThreeKingdoms,
{
Expand Down Expand Up @@ -1300,6 +1282,15 @@ AppProfilePattern AppPatternTable[] =
}
},

{
AppProfile::SevenDaysToDie,
{
AppNameSevenDaysToDie,
AppEngineUnity,
PatternEnd
}
},

{
AppProfile::UnityEngine,
{
Expand Down Expand Up @@ -1335,6 +1326,14 @@ AppProfilePattern AppPatternTable[] =
}
},

{
AppProfile::GravityMark,
{
AppNameGravityMark,
PatternEnd
}
},

{
AppProfile::SOTTR,
{
Expand Down Expand Up @@ -1523,14 +1522,6 @@ AppProfilePattern AppPatternTable[] =
}
},

{
AppProfile::Satisfactory,
{
AppNameSatisfactory,
PatternEnd
}
},

{
AppProfile::QuakeEnhanced,
{
Expand Down Expand Up @@ -1647,6 +1638,14 @@ AppProfilePattern AppPatternTable[] =
}
},

{
AppProfile::GgmlVulkan,
{
AppNameGgmlVulkan,
PatternEnd
}
},

};

static char* GetExecutableName(size_t* pLength, bool includeExtension = false);
Expand Down
5 changes: 5 additions & 0 deletions icd/api/app_shader_optimizer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -686,6 +686,11 @@ void ShaderOptimizer::ApplyProfileToGraphicsPipelineCreateInfo(
pPalCreateInfo->rsState.binningOverride = createInfo.binningOverride;
}

if (createInfo.apply.ldsPsGroupSizeOverride)
{
pPalCreateInfo->ldsPsGroupSizeOverride = createInfo.ldsPsGroupSizeOverride;
}

#if PAL_ENABLE_PRINTS_ASSERTS
if (m_settings.pipelineProfileDbgPrintProfileMatch)
{
Expand Down
Loading

0 comments on commit 8e7968c

Please sign in to comment.