VM Updates for Patch Tuesday, March 2023 (#30223)

This commit is contained in:
Billy O'Neal 2023-03-21 12:27:26 -07:00 committed by GitHub
parent e249dfb528
commit 6146b482ec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
23 changed files with 173 additions and 51 deletions

View File

@ -18,7 +18,6 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
)
if("cuda" IN_LIST FEATURES)
include("${CURRENT_INSTALLED_DIR}/share/cuda/vcpkg_find_cuda.cmake")
vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT)
message(STATUS "CUDA_TOOLKIT_ROOT ${CUDA_TOOLKIT_ROOT}")
endif()

View File

@ -1,7 +1,7 @@
{
"name": "cctag",
"version-semver": "1.0.2",
"port-version": 2,
"port-version": 3,
"maintainers": "alicevision-team@googlegroups.com",
"description": "Computer vision library for detecting CCTag markers made up of concentric circles",
"homepage": "https://github.com/alicevision/CCTag",

View File

@ -4,10 +4,12 @@
#note: this port must be kept in sync with CUDNN and NCCL ports: every time one is upgraded, the other must be too
include(${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake)
include("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake")
vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
file(INSTALL "${VCPKG_ROOT_DIR}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
set(VCPKG_POLICY_CMAKE_HELPER_PORT enabled)

View File

@ -0,0 +1 @@
include("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake")

View File

@ -1,7 +1,7 @@
{
"name": "cuda",
"version": "10.1",
"port-version": 12,
"port-version": 13,
"description": "A parallel computing platform and programming model",
"homepage": "https://developer.nvidia.com/cuda-toolkit",
"license": null,

View File

@ -1,6 +1,5 @@
set(MINIMUM_CUDNN_VERSION "7.6.5")
include("${CURRENT_INSTALLED_DIR}/share/cuda/vcpkg_find_cuda.cmake")
vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT OUT_CUDA_VERSION CUDA_VERSION)
# Try to find CUDNN if it exists; only download if it doesn't exist

View File

@ -1,7 +1,7 @@
{
"name": "cudnn",
"version": "7.6.5",
"port-version": 8,
"port-version": 9,
"description": "NVIDIA's cuDNN deep neural network acceleration library.",
"homepage": "https://developer.nvidia.com/cudnn",
"license": null,

25
ports/popsift/144.patch Normal file
View File

@ -0,0 +1,25 @@
From 7b664e27ca2865f3e06101d50415f2943d2de58c Mon Sep 17 00:00:00 2001
From: Azhng <archer.xn@gmail.com>
Date: Tue, 21 Feb 2023 19:24:57 +0000
Subject: [PATCH] add required thrust include for s_filtergrid.cu
---
src/popsift/s_filtergrid.cu | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/popsift/s_filtergrid.cu b/src/popsift/s_filtergrid.cu
index 301c6a96..a766c2de 100644
--- a/src/popsift/s_filtergrid.cu
+++ b/src/popsift/s_filtergrid.cu
@@ -19,9 +19,11 @@
#if ! POPSIFT_IS_DEFINED(POPSIFT_DISABLE_GRID_FILTER)
#include <thrust/copy.h>
+#include <thrust/count.h>
#include <thrust/device_vector.h>
#include <thrust/execution_policy.h>
#include <thrust/host_vector.h>
+#include <thrust/iterator/constant_iterator.h>
#include <thrust/iterator/discard_iterator.h>
#include <thrust/sequence.h>
#include <thrust/sort.h>

View File

@ -0,0 +1,49 @@
diff --git a/cmake/ChooseCudaCC.cmake b/cmake/ChooseCudaCC.cmake
index d9bc6c2..0ac4fa9 100755
--- a/cmake/ChooseCudaCC.cmake
+++ b/cmake/ChooseCudaCC.cmake
@@ -65,7 +65,8 @@ function(chooseCudaCC SUPPORTED_CC SUPPORTED_GENCODE_FLAGS)
set(CC_LIST_BY_SYSTEM_PROCESSOR "")
if(CMAKE_SYSTEM_PROCESSOR IN_LIST OTHER_SUPPORTED_PROCESSORS)
- list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "20;21;30;35;50;52;60;61;70;75;80;86")
+ # 87 is intentionally omitted, see discussion in https://github.com/alicevision/popsift/pull/146
+ list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "20;21;30;35;50;52;60;61;70;75;80;86;89;90")
endif()
if(CMAKE_SYSTEM_PROCESSOR IN_LIST TEGRA_SUPPORTED_PROCESSORS)
list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "32;53;62;72")
@@ -78,10 +79,20 @@ function(chooseCudaCC SUPPORTED_CC SUPPORTED_GENCODE_FLAGS)
# Default setting of the CUDA CC versions to compile.
# Shortening the lists saves a lot of compile time.
#
- set(CUDA_MIN_CC 20)
- set(CUDA_MAX_CC 86)
- if(CUDA_VERSION_MAJOR GREATER_EQUAL 11)
+
+ # The current version last time this list was updated was CUDA 12.1.
+ if(CUDA_VERSION VERSION_GREATER_EQUAL 12)
+ set(CUDA_MIN_CC 50)
+ set(CUDA_MAX_CC 90)
+ elseif(CUDA_VERSION VERSION_GREATER_EQUAL 11.8)
+ set(CUDA_MIN_CC 35)
+ set(CUDA_MAX_CC 90)
+ elseif(CUDA_VERSION VERSION_GREATER_EQUAL 11.1)
+ set(CUDA_MIN_CC 35)
+ set(CUDA_MAX_CC 86)
+ elseif(CUDA_VERSION_MAJOR GREATER_EQUAL 11)
set(CUDA_MIN_CC 35)
+ set(CUDA_MAX_CC 80)
elseif(CUDA_VERSION_MAJOR GREATER_EQUAL 10)
set(CUDA_MIN_CC 30)
set(CUDA_MAX_CC 75)
@@ -89,8 +100,10 @@ function(chooseCudaCC SUPPORTED_CC SUPPORTED_GENCODE_FLAGS)
set(CUDA_MIN_CC 30)
set(CUDA_MAX_CC 72)
elseif(CUDA_VERSION_MAJOR GREATER_EQUAL 8)
+ set(CUDA_MIN_CC 20)
set(CUDA_MAX_CC 62)
elseif(CUDA_VERSION_MAJOR GREATER_EQUAL 7)
+ set(CUDA_MIN_CC 20)
set(CUDA_MAX_CC 53)
else()
message(FATAL_ERROR "We do not support a CUDA SDK below version 7.0")

View File

@ -6,9 +6,10 @@ vcpkg_from_github(
HEAD_REF develop
PATCHES
fix_missing_thrust_include.patch
144.patch
cuda_12_1.patch
)
include("${CURRENT_INSTALLED_DIR}/share/cuda/vcpkg_find_cuda.cmake")
vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS

View File

@ -1,7 +1,7 @@
{
"name": "popsift",
"version": "0.9",
"port-version": 4,
"port-version": 5,
"description": "PopSift is an implementation of the SIFT algorithm in CUDA.",
"homepage": "https://github.com/alicevision/popsift",
"supports": "!(uwp | arm | arm64 | android | x86)",

View File

@ -2,8 +2,8 @@
# SPDX-License-Identifier: MIT
#
variables:
windows-pool: 'PrWin-2023-02-14'
linux-pool: 'PrLin-2023-02-14'
windows-pool: 'PrWin-2023-03-15'
linux-pool: 'PrLin-2023-03-15'
osx-pool: 'PrOsx-2022-02-04'
parameters:
@ -14,7 +14,7 @@ parameters:
- name: tripletPattern
displayName: 'Enable triplets which contain this substring'
type: string
default: ''
default: '-'
jobs:
- template: windows/azure-pipelines.yml

View File

@ -93,8 +93,8 @@ APT_PACKAGES="$APT_PACKAGES haskell-stack"
APT_PACKAGES="$APT_PACKAGES python-yaml"
## CUDA
APT_PACKAGES="$APT_PACKAGES cuda-compiler-11-6 cuda-libraries-dev-11-6 cuda-driver-dev-11-6 \
cuda-cudart-dev-11-6 libcublas-11-6 libcurand-dev-11-6 cuda-nvml-dev-11-6 libcudnn8-dev libnccl2 \
APT_PACKAGES="$APT_PACKAGES cuda-compiler-12-1 cuda-libraries-dev-12-1 cuda-driver-dev-12-1 \
cuda-cudart-dev-12-1 libcublas-12-1 libcurand-dev-12-1 cuda-nvml-dev-12-1 libcudnn8-dev libnccl2 \
libnccl-dev"
## PowerShell

View File

@ -21,7 +21,7 @@ $VMSize = 'Standard_D8a_v4'
$ProtoVMName = 'PROTOTYPE'
$WindowsServerSku = '2022-datacenter'
$ErrorActionPreference = 'Stop'
$CudnnBaseUrl = 'https://vcpkgimageminting.blob.core.windows.net/assets/cudnn-windows-x86_64-8.3.2.44_cuda11.5-archive.zip'
$CudnnBaseUrl = 'https://vcpkgimageminting.blob.core.windows.net/assets/cudnn-windows-x86_64-8.8.1.3_cuda12-archive.zip'
$ProgressActivity = 'Creating Windows Image'
$TotalProgress = 18

View File

@ -7,24 +7,66 @@
# REPLACE WITH $CudnnUrl
$CudnnLocalZipPath = "$PSScriptRoot\cudnn-windows-x86_64-8.3.2.44_cuda11.5-archive.zip"
$CudnnLocalZipPath = "$PSScriptRoot\cudnn-windows-x86_64-8.8.1.3_cuda12-archive.zip"
$CudaUrl = 'https://developer.download.nvidia.com/compute/cuda/11.6.0/network_installers/cuda_11.6.0_windows_network.exe'
$CudaUrl = 'https://developer.download.nvidia.com/compute/cuda/12.1.0/network_installers/cuda_12.1.0_windows_network.exe'
$CudaFeatures = 'nvcc_11.6 cuobjdump_11.6 nvprune_11.6 cupti_11.6 memcheck_11.6 nvdisasm_11.6 nvprof_11.6 ' + `
'visual_studio_integration_11.6 visual_profiler_11.6 visual_profiler_11.6 cublas_11.6 cublas_dev_11.6 ' + `
'cudart_11.6 cufft_11.6 cufft_dev_11.6 curand_11.6 curand_dev_11.6 cusolver_11.6 cusolver_dev_11.6 ' + `
'cusparse_11.6 cusparse_dev_11.6 npp_11.6 npp_dev_11.6 nvrtc_11.6 nvrtc_dev_11.6 nvml_dev_11.6 ' + `
'occupancy_calculator_11.6 thrust_11.6 '
# https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html
# Intentionally omitted:
# demo_suite_12.1
# documentation_12.1
# nvvm_samples_12.1
# Display.Driver
$destination = "$env:ProgramFiles\NVIDIA GPU Computing Toolkit\CUDA\v11.6"
$CudaInstallerArgs = @(
'-s',
'cublas_12.1',
'cublas_dev_12.1',
'cuda_profiler_api_12.1',
'cudart_12.1',
'cufft_12.1',
'cufft_dev_12.1',
'cuobjdump_12.1',
'cupti_12.1',
'curand_12.1',
'curand_dev_12.1',
'cusolver_12.1',
'cusolver_dev_12.1',
'cusparse_12.1',
'cusparse_dev_12.1',
'cuxxfilt_12.1',
'npp_12.1',
'npp_dev_12.1',
'nsight_compute_12.1',
'nsight_systems_12.1',
'nsight_vse_12.1',
'nvcc_12.1',
'nvdisasm_12.1',
'nvjitlink_12.1',
'nvjpeg_12.1',
'nvjpeg_dev_12.1',
'nvml_dev_12.1',
'nvprof_12.1',
'nvprune_12.1',
'nvrtc_12.1',
'nvrtc_dev_12.1',
'nvtx_12.1',
'occupancy_calculator_12.1',
'opencl_12.1',
'sanitizer_12.1',
'thrust_12.1',
'visual_profiler_12.1',
'visual_studio_integration_12.1'
)
$destination = "$env:ProgramFiles\NVIDIA GPU Computing Toolkit\CUDA\v12.1"
try {
Write-Host 'Downloading CUDA...'
[string]$installerPath = Get-TempFilePath -Extension 'exe'
curl.exe -L -o $installerPath -s -S $CudaUrl
Write-Host 'Installing CUDA...'
$proc = Start-Process -FilePath $installerPath -ArgumentList @('-s ' + $CudaFeatures) -Wait -PassThru
$proc = Start-Process -FilePath $installerPath -ArgumentList $CudaInstallerArgs -Wait -PassThru
$exitCode = $proc.ExitCode
if ($exitCode -eq 0) {
Write-Host 'Installation successful!'

View File

@ -5,26 +5,7 @@
# REPLACE WITH UTILITY-PREFIX.ps1
# Seems like only the HPC kit is really needed?
#$oneAPIBaseUrl = 'https://registrationcenter-download.intel.com/akdlm/irc_nas/17768/w_BaseKit_p_2021.2.0.2871_offline.exe'
$oneAPIHPCUrl = 'https://registrationcenter-download.intel.com/akdlm/irc_nas/18578/w_HPCKit_p_2022.1.3.145_offline.exe'
# Possible oneAPI Base components:
#intel.oneapi.win.vtune 2021.1.1-68 true Intel® VTune(TM) Profiler
#intel.oneapi.win.tbb.devel 2021.1.1-133 true Intel® oneAPI Threading Building Blocks
#intel.oneapi.win.dnnl 2021.1.1-44 true Intel® oneAPI Deep Neural Network Library
#intel.oneapi.win.mkl.devel 2021.1.1-52 true Intel® oneAPI Math Kernel Library
#intel.oneapi.win.vpl 2021.1.1-76 true Intel® oneAPI Video Processing Library
#intel.oneapi.win.dpcpp_debugger 10.0.0-2213 true Intel® Distribution for GDB*
#intel.oneapi.win.ipp.devel 2021.1.1-47 true Intel® Integrated Performance Primitives
#intel.oneapi.win.ippcp 2021.1.1-53 true Intel® Integrated Performance Primitives Cryptography
#intel.oneapi.win.dpcpp-compiler 2021.1.1-191 true Intel® oneAPI DPC++/C++ Compiler
#intel.oneapi.win.dpcpp-library 2021.1.1-191 true Intel® oneAPI DPC++ Library
#intel.oneapi.win.dpcpp_ct.common 2021.1.1-54 true Intel® DPC++ Compatibility Tool
#intel.oneapi.win.dal.devel 2021.1.1-71 true Intel® oneAPI Data Analytics Library
#intel.oneapi.win.python3 2021.1.1-46 true Intel® Distribution for Python*
#intel.oneapi.win.advisor 2021.1.1-53 true Intel® Advisor
#$oneAPIBaseComponents = 'intel.oneapi.win.dpcpp-compiler:intel.oneapi.win.dpcpp-library:intel.oneapi.win.mkl.devel:intel.oneapi.win.ipp.devel:intel.oneapi.win.ippcp:intel.oneapi.win.dal.devel:intel.oneapi.win.dnnl:intel.oneapi.win.vpl:intel.oneapi.win.tbb.devel'
$oneAPIBaseUrl = 'https://registrationcenter-download.intel.com/akdlm/IRC_NAS/19085/w_HPCKit_p_2023.0.0.25931_offline.exe'
$oneAPIHPCComponents = 'intel.oneapi.win.cpp-compiler:intel.oneapi.win.ifort-compiler'
<#
@ -71,4 +52,4 @@ Function InstallInteloneAPI {
}
}
InstallInteloneAPI -Url $oneAPIHPCUrl -Components $oneAPIHPCComponents
InstallInteloneAPI -Url $oneAPIBaseUrl -Components $oneAPIHPCComponents

View File

@ -5,5 +5,5 @@
# REPLACE WITH UTILITY-PREFIX.ps1
$PwshUrl = 'https://github.com/PowerShell/PowerShell/releases/download/v7.3.1/PowerShell-7.3.1-win-x64.msi'
$PwshUrl = 'https://github.com/PowerShell/PowerShell/releases/download/v7.3.3/PowerShell-7.3.3-win-x64.msi'
InstallMSI -Url $PwshUrl -Name 'PowerShell Core'

View File

@ -34,6 +34,8 @@
# Add new items alphabetically
# Broken with CUDA 12; needs update to 3.8.3 and https://github.com/arrayfire/arrayfire/issues/3349 fixed
arrayfire:x64-linux=fail
# Fails with "fatal error LNK1322: cannot avoid potential ARM hazard" even with /Gy
allegro5:arm64-windows=fail
# Cross compiling CI machine cannot run gen_test_char to generate apr_escape_test_char.h
@ -733,6 +735,7 @@ pmdk:x64-uwp=fail
pmdk:x64-windows-static=fail
pmdk:x86-windows=fail
popsift:x64-windows-static-md=fail
popsift:x64-linux=fail # segfaults :(
portable-snippets:arm-uwp=fail
# Not yet ready for these platforms.
qbittorrent:x64-osx=fail

View File

@ -1390,7 +1390,7 @@
},
"cctag": {
"baseline": "1.0.2",
"port-version": 2
"port-version": 3
},
"cctz": {
"baseline": "2.3",
@ -1890,11 +1890,11 @@
},
"cuda": {
"baseline": "10.1",
"port-version": 12
"port-version": 13
},
"cudnn": {
"baseline": "7.6.5",
"port-version": 8
"port-version": 9
},
"cunit": {
"baseline": "2.1.3",
@ -6182,7 +6182,7 @@
},
"popsift": {
"baseline": "0.9",
"port-version": 4
"port-version": 5
},
"portable-snippets": {
"baseline": "2019-09-20",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "a54aac960d7c5e10bf85b66fb8e1cd9a7a384f64",
"version-semver": "1.0.2",
"port-version": 3
},
{
"git-tree": "e9166dee873ce930a3c5e12b544dc47583343221",
"version-semver": "1.0.2",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "d7709c275f8ce58e6d1b4c71b8d37fba4a9a0377",
"version": "10.1",
"port-version": 13
},
{
"git-tree": "85508d056c8d9e006b455ee71e29ab015abd8d63",
"version": "10.1",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "77f6c8d8f5669619fde9b2bc596a406d0fee2839",
"version": "7.6.5",
"port-version": 9
},
{
"git-tree": "b29eb71b5187d6f0991ede2a56e2fda57e6cb520",
"version": "7.6.5",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "df628dcfa7ee8110e38f7a449b599e3b014645eb",
"version": "0.9",
"port-version": 5
},
{
"git-tree": "dd6ddbcf346fed7a105bbbf9db0d8923313e730f",
"version": "0.9",