Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How about supporting ARM64. #1817

Closed
pcfulife opened this issue Sep 8, 2019 · 33 comments
Closed

How about supporting ARM64. #1817

pcfulife opened this issue Sep 8, 2019 · 33 comments
Labels
ARM64 Enhancement Requested Product code improvement that does NOT require public API changes/additions
Milestone

Comments

@pcfulife
Copy link

pcfulife commented Sep 8, 2019

Windows 10 supports ARM64 processors. And, Windows 10 on ARM64 can run x86 applications. But, performance is significantly low because of emulation. And, it cannot run native AMD64 applications. So, some developers recompile their applications for better performance.

Win32 API supports ARM processors. (I saw native ARM64 applications which is not an UWP app) But, WPF does not support ARM64 but only x86/AMD64. If WPF supports ARM64, many WPF applications will be able to run efficiently with ARM processors.

@grubioe grubioe added this to the 5.0 milestone Sep 10, 2019
@grubioe grubioe added the Enhancement Requested Product code improvement that does NOT require public API changes/additions label Sep 10, 2019
@dbeavon
Copy link

dbeavon commented Sep 12, 2019

Yes! Can't wait until my wpf apps are running natively on arm64 for 2 days on battery... W/ snapdragon 8cx and a 5g connection to the internet.

I might just have to stop buying expensive smartphones and start putting that money towards my arm64 laptop instead. It's a much better value.

@BigBadBleuCheese
Copy link

The next version of my WPF app will be moving from .NET Framework to .NET Core. I would absolutely love to make an ARM64 binary available to customers using the new Surface Pro X.

@shibayan
Copy link

I purchased and verified Surface Pro X, but x86 emulation on ARM64 was more overhead than I thought. (The performance seems to have dropped by about 2/3.)

ARM64 support for .NET Core and WPF is very important because it is likely that you will not be able to experience the customer's expectations.

@BigBadBleuCheese
Copy link

I totally agree, @shibayan. I'm a fairly experienced WPF developer, I picked up my Pro X today, and I stand ready to be a dutiful guinea pig of this team. ;)

@soapdog
Copy link

soapdog commented Feb 5, 2020

What about support for Windows on ARM?

@JtheOne
Copy link

JtheOne commented Jun 23, 2020

Who do we talk to make WPF Windows ARM64 support a priority 🤔

@IAIKSysadminTeam
Copy link

+1 @JtheOne. Would be important for many applications to support native arm64 apps. Emulation is quite a pain at the moment!

@soapdog
Copy link

soapdog commented Jul 15, 2020

Just as an example, Serif who makes the Affinity suite of products (Affinity Designer, Photo, and Publisher) answered me on Twitter that they can't port their apps to the Surface Pro X because WPF is not there.

@Mikhail-Tx
Copy link

MS updated their roadmap for WPF 5/ARM: https://github.com/dotnet/wpf/blob/master/roadmap.md

ETA for ARM is 21H1.

@predavid
Copy link
Contributor

Stay tuned for an announcement on WPF ARM64 support early next month. Details will be published here on GitHub.

@predavid
Copy link
Contributor

#4048 is a recent pull request pointing at a few other ARM64 related issues. We are aiming to have WPF ARM64 support in the upcoming .NET6 Preview1.

@driver1998
Copy link

Looks like WPF is already working in .NET 6 nightly:
https://twitter.com/sinclairinat0r/status/1354987172324122624?s=19

Image from the tweet:
image

@ryalanms
Copy link
Member

The link isn't up on https://github.com/dotnet/installer yet, but you can get the build with ARM64 WPF support here:

https://aka.ms/dotnet/net6/dev/Sdk/dotnet-sdk-win-arm64.exe (version 6.0.100-preview.1.21072.23 or later)

You can also target ARM64 from an x64/x86 machine.

@kpreisser
Copy link

kpreisser commented Feb 1, 2021

