LinSoftWin / Photoshop-CC2022-Linux

Installer from Photoshop CC 2021 to 2022 on linux with a GUI
BSD 3-Clause "New" or "Revised" License
898 stars 51 forks source link

[CC2021] AMD GPU is not detected by Photoshop. #76

Closed Firstbober closed 1 year ago

Firstbober commented 1 year ago

Photoshop version CC2021

Describe the bug Performance tab doesn't show any GPUs. Tried reinstalling proton vkd3d and dxvk

To Reproduce Steps to reproduce the behavior:

  1. Install Photoshop 2021 using photoshop2021install.sh
  2. Check performance tab

Expected behavior Visible AMD Radeon GPU in performance tab.

Screenshots image

System informations

Additional context

Here is system info from Photoshop. ``` Adobe Photoshop Version: 22.1.1 20210104.r.138 2021/01/04: 852879028a7 x64 Number of Launches: 4 Operating System: Windows 10 64-bit Version: 10 or greater 10.0.18362.1350 System architecture: AMD CPU Family:15, Model:1, Stepping:0 with MMX, SSE Integer, SSE FP, SSE2, SSE3, SSE4.1, SSE4.2, AVX, AVX2, HyperThreading Physical processor count: 6 Logical processor count: 12 Processor speed: 4208 MHz Built-in memory: 15939 MB Free memory: 10206 MB Memory available to Photoshop: 14580 MB Memory used by Photoshop: 70 % ACP.local Status: - SDK Version: 1.34.1 - Core Sync Status: Reachable and compatible - Core Sync Running: 4.3.4.2 - Min Core Sync Required: 4.3.4.2 ACPL Cache Config: Unavailable Live Edit Client SDK Version: 3.77.11 Native GPU: Enabled. Manta Canvas: Enabled. Alias Layers: Disabled. Modifier Palette: Enabled. Highbeam: Disabled. Image tile size: 1028K Image cache levels: 4 Font Preview: Medium TextComposer: Latin The GPU Sniffer crashed on 10/30/2022 at 10:44:46 AM Display: 1 Display Bounds: top=0, left=0, bottom=1080, right=1920 OpenGL Drawing: Disabled. OpenGL Allow Old GPUs: Not Detected. ```
sniffer.exe output ``` Tester="Photoshop" snifferStart="2022-10-30_10:53:00" warn: CreateDXGIFactory2: Ignoring flags info: Game: sniffer.exe info: DXVK: v1.10.3 info: Built-in extension providers: info: Win32 WSI info: OpenVR info: OpenXR info: OpenVR: could not open registry key, status 2 info: OpenVR: Failed to locate module info: Enabled instance extensions: info: VK_KHR_get_surface_capabilities2 info: VK_KHR_surface info: VK_KHR_win32_surface info: AMD Radeon RX 580 Series (RADV POLARIS10): info: Driver: 22.2.1 info: Vulkan: 1.3.224 info: Memory Heap[0]: info: Size: 3840 MiB info: Flags: 0x1 info: Memory Type[0]: Property Flags = 0x1 info: Memory Type[1]: Property Flags = 0x1 info: Memory Heap[1]: info: Size: 7969 MiB info: Flags: 0x0 info: Memory Type[2]: Property Flags = 0x6 info: Memory Type[4]: Property Flags = 0xe info: Memory Heap[2]: info: Size: 256 MiB info: Flags: 0x1 info: Memory Type[3]: Property Flags = 0x7 010c:fixme:wbemprox:client_security_SetBlanket 00000002419BEE40, 0000000000B842B0, 10, 0, (null), 3, 3, 0000000000000000, 0 010c:fixme:wbemprox:client_security_Release 00000002419BEE40 info: Game: sniffer.exe info: DXVK: v1.10.3 info: Built-in extension providers: info: Win32 WSI info: OpenVR info: OpenXR info: OpenVR: could not open registry key, status 2 info: OpenVR: Failed to locate module info: Enabled instance extensions: info: VK_KHR_get_surface_capabilities2 info: VK_KHR_surface info: VK_KHR_win32_surface info: AMD Radeon RX 580 Series (RADV POLARIS10): info: Driver: 22.2.1 info: Vulkan: 1.3.224 info: Memory Heap[0]: info: Size: 3840 MiB info: Flags: 0x1 info: Memory Type[0]: Property Flags = 0x1 info: Memory Type[1]: Property Flags = 0x1 info: Memory Heap[1]: info: Size: 7969 MiB info: Flags: 0x0 info: Memory Type[2]: Property Flags = 0x6 info: Memory Type[4]: Property Flags = 0xe info: Memory Heap[2]: info: Size: 256 MiB info: Flags: 0x1 info: Memory Type[3]: Property Flags = 0x7 010c:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (000000000011E950 1 C) semi-stub 010c:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (000000000011E590 1 C) semi-stub 010c:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (000000000011EA00 1 C) semi-stub warn: CreateDXGIFactory2: Ignoring flags info: Game: sniffer.exe info: DXVK: v1.10.3 info: Built-in extension providers: info: Win32 WSI info: OpenVR info: OpenXR info: OpenVR: could not open registry key, status 2 info: OpenVR: Failed to locate module info: Enabled instance extensions: info: VK_KHR_get_surface_capabilities2 info: VK_KHR_surface info: VK_KHR_win32_surface info: AMD Radeon RX 580 Series (RADV POLARIS10): info: Driver: 22.2.1 info: Vulkan: 1.3.224 info: Memory Heap[0]: info: Size: 3840 MiB info: Flags: 0x1 info: Memory Type[0]: Property Flags = 0x1 info: Memory Type[1]: Property Flags = 0x1 info: Memory Heap[1]: info: Size: 7969 MiB info: Flags: 0x0 info: Memory Type[2]: Property Flags = 0x6 info: Memory Type[4]: Property Flags = 0xe info: Memory Heap[2]: info: Size: 256 MiB info: Flags: 0x1 info: Memory Type[3]: Property Flags = 0x7 010c:fixme:wbemprox:client_security_SetBlanket 00000002419BEE40, 0000000000B845B0, 10, 0, (null), 3, 3, 0000000000000000, 0 010c:fixme:wbemprox:client_security_Release 00000002419BEE40 info: Game: sniffer.exe info: DXVK: v1.10.3 info: Built-in extension providers: info: Win32 WSI info: OpenVR info: OpenXR info: OpenVR: could not open registry key, status 2 info: OpenVR: Failed to locate module info: Enabled instance extensions: info: VK_KHR_get_surface_capabilities2 info: VK_KHR_surface info: VK_KHR_win32_surface info: AMD Radeon RX 580 Series (RADV POLARIS10): info: Driver: 22.2.1 info: Vulkan: 1.3.224 info: Memory Heap[0]: info: Size: 3840 MiB info: Flags: 0x1 info: Memory Type[0]: Property Flags = 0x1 info: Memory Type[1]: Property Flags = 0x1 info: Memory Heap[1]: info: Size: 7969 MiB info: Flags: 0x0 info: Memory Type[2]: Property Flags = 0x6 info: Memory Type[4]: Property Flags = 0xe info: Memory Heap[2]: info: Size: 256 MiB info: Flags: 0x1 info: Memory Type[3]: Property Flags = 0x7 010c:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (000000000011EA00 1 C) semi-stub warn: CreateDXGIFactory2: Ignoring flags info: Game: sniffer.exe info: DXVK: v1.10.3 info: Built-in extension providers: info: Win32 WSI info: OpenVR info: OpenXR info: OpenVR: could not open registry key, status 2 info: OpenVR: Failed to locate module info: Enabled instance extensions: info: VK_KHR_get_surface_capabilities2 info: VK_KHR_surface info: VK_KHR_win32_surface info: AMD Radeon RX 580 Series (RADV POLARIS10): info: Driver: 22.2.1 info: Vulkan: 1.3.224 info: Memory Heap[0]: info: Size: 3840 MiB info: Flags: 0x1 info: Memory Type[0]: Property Flags = 0x1 info: Memory Type[1]: Property Flags = 0x1 info: Memory Heap[1]: info: Size: 7969 MiB info: Flags: 0x0 info: Memory Type[2]: Property Flags = 0x6 info: Memory Type[4]: Property Flags = 0xe info: Memory Heap[2]: info: Size: 256 MiB info: Flags: 0x1 info: Memory Type[3]: Property Flags = 0x7 268:info:vkd3d_get_vk_version: vkd3d-proton - applicationVersion: 2.4.0. 268:info:vkd3d_instance_init: vkd3d-proton - build: cafe99e223296e2. 268:info:vkd3d_bindless_state_get_bindless_flags: Device supports VK_VALVE_mutable_descriptor_type. 268:fixme:d3d12_device_caps_init_feature_options1: TotalLaneCount = 2304, may be inaccurate. 010c:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (000000000011EDE0 1 C) semi-stub 268:info:vkd3d_get_vk_version: vkd3d-proton - applicationVersion: 2.4.0. 268:info:vkd3d_instance_init: vkd3d-proton - build: cafe99e223296e2. 268:info:vkd3d_bindless_state_get_bindless_flags: Device supports VK_VALVE_mutable_descriptor_type. 268:fixme:d3d12_device_caps_init_feature_options1: TotalLaneCount = 2304, may be inaccurate. 010c:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (000000000011EDE0 1 C) semi-stub m Files\Adobe\Adobe Photoshop 2021\sniffer.exe: /build/rocm-opencl-runtime/src/ROCclr-rocm-5.3.0/os/os_posix.cpp:305: static void amd::Os::currentStackInfo(unsigned char**, size_t*): Assertion `Os::currentStackPtr() >= *base - *size && Os::currentStackPtr() < *base && "just checking"' failed. 010c:err:seh:call_stack_handlers invalid frame 000000000021F190 (0000000000022000-0000000000120000) 010c:err:seh:NtRaiseException Exception frame is not in stack limits => unable to dispatch exception. ```
Files\Adobe\Adobe Photoshop 2021\sniffer.exe: /build/rocm-opencl-runtime/src/ROCclr-rocm-5.3.0/os/os_posix.cpp:305: static void amd::Os::currentStackInfo(unsigned char**, size_t*): Assertion `Os::currentStackPtr() >= *base - *size && Os::currentStackPtr() < *base && "just checking"' failed.

I have ROCm installed in my system which is working, so maybe it is the problem, but I don't see how wine can access it. Also, ROCm have history of not working with RX 500 and RX 400 until newer versions with special flag enabled.

MiMillieuh commented 1 year ago

The problem might be that you don't have the wine-opencl package installed.

On AMD it's not installed by default on most distro.

Firstbober commented 1 year ago

OpenCL in Wine works. I have found that the way Wine uses OpenCL and ROCm implementation of it don't work well with each other. I've added OCL_ICD_VENDORS=/ environment variable into .desktop file to force usage of mesa.icd instead of ROCm one and now everything works.