Skip to content

Commit 628989d

Browse files
Address PR review feedback for ARM64 support
- Use ProcessArchitecture instead of OSArchitecture for nativeRid to correctly handle x64 emulation on ARM64 Windows - Add missing '-c Release' configuration to Windows_arm64 CI job - Consolidate duplicate TargetRuntimeID blocks into single block with mutually exclusive conditions - Update VS version list in gen-buildsys-win.bat usage text to include VS2022 and VS2026 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent b064181 commit 628989d

File tree

4 files changed

+4
-9
lines changed

4 files changed

+4
-9
lines changed

Directory.Build.props

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54,12 +54,7 @@
5454

5555
<TargetPlatform Condition="'$(TargetPlatform)' == ''">$(TargetOS)-$(TargetArchitecture)</TargetPlatform>
5656

57-
<TargetRuntimeID Condition="'$(TargetOS)' == 'windows'">win-x64</TargetRuntimeID>
58-
<TargetRuntimeID Condition="'$(TargetPlatform)' == 'windows-arm64'">win-arm64</TargetRuntimeID>
59-
<TargetRuntimeID Condition="'$(TargetOS)' == 'linux'">linux-x64</TargetRuntimeID>
60-
<TargetRuntimeID Condition="'$(TargetPlatform)' == 'mac-arm64'">osx-arm64</TargetRuntimeID>
61-
62-
<TargetRuntimeID Condition="'$(TargetOS)' == 'windows'">win-x64</TargetRuntimeID>
57+
<TargetRuntimeID Condition="'$(TargetOS)' == 'windows' AND '$(TargetPlatform)' != 'windows-arm64'">win-x64</TargetRuntimeID>
6358
<TargetRuntimeID Condition="'$(TargetPlatform)' == 'windows-arm64'">win-arm64</TargetRuntimeID>
6459
<TargetRuntimeID Condition="'$(TargetOS)' == 'linux'">linux-x64</TargetRuntimeID>
6560
<TargetRuntimeID Condition="'$(TargetOS)' == 'mac'">osx-$(TargetArchitecture)</TargetRuntimeID>

azure-pipelines.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ jobs:
9393
parameters:
9494
prepScript: echo "no prep needed"
9595
name: Windows_arm64
96-
buildScript: dotnet build /p:SkipCuda=true /p:TargetArchitecture=arm64 /p:SkipNetFxBuild=true -c
96+
buildScript: dotnet build /p:SkipCuda=true /p:TargetArchitecture=arm64 /p:SkipNetFxBuild=true -c Release
9797
testScript: echo "Cannot run ARM64 tests on x64 Azure Pipelines agent"
9898
pool:
9999
vmImage: 'windows-latest'

src/Native/gen-buildsys-win.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ GOTO :DONE
4040
:USAGE
4141
echo "Usage..."
4242
echo "gen-buildsys-win.bat <VSVersion> <Target Architecture>"
43-
echo "Specify the VSVersion to be used - VS2015, VS2017 or VS2019"
43+
echo "Specify the VSVersion to be used - VS2015, VS2017, VS2019, VS2022, or VS2026"
4444
echo "Specify the Target Architecture - x86, x64, or ARM64."
4545
EXIT /B 1
4646

src/TorchSharp/Torch.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public static partial class torch
3939

4040
static string nativeRid =>
4141
RuntimeInformation.IsOSPlatform(OSPlatform.Windows)
42-
? (RuntimeInformation.OSArchitecture == Architecture.Arm64 ? "win-arm64" : "win-x64") :
42+
? (RuntimeInformation.ProcessArchitecture == Architecture.Arm64 ? "win-arm64" : "win-x64") :
4343
RuntimeInformation.IsOSPlatform(OSPlatform.Linux) ? $"linux-x64" :
4444
isAppleSilicon ? "osx-arm64" :
4545
"any";

0 commit comments

Comments
 (0)