diff options
| author | Billy O'Neal <bion@microsoft.com> | 2021-06-22 19:16:04 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-06-22 19:16:04 -0700 |
| commit | 2ed44b4546ecc764c81db4fd16ea19d19ea0449d (patch) | |
| tree | 62bddef170709b99b5ed4d8ed7455bc1f5c7a1ad /scripts/azure-pipelines/windows/deploy-inteloneapi.ps1 | |
| parent | 08690d82c11eaea801c103238cc2e948b1a60eb5 (diff) | |
| download | vcpkg-2ed44b4546ecc764c81db4fd16ea19d19ea0449d.tar.gz vcpkg-2ed44b4546ecc764c81db4fd16ea19d19ea0449d.zip | |
Update VMs and pick up VS2019 16.10 (#18233)
* Cherry-pick https://github.com/microsoft/vcpkg/pull/15598
* Hook deploy-inteloneapi into create-vmss.ps1.
* Add script to resolve https://github.com/microsoft/vcpkg/issues/17521
* Move tls settings deployment to the front and respond to script triggering a reboot.
* Go back to provisioning an extra disk to workaround https://github.com/microsoft/vcpkg/issues/18379
* Disallow public access to blob storage and require TLS 1.2.
* Update Pools.
* Update tool to 2021-06-19
* [simage] Skip simage on uwp platforms as it appears broken by 16.10.
* [tensorflow-cc] Skip because changes in our MacOS hardware broke the port.
Diffstat (limited to 'scripts/azure-pipelines/windows/deploy-inteloneapi.ps1')
| -rw-r--r-- | scripts/azure-pipelines/windows/deploy-inteloneapi.ps1 | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/scripts/azure-pipelines/windows/deploy-inteloneapi.ps1 b/scripts/azure-pipelines/windows/deploy-inteloneapi.ps1 new file mode 100644 index 000000000..45d8db3c1 --- /dev/null +++ b/scripts/azure-pipelines/windows/deploy-inteloneapi.ps1 @@ -0,0 +1,74 @@ +# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: MIT
+
+# REPLACE WITH DROP-TO-ADMIN-USER-PREFIX.ps1
+
+# 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/17762/w_HPCKit_p_2021.2.0.2901_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'
+$oneAPIHPCComponents = 'intel.oneapi.win.cpp-compiler:intel.oneapi.win.ifort-compiler'
+
+<#
+.SYNOPSIS
+Installs Intel oneAPI compilers and toolsets. Examples for CI can be found here: https://github.com/oneapi-src/oneapi-ci
+
+.DESCRIPTION
+InstallInteloneAPI installs the Intel oneAPI Compiler & Toolkit with the components specified as a
+:-separated list of strings in $Components.
+
+.PARAMETER Url
+The URL of the Intel Toolkit installer.
+
+.PARAMETER Components
+A :-separated list of components to install.
+#>
+Function InstallInteloneAPI {
+ Param(
+ [String]$Url,
+ [String]$Components
+ )
+
+ try {
+ [string]$installerPath = Get-TempFilePath -Extension 'exe'
+ [string]$extractionPath = [System.IO.Path]::GetTempPath() + [System.IO.Path]::GetRandomFileName()
+ Write-Host 'Downloading Intel oneAPI...to: ' $installerPath
+ curl.exe -L -o $installerPath -s -S $Url
+ Write-Host 'Extracting Intel oneAPI...to folder: ' $extractionPath
+ $proc = Start-Process -FilePath $installerPath -ArgumentList @('-s ', '-x ', '-f ' + $extractionPath , '--log extract.log') -Wait -PassThru
+ Write-Host 'Install Intel oneAPI...from folder: ' $extractionPath
+ $proc = Start-Process -FilePath $extractionPath/bootstrapper.exe -ArgumentList @('-s ', '--action install', "--components=$Components" , '--eula=accept', '--continue-with-optional-error=yes', '-p=NEED_VS2017_INTEGRATION=0', '-p=NEED_VS2019_INTEGRATION=0', '--log-dir=.') -Wait -PassThru
+ $exitCode = $proc.ExitCode
+ if ($exitCode -eq 0) {
+ Write-Host 'Installation successful!'
+ }
+ else {
+ Write-Error "Installation failed! Exited with $exitCode."
+ throw
+ }
+ }
+ catch {
+ Write-Error "Failed to install Intel oneAPI! $($_.Exception.Message)"
+ throw
+ }
+}
+
+InstallInteloneAPI -Url $oneAPIHPCUrl -Components $oneAPIHPCComponents
|