Thank you for adding ARM64 support to WPF! I was able to run CefSharp.MinimalExample.Wpf.netcore (Chromium embedded in WPF application using offscreen rendering) successfully as ARM64 with .NET SDK 6.0.100-preview.1.21078.9 (see cefsharp/CefSharp#3359) :
grafik

Is it still planned to include WPF ARM64 support in an upcoming .NET 5.0 servicing update? (WPF is the last missing piece before we can publish the software developed at my workplace for Windows 10 ARM64, and we hope that we don't have to wait for the .NET 6.0 release.)
Thanks!

@predavid
Copy link
Contributor

predavid commented Feb 1, 2021

Thank you @kpreisser for trying out the build.

A .NET 5.0 servicing update is under discussion/planning. We are heads-down on getting some new devs recruited and onboarded which will increase the pace and the scope of our future investments.Please stay tuned for an update in March which will include a projected timeline. Could you please share more information is possible on the nature of your software, how many employees will be using it ..etc?

@ryalanms ryalanms unpinned this issue Feb 1, 2021
@vatsan-madhavan
Copy link
Member

Congrats @dotnet/wpf-developers on getting ARM64 support out - nice job! 🚀

@ryalanms ryalanms added the ARM64 label Feb 2, 2021
@kpreisser
Copy link

kpreisser commented Feb 2, 2021

A .NET 5.0 servicing update is under discussion/planning.

Ok, thank you! (Actually, we don't have a strong requirement to publish a Windows ARM64 build of our app soon (most customers run it on Windows x64, or (the CLI/Console variant) on Linux ARM/x64), but it would be a nice-to-have if we could publish it in the next few months for Win ARM64, so that it can run at native speed on devices such as the Surface Pro X.)

@predavid
Copy link
Contributor

predavid commented Feb 4, 2021

Thank you @kpreisser . We are taking into consideration your requirement for .NET5 ARM64 support for the latter half of the year. We will keep fine tuning our roadmap to reflect newer/upcoming investments. Please stay tuned.

In the meantime , do open Issues for any new bugs you encounter with the .NET 6 ARM64 support.

@Gerdya
Copy link

Gerdya commented Feb 4, 2021

Hi @predavid. Did i miss something because the WPF support is on the roadmap for .NET5 for 21H1 at least according to

https://github.com/dotnet/wpf/blob/master/roadmap.md

Now you suddenly start talking about latter half? Not sure if you are aware that the availability of many applications for ARM64 is blocked by the availability of WPF in .NET 5.

@predavid
Copy link
Contributor

predavid commented Feb 4, 2021

Hi @Gerdya, we are considering feedback from each of our customers who express interest in ARM64 support to educate and refine the timeline for our future investments based on new dev resources coming on-board. So, while @kpreisser might need it only in the later half of the year, based on your inputs, I believe you would need it sooner?
Have you had a chance to try out the WPF ARM64 support on .NET 6 Preview 1? We'd love to hear of any bugs/issues you may encounter.

Also, if possible we'd love to know of the type of your app, how many apps (if more than 1), apprx how users per app, that would be running on ARM64.

@Alovchin91
Copy link

Hi @predavid, do you have any updates regarding the matter? Many apps are still blocked by the lack of WPF support on ARM64.

@fabiant3
Copy link
Member

@Alovchin91 - see above response from Premalini "Have you had a chance to try out the WPF ARM64 support on .NET 6 Preview 1? We'd love to hear of any bugs/issues you may encounter." This shipped with NET6 Preview1.

@Alovchin91
Copy link

Alovchin91 commented Mar 16, 2021

Hi @fabiant3, thanks for the response! I've seen .NET 6 Previews indeed. But my question was about WPF support on ARM64 that was originally promised for .NET 5. Do you have any news on .NET 5? Thanks!

@fabiant3
Copy link
Member

We are considering servicing NET5 with WPF ARM64 support. We will do all of our validation on NET6 and then port to NET5. I do not have a timeline just yet, but this is committed and expected to ship this year.

@Alovchin91
Copy link

Ah, clear about validation on .NET 6 👍 Thanks for the clarification! 🙂

@predavid
Copy link
Contributor

@Alovchin91 - any validation on .NET6 that you can give us feedback on (similar to kpreisser above) will help us to quicken getting to Quality on .NET 6 and then commencing on servicing .NET5. The more the Community validates ARM64 .NET6, the better. Thanks in advance!

@Samuel12321
Copy link

Samuel12321 commented Apr 1, 2021

@predavid @fabiant3 unfortunately there is a bug #4336 preventing apps that support multiple languages building wpf .net 6 for arm64

@Samuel12321
Copy link

Turns out visual studio's ALINK (al.exe) doesn't support building for arm64. A workaround is available.
https://developercommunity.visualstudio.com/t/alink-alexe-does-not-support-arm64-windows/1325460

@Samuel12321
Copy link

Samuel12321 commented Jul 22, 2021

@fabiant3 what happened to wpf support for ARM64 in .net 5 in 21H1
https://github.com/dotnet/wpf/blob/main/roadmap.md

@Alovchin91
Copy link

@Samuel12321 It has arrived: https://devblogs.microsoft.com/dotnet/net-july-2021/#windows-arm64

@Samuel12321
Copy link

@Alovchin91 thanks for pointing that out , I didn't see that post.
The roadmap probably should be updated.
Good to see this finally added.

@ryalanms
Copy link
Member

WPF ARM64 support is now in .NET 5.0 and .NET 6.0.

@wmjb
Copy link

wmjb commented Sep 22, 2021

why no ARM 32 support? thousands of devices out there could do with a fresh bit of software. ignoring this architecture allows planned obsolesce of hardware. thousands of windows rt devices could happily run windows 10 (and already are with leaked preview) and with a new browser they could be useful devices. are we supposed to just put them in the bin?

@ghost ghost locked as resolved and limited conversation to collaborators Apr 14, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
ARM64 Enhancement Requested Product code improvement that does NOT require public API changes/additions
Projects
None yet
Development

No branches or pull requests