Köpråd ny utvecklarlaptop - någon med erfarenhet av Arm-processor och Windows?

Permalänk

Köpråd ny utvecklarlaptop - någon med erfarenhet av Arm-processor och Windows?

Hej!

Börjar bli i behov av en ny laptop för utveckling på Windows. Mitt användningsområde är primärt utveckling i Visual Studio, oftast C# och krav på att emellanåt kunna kompilera, köra och debugga kod för x86-only. Jag kommer ifrån en Dell Inspiron 7610 plus med Intel i7-11800h, som är helt OK, men väldigt varm processor och därmed lite för ofta som fläkten låter.

Skulle vilja ha en ungefär likadan dator, storm skärm (16" typ), men med en kallare processor. Tyvärr verkar de flesta med stor skärm också ha strömslukande och varma processorer.

Är det någon som har provat att använda en dator med Arm-baserad processor i Windows? Känns väldigt tilltalande med kalla/tysta och energieffektiva processorer.

Har kikat på denna exv, någon som har erfarenhet av den specifika modellen?
https://www.dustinhome.se/product/5020024938/thinkbook-16-g7?...

I jämförelse med min nuvarande så har tyvärr Thinkbooken ovan en något trist upplösning på skärmen, men det kan jag nog stå ut med.

Andra förslag på processor? Kan tänka mig att gå ner något i cpu-prestanda om processorn är väsentligt energieffektivare.

Permalänk
Medlem
Skrivet av hugohallqvist:

Andra förslag på processor? Kan tänka mig att gå ner något i cpu-prestanda om processorn är väsentligt energieffektivare.

Det är väl exakt den effekten du får om du ändrar energiinställningarna i Windows? Mindre prestanda och mer arbete per energienhet. Funkar antagligen med befintlig dator om du inte jobbar med rätt stora lösningar.

I praktiken brukar laptop-köp handla mest om att hitta en burk som har en adekvat kylarlösning för den processor som tillverkaren stoppat i. Vilket ju har varit svårt med Intel, i alla fall fram tills precis nu.

Permalänk
Skrivet av KAD:

Det är väl exakt den effekten du får om du ändrar energiinställningarna i Windows? Mindre prestanda och mer arbete per energienhet. Funkar antagligen med befintlig dator om du inte jobbar med rätt stora lösningar.

I praktiken brukar laptop-köp handla mest om att hitta en burk som har en adekvat kylarlösning för den processor som tillverkaren stoppat i. Vilket ju har varit svårt med Intel, i alla fall fram tills precis nu.

Jo, det går absolut att påverka lite med energiinställningarna i Windows. Det blir dock ändå inte tillräckligt imho på en 11800h, och gissar jag, de flesta andra "h"-processorer/45-watt procesorer.

Även om den blir tystare/kallare, så ska det inte mycket till för att fläktarna går igång, lite tyngre webbsidor räcker gott. Och att sitta med den i knät funkar en stund, men inte några längre stunder innan det blir obehagligt varmt. Exakt samma fenomen på en HP Zbook 2023 (workstation) som jag också har provat under året, den har också en H-processor.

Därav önskan att kombinera stor skärm med låg-effekts processor.

Permalänk
Datavetare

Har hunnit fått en hel del erfarenhet av att köra .NET 8 på x64/Windows, ARM64/Windows och ARM64/MacOS.

Specifikt kör jag på en M3 Max MBP, kör ARM64/Windows via Parallel desktop. Använder VS Code + dotnet CLI på MacOS, det fungerar också på Windows men p.g.a. att jag aldrig kan bli kompis med PowerShell har jag främst använt Visual Studio under Windows.

Visual Studio, .NET och egentligen allt relaterat till programutveckling finns redan i ARM64 "native" form på Windows. Det var en rätt stor positiv överraskning och det gör att prestanda är lysande.

Det lite absurda är att likt Rosetta 2 på MacOS är Prism på Windows 11 riktigt effektivt, så pass att senaste generationen CPUer från Apple är snabbare att köra x64 kod än Intels/AMDs senaste laptop CPUer... Riktigt så snabb är inte Snapdragon X, men även den är väldigt stark just i kompilering (oavsett om man kompilerar till ARM64 eller x64).

Vad det gäller att köra x64 kod på ARM64/Windows så fungerar det väldigt bra om vi håller oss till .NET. Går även att debugga x64 program på en ARM64/Windows dator.

Har bara hittat en begränsning så här långt: Visual Studio har stöd för kombinerad "managed" och "native" debugging, d.v.s. man kan steppa från C# kod in i C/C++ kod och tillbaka. Det går inte att göra om man byggt för x64 och kör på ARM64/Windows, det fungerar bara om man bygger till ARM64.

Men går att debugga "managed" kod även om man tvingar .NET att bygga x64 binärer och går även att debugga "native" applikationer som är x64. Är just stödet att i samma session kunna växla mellan dessa som inte går. I "normal" .NET kod lär det vara ett icke-problem, jag stötte på det i form av att behöva debugga DirectX (som är C++) lager från en applikation som primärt är .NET 8.

Så tror den laptop du länkar ovan uppfyller dina krav riktigt bra. "Problemet" med att köra Windows på MBP är att dels är MBP dyrare, men sen tillkommer även kostnaden för att köpa Parallel-desktop och en Windows 11 license.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Skrivet av Yoshman:

Har hunnit fått en hel del erfarenhet av att köra .NET 8 på x64/Windows, ARM64/Windows och ARM64/MacOS.

Specifikt kör jag på en M3 Max MBP, kör ARM64/Windows via Parallel desktop. Använder VS Code + dotnet CLI på MacOS, det fungerar också på Windows men p.g.a. att jag aldrig kan bli kompis med PowerShell har jag främst använt Visual Studio under Windows.

Ja, Powershell har jag aldrig blivit kompis med heller, det är riktigt stökigt som utvecklingsmiljö. Mitt tips är att köra någon av de mer unix-liknande/bash-liknande skal som finns, exv git bash eller (min favorit) cmder.

Det är väldigt skönt att ha normala keybindings (Ctrl-A, Ctrl-E, Ctrl-K osv), samt tillgång till de vanligaste unix-kommandona. Till och med enklare one-off bash script funkar bra direkt i skalet och något jag använder rätt ofta.

Skrivet av Yoshman:

Visual Studio, .NET och egentligen allt relaterat till programutveckling finns redan i ARM64 "native" form på Windows. Det var en rätt stor positiv överraskning och det gör att prestanda är lysande.

Det lite absurda är att likt Rosetta 2 på MacOS är Prism på Windows 11 riktigt effektivt, så pass att senaste generationen CPUer från Apple är snabbare att köra x64 kod än Intels/AMDs senaste laptop CPUer... Riktigt så snabb är inte Snapdragon X, men även den är väldigt stark just i kompilering (oavsett om man kompilerar till ARM64 eller x64).

Tack för det uttömmande svaret. På hela taget låter det väldigt positivt.

Skrivet av Yoshman:

Vad det gäller att köra x64 kod på ARM64/Windows så fungerar det väldigt bra om vi håller oss till .NET. Går även att debugga x64 program på en ARM64/Windows dator.

Har bara hittat en begränsning så här långt: Visual Studio har stöd för kombinerad "managed" och "native" debugging, d.v.s. man kan steppa från C# kod in i C/C++ kod och tillbaka. Det går inte att göra om man byggt för x64 och kör på ARM64/Windows, det fungerar bara om man bygger till ARM64.

Men går att debugga "managed" kod även om man tvingar .NET att bygga x64 binärer och går även att debugga "native" applikationer som är x64. Är just stödet att i samma session kunna växla mellan dessa som inte går. I "normal" .NET kod lär det vara ett icke-problem, jag stötte på det i form av att behöva debugga DirectX (som är C++) lager från en applikation som primärt är .NET 8.

Applikationen jag (emellanåt) underhåller är faktiskt inte ens x64, utan av olika skäl interfacear den med x86-only DLL'er och måste kompileras/köras med x86 som target. DLL'erna är skrivna i C++/CLI och targetar x86. Jag ändrar dock typ aldrig i dessa underliggande DLLer eller debuggar, utan använder de bara genom referens ifrån ett vanligt C#-projekt som då också måste kompileras med x86 som target. Så jag gissar att det borde funka på samma sätt som ren x64-applikation.

Skrivet av Yoshman:

Så tror den laptop du länkar ovan uppfyller dina krav riktigt bra. "Problemet" med att köra Windows på MBP är att dels är MBP dyrare, men sen tillkommer även kostnaden för att köpa Parallel-desktop och en Windows 11 license.

Windows-licens tror jag att jag har någon liggande. Men parallells eller fusion blir ju en extra kostnad såklart.

Även om Macbook blir lite mer pengar i inköp är det ju riktigt hållbara datorer, så de måste ju inte vara dyrare över datorns livslängd. Min förra utvecklingsmaskin var en Macbook Pro 15 2015 med bootcamp, som fortfarande håller väldigt bra förutom just batteri. Sen att prestanda har sprungit ifrån den är ju en annan sak, det kan ju inte den hjälpa.