Skip to content

Commit

Permalink
Release 23.0.0
Browse files Browse the repository at this point in the history
Document CLonD3D12 behavior change and D3D12 VA-API deployment
  • Loading branch information
pal1000 committed Feb 25, 2023
1 parent 1a7aa34 commit 8a9b4c5
Show file tree
Hide file tree
Showing 5 changed files with 65 additions and 61 deletions.
92 changes: 46 additions & 46 deletions buildinfo/mingw.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,25 @@ Build environment
Windows 10.0.20348
Ressource Hacker 5.1.8.360
7-Zip 22.01 ultra compression
Git 2.39.1.1
OpenCLonD3D12 ICD 2023.02.07
Git 2.39.2.1
OpenCLonD3D12 ICD 2023.02.17
DirectX headers 1.608.2

MSYS2 environment
-----------------
base 2022.06-1
bash 5.2.009-1
bash-completion 2.11-2
bash-completion 2.11-3
bison 3.8.2-4
brotli 1.0.9-5
brotli 1.0.9-8
bsdtar 3.6.2-3
bzip2 1.0.8-4
ca-certificates 20211016-2
coreutils 8.32-5
curl 7.87.0-2
curl 7.88.1-1
dash 0.5.12-1
db 5.3.28-4
file 5.44-2
file 5.44-5
filesystem 2023.02.07-1
findutils 4.9.0-3
flex 2.6.4-3
Expand All @@ -31,7 +31,7 @@ gdbm 1.23-1
getent 2.18.90-4
gettext 0.21-2
gmp 6.2.1-2
gnupg 2.2.40-1
gnupg 2.2.41-1
grep 1~3.0-6
gzip 1.12-2
heimdal-libs 7.8.0-3
Expand All @@ -43,17 +43,17 @@ libasprintf 0.21-2
libassuan 2.5.5-2
libbz2 1.0.8-4
libcrypt 2.1-4
libcurl 7.87.0-2
libcurl 7.88.1-1
libdb 5.3.28-4
libedit 20221030_3.1-1
libexpat 2.5.0-1
libffi 3.4.4-1
libgcrypt 1.10.1-5
libgdbm 1.23-1
libgettextpo 0.21-2
libgnutls 3.7.8-2
libgnutls 3.7.9-1
libgpg-error 1.46-2
libgpgme 1.18.0-1
libgpgme 1.18.0-4
libhogweed 3.8.1-1
libiconv 1.17-1
libidn2 2.3.4-2
Expand All @@ -62,7 +62,7 @@ libksba 1.6.3-1
liblz4 1.9.4-1
liblzma 5.4.1-1
libnettle 3.8.1-1
libnghttp2 1.51.0-1
libnghttp2 1.52.0-1
libnpth 1.6-1
libopenssl 3.0.8-1
libp11-kit 0.24.1-4
Expand All @@ -75,41 +75,41 @@ libssh2 1.10.0-3
libtasn1 4.19.0-1
libunistring 1.1-2
libutil-linux 2.35.2-3
libxml2 2.10.3-2
libxml2 2.10.3-3
libxslt 1.1.37-1
libzstd 1.5.2-2
libzstd 1.5.4-1
m4 1.4.19-2
mingw-w64-i686-binutils 2.40-2
mingw-w64-i686-bzip2 1.0.8-2
mingw-w64-i686-clang 15.0.7-2
mingw-w64-i686-crt-git 10.0.0.r216.gca58fc56b-1
mingw-w64-i686-clang 15.0.7-3
mingw-w64-i686-crt-git 10.0.0.r228.g40134887f-1
mingw-w64-i686-expat 2.5.0-1
mingw-w64-i686-gcc 12.2.0-10
mingw-w64-i686-gcc-libs 12.2.0-10
mingw-w64-i686-gdb 12.1-5
mingw-w64-i686-gdb 13.1-2
mingw-w64-i686-gettext 0.21.1-1
mingw-w64-i686-gmp 6.2.1-4
mingw-w64-i686-headers-git 10.0.0.r216.gca58fc56b-1
mingw-w64-i686-gmp 6.2.1-5
mingw-w64-i686-headers-git 10.0.0.r228.g40134887f-1
mingw-w64-i686-isl 0.25-1
mingw-w64-i686-libclc 15.0.7-2
mingw-w64-i686-libelf 0.8.13-7
mingw-w64-i686-libffi 3.4.4-1
mingw-w64-i686-libiconv 1.17-1
mingw-w64-i686-libiconv 1.17-3
mingw-w64-i686-libsystre 1.0.1-4
mingw-w64-i686-libtre-git r128.6fb7206-2
mingw-w64-i686-libva 2.17.0-1
mingw-w64-i686-libwinpthread-git 10.0.0.r216.gca58fc56b-1
mingw-w64-i686-libwinpthread-git 10.0.0.r228.g40134887f-1
mingw-w64-i686-libxml2 2.10.3-1
mingw-w64-i686-llvm 15.0.7-2
mingw-w64-i686-llvm 15.0.7-3
mingw-w64-i686-meson 1.0.0-1
mingw-w64-i686-mpc 1.3.1-1
mingw-w64-i686-mpdecimal 2.5.1-1
mingw-w64-i686-mpfr 4.2.0-1
mingw-w64-i686-ncurses 6.4-1
mingw-w64-i686-ncurses 6.4.20230211-1
mingw-w64-i686-ninja 1.11.1-3
mingw-w64-i686-openssl 3.0.8-1
mingw-w64-i686-pkgconf 1~1.8.0-2
mingw-w64-i686-python 3.10.9-2
mingw-w64-i686-python 3.10.10-1
mingw-w64-i686-python-beaker 1.12.1-1
mingw-w64-i686-python-mako 1.2.4-1
mingw-w64-i686-python-markupsafe 2.1.2-1
Expand All @@ -122,46 +122,46 @@ mingw-w64-i686-tcl 8.6.12-1
mingw-w64-i686-termcap 1.3.1-6
mingw-w64-i686-tk 8.6.12-1
mingw-w64-i686-tzdata 2022g-1
mingw-w64-i686-vulkan-headers 1.3.240-1
mingw-w64-i686-vulkan-loader 1.3.240-1
mingw-w64-i686-vulkan-validation-layers 1.3.240-2
mingw-w64-i686-vulkan-headers 1.3.241-1
mingw-w64-i686-vulkan-loader 1.3.241-1
mingw-w64-i686-vulkan-validation-layers 1.3.241-1
mingw-w64-i686-windows-default-manifest 6.4-4
mingw-w64-i686-winpthreads-git 10.0.0.r216.gca58fc56b-1
mingw-w64-i686-winpthreads-git 10.0.0.r228.g40134887f-1
mingw-w64-i686-xxhash 0.8.1-2
mingw-w64-i686-xz 5.4.1-1
mingw-w64-i686-zlib 1.2.13-3
mingw-w64-i686-zstd 1.5.2-2
mingw-w64-i686-zstd 1.5.4-1
mingw-w64-ucrt-x86_64-binutils 2.40-2
mingw-w64-ucrt-x86_64-bzip2 1.0.8-2
mingw-w64-ucrt-x86_64-clang 15.0.7-2
mingw-w64-ucrt-x86_64-crt-git 10.0.0.r216.gca58fc56b-1
mingw-w64-ucrt-x86_64-clang 15.0.7-3
mingw-w64-ucrt-x86_64-crt-git 10.0.0.r228.g40134887f-1
mingw-w64-ucrt-x86_64-expat 2.5.0-1
mingw-w64-ucrt-x86_64-gcc 12.2.0-10
mingw-w64-ucrt-x86_64-gcc-libs 12.2.0-10
mingw-w64-ucrt-x86_64-gdb 12.1-5
mingw-w64-ucrt-x86_64-gdb 13.1-2
mingw-w64-ucrt-x86_64-gettext 0.21.1-1
mingw-w64-ucrt-x86_64-gmp 6.2.1-4
mingw-w64-ucrt-x86_64-headers-git 10.0.0.r216.gca58fc56b-1
mingw-w64-ucrt-x86_64-gmp 6.2.1-5
mingw-w64-ucrt-x86_64-headers-git 10.0.0.r228.g40134887f-1
mingw-w64-ucrt-x86_64-isl 0.25-1
mingw-w64-ucrt-x86_64-libclc 15.0.7-2
mingw-w64-ucrt-x86_64-libelf 0.8.13-7
mingw-w64-ucrt-x86_64-libffi 3.4.4-1
mingw-w64-ucrt-x86_64-libiconv 1.17-1
mingw-w64-ucrt-x86_64-libiconv 1.17-3
mingw-w64-ucrt-x86_64-libsystre 1.0.1-4
mingw-w64-ucrt-x86_64-libtre-git r128.6fb7206-2
mingw-w64-ucrt-x86_64-libva 2.17.0-1
mingw-w64-ucrt-x86_64-libwinpthread-git 10.0.0.r216.gca58fc56b-1
mingw-w64-ucrt-x86_64-libwinpthread-git 10.0.0.r228.g40134887f-1
mingw-w64-ucrt-x86_64-libxml2 2.10.3-1
mingw-w64-ucrt-x86_64-llvm 15.0.7-2
mingw-w64-ucrt-x86_64-llvm 15.0.7-3
mingw-w64-ucrt-x86_64-meson 1.0.0-1
mingw-w64-ucrt-x86_64-mpc 1.3.1-1
mingw-w64-ucrt-x86_64-mpdecimal 2.5.1-1
mingw-w64-ucrt-x86_64-mpfr 4.2.0-1
mingw-w64-ucrt-x86_64-ncurses 6.4-1
mingw-w64-ucrt-x86_64-ncurses 6.4.20230211-1
mingw-w64-ucrt-x86_64-ninja 1.11.1-3
mingw-w64-ucrt-x86_64-openssl 3.0.8-1
mingw-w64-ucrt-x86_64-pkgconf 1~1.8.0-2
mingw-w64-ucrt-x86_64-python 3.10.9-2
mingw-w64-ucrt-x86_64-python 3.10.10-1
mingw-w64-ucrt-x86_64-python-beaker 1.12.1-1
mingw-w64-ucrt-x86_64-python-mako 1.2.4-1
mingw-w64-ucrt-x86_64-python-markupsafe 2.1.2-1
Expand All @@ -174,26 +174,26 @@ mingw-w64-ucrt-x86_64-tcl 8.6.12-1
mingw-w64-ucrt-x86_64-termcap 1.3.1-6
mingw-w64-ucrt-x86_64-tk 8.6.12-1
mingw-w64-ucrt-x86_64-tzdata 2022g-1
mingw-w64-ucrt-x86_64-vulkan-headers 1.3.240-1
mingw-w64-ucrt-x86_64-vulkan-loader 1.3.240-1
mingw-w64-ucrt-x86_64-vulkan-validation-layers 1.3.240-2
mingw-w64-ucrt-x86_64-vulkan-headers 1.3.241-1
mingw-w64-ucrt-x86_64-vulkan-loader 1.3.241-1
mingw-w64-ucrt-x86_64-vulkan-validation-layers 1.3.241-1
mingw-w64-ucrt-x86_64-windows-default-manifest 6.4-4
mingw-w64-ucrt-x86_64-winpthreads-git 10.0.0.r216.gca58fc56b-1
mingw-w64-ucrt-x86_64-winpthreads-git 10.0.0.r228.g40134887f-1
mingw-w64-ucrt-x86_64-xxhash 0.8.1-2
mingw-w64-ucrt-x86_64-xz 5.4.1-1
mingw-w64-ucrt-x86_64-zlib 1.2.13-3
mingw-w64-ucrt-x86_64-zstd 1.5.2-2
mingw-w64-ucrt-x86_64-zstd 1.5.4-1
mintty 1~3.6.3-1
mpfr 4.2.0-2
msys2-keyring 1~20221024-1
msys2-launcher 1.5-1
msys2-runtime 3.4.5-1
msys2-runtime 3.4.6-1
nano 7.2-1
ncurses 6.4-1
nettle 3.8.1-1
openssl 3.0.8-1
p11-kit 0.24.1-4
pacman 6.0.1-31
pacman 6.0.1-32
pacman-contrib 1.8.2-1
pacman-mirrors 20221016-1
patch 2.7.6-2
Expand All @@ -210,4 +210,4 @@ wget 1.21.3-2
which 2.21-4
xz 5.4.1-1
zlib 1.2.13-1
zstd 1.5.2-2
zstd 1.5.4-1
12 changes: 6 additions & 6 deletions buildinfo/msvc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ Build environment
Windows 10.0.20348
Ressource Hacker 5.1.8.360
7-Zip 22.01 ultra compression
Git 2.39.1.1
Visual Studio Build Tools 2022 v17.4.4
Git 2.39.2.1
Visual Studio Build Tools 2022 v17.5.0
Windows SDK 10.1.22621.755
Windows Driver Kit 10.1.22621.382
Nuget Commandline tool 6.4.0.123
Expand All @@ -14,9 +14,9 @@ Python packages
---------------
Mako 1.2.4
MarkupSafe 2.1.2
meson 1.0.0
pip 23.0
setuptools 67.2.0
meson 1.0.1
pip 23.0.1
setuptools 67.4.0

CMake 3.25.2
Ninja 1.11.1
Expand All @@ -27,7 +27,7 @@ flex 2.6.4
Bison 3.8.2
pkgconf 1.9.4
zlib 1.2.13
OpenCLonD3D12 ICD 2023.02.07
OpenCLonD3D12 ICD 2023.02.17
libva 2.17.0
VA-API 1.17.0
DirectX headers 1.608.2
12 changes: 6 additions & 6 deletions packages.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
mesa3d-22.3.5-development-pack-msvc.7z
..\mesa3d-22.3.5-release-msvc.7z
..\mesa3d-22.3.5-debug-info-msvc.7z
mesa3d-22.3.5-development-pack-mingw.7z
..\mesa3d-22.3.5-release-mingw.7z
..\mesa3d-22.3.5-debug-mingw.7z
mesa3d-23.0.0-development-pack-msvc.7z
..\mesa3d-23.0.0-release-msvc.7z
..\mesa3d-23.0.0-debug-info-msvc.7z
mesa3d-23.0.0-development-pack-mingw.7z
..\mesa3d-23.0.0-release-mingw.7z
..\mesa3d-23.0.0-debug-mingw.7z
6 changes: 3 additions & 3 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
- [OpenGL context configuration override](#opengl-context-configuration-override)
- [How to set environment variables](#how-to-set-environment-variables)
# Downloads
Mesa 22.3.5 builds with Visual Studio and MSYS2 Mingw-w64 are now available in [releases section](https://github.com/pal1000/mesa-dist-win/releases).
Mesa 23.0.0 builds with Visual Studio and MSYS2 Mingw-w64 are now available in [releases section](https://github.com/pal1000/mesa-dist-win/releases).
# Sponsorship
mesa-dist-win project was given an extensible sponsorship with initial due date of November 1st 2023. Sponsorship consists in a free VPS to use as build machine with 12 GB RAM, 6 threads [AMD EPYC 7413](https://www.amd.com/en/products/cpu/amd-epyc-7413) and 150 GB NVMe SSD from [Petrosky](https://client.petrosky.io/aff.php?aff=174), a virtual private server hosting company thanks to [@Directox01](https://github.com/Directox01).

Expand Down Expand Up @@ -87,13 +87,13 @@ The following Mesa3D drivers and build artifacts are shipped in each release:
- Microsoft dozen Vulkan driver is available since 22.1.0 in MSVC package and since 22.2.0 in MinGW package as well. This driver relies on D3D12 API to function and it can use GPU acceleration on supported systems. File names: `dzn_icd.x86_64.json`, `dzn_icd.x86.json`, `vulkan_dzn.dll`. For information on how to deploy see [usage notes](#usage-notes).
- Vulkan driver for AMD graphics (radv) is no longer available since 22.1.0 per @zmike [suggestion](https://github.com/pal1000/mesa-dist-win/issues/103) as it won't work anytime soon. RADV was available in both MSVC and MinGW packages since 21.2.0. 32-bit binary of it was available since Mesa 22.0. File names: `radeon_icd.x86_64.json`, `radeon_icd.x86.json`, `libvulkan_radeon.dll` and `vulkan_radeon.dll`. For information on how to deploy see [usage notes](#usage-notes).
### OpenCL drivers, compilers and backends
- Microsoft OpenCL stack. File names: `clon12compiler.dll` (compiler), `openclon12.dll` (ICD) and `WinPixEventRuntime.dll` (x64 only dependency). These components introduced in 21.0.0 are finally provided by mesa-dist-win since 21.3.0 (compiler only) and 21.3.6-2 respectively. ClonD3D12 driver is available as an OpenCL ICD. For information on how to deploy see [usage notes](#usage-notes). CLonD3D12 officially requires Windows 10 v10.0.19041.488 or newer and it depends on DirectX IL for redistribution - `dxil.dll` to load, which can be installed via [deployment tools](#installation-and-usage). CLonD3D12 is operating as wrapper returning D3D12 API calls. Due to this nature it can use D3D12 GPU accelleration if available otherwise Windows built-in WARP software rendering is used. Even when using WARP CLonD3D12 advertises CL_DEVICE_TYPE_GPU, but this can change [anytime](https://github.com/microsoft/OpenCLOn12/issues/19) to CL_DEVICE_TYPE_CPU. Some programs ignore drivers with CL_DEVICE_TYPE_CPU set on purpose.
- Microsoft OpenCL stack. File names: `clon12compiler.dll` (compiler), `openclon12.dll` (ICD) and `WinPixEventRuntime.dll` (x64 only dependency). These components introduced in 21.0.0 are finally provided by mesa-dist-win since 21.3.0 (compiler only) and 21.3.6-2 respectively. CLonD3D12 driver is available as an OpenCL ICD. For information on how to deploy see [usage notes](#usage-notes). CLonD3D12 officially requires Windows 10 v10.0.19041.488 or newer and it depends on DirectX IL for redistribution - `dxil.dll` to load, which can be installed via [deployment tools](#installation-and-usage). CLonD3D12 is operating as wrapper returning D3D12 API calls. Due to this nature it can use D3D12 GPU accelleration if available otherwise Windows built-in WARP software rendering is used. When using WARP CLonD3D12 used to advertize CL_DEVICE_TYPE_GPU, but this changed in 23.0.0 to CL_DEVICE_TYPE_CPU, see https://github.com/microsoft/OpenCLOn12/issues/19. Some programs ignore drivers with CL_DEVICE_TYPE_CPU set on purpose.
- clover OpenCL stack has been removed from release package in 22.1.1 until Windows support is finalized as it's currently [unusable](https://github.com/pal1000/mesa-dist-win/issues/88). File names: `MesaOpenCL.dll` (ICD), `OpenCL.dll` (standalone runtime), and `pipe_swrast.dll` (pipe loader). The runtime can be deployed with per app deployment tool since 21.3.7 or on older versions via copy-paste along with all available pipe loaders which it depends on. While deployed, the runtime hides all other OpenCL ICDs present on the system and only lets software use Mesa3D clover as the only OpenCL driver. For information on how to deploy the ICD see [usage notes](#usage-notes).
### Direct3D drivers, libraries and tools
- D3D10 software renderer is available in MSVC package since 21.2.0. File name: `d3d10sw.dll`. This is a drop in replacement for Microsoft WARP and unfortunately there is no clean way of [deploying](https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/gallium/targets/d3d10sw/README.md) it.
- SPIR-V to DXIL tool and library are available in MSVC package since 21.0.0 and since 22.2.0 in MinGW package as well. File names: `libspirv_to_dxil.dll`, `spirv_to_dxil.dll` and `spirv2dxil.exe`.
### VA-API drivers
- VA-API D3D12 driver. File names: `vaon12_drv_video.dll` (MSVC) and `libvaon12_drv_video.dll` (MinGW). This driver was made available in 22.3.0. Unfortunately there is very little documentation on how to deploy and use VA-API drivers on Windows since it's a new thing.
- VA-API D3D12 driver. File names: `vaon12_drv_video.dll` (MSVC) and `libvaon12_drv_video.dll` (MinGW). This driver was made available in 22.3.0. Just like GLonD3D12, CLonD3D12 and dozen this is a layered driver running on top of Direct3D 12 API so it can use GPU acceleration if available. Deployment innsttructions have been [documented by Microsoft](https://devblogs.microsoft.com/directx/video-acceleration-api-va-api-now-available-on-windows/). Per application deployment tool has been updated to assist in this process.
### Testing library and tools
- Gallium raw interface. This deprecated component has been [removed in Mesa3D 22.3.0](https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19099). File names: `graw.dll`, `graw_null.dll`. This is a dummy gallium driver without any graphics API mainly used for testing. Available for both x86 and x64 and in full (with window system support) and headless (no window) versions. Since 20.0.2 both windowed and windowless versions are available in both MSVC and MSYS2 Mingw-w64 packages.
- test suite. Many executable unit tests.
Expand Down
4 changes: 4 additions & 0 deletions releasenotes.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# 23.0.0
- Updated Mesa3D to [23.0.0](https://docs.mesa3d.org/relnotes/23.0.0.html).
### End-user guide
- Document CLonD3D12 behavior change and D3D12 VA-API deployment.
### Sponsorship
- Upate affiliate link.
### Build script
Expand Down

0 comments on commit 8a9b4c5

Please sign in to comment.