Windows Server 2025 Runs Better on ARM

(jasoneckert.github.io)

82 points | by jasoneckert 3 days ago

12 comments

  • nubinetwork 1 hour ago
    > Like many ARM systems, it doesn’t chase high boost clocks and instead delivers steady, sustained performance

    Maybe not boost clocks, but every arm system I've used supports some form of frequency scaling and behaves the same as any x86 machine I've used in comparison. The only difference is how high can you go... /shrug

  • 1970-01-01 2 hours ago
    >Across multiple runs of each test, the Snapdragon system produced consistent, repeatable timings nearly every time. On the Intel system, results varied significantly, occasionally beating the Snapdragon, but most of the time falling behind. The Snapdragon was the clear winner on each test overall.

    They blogged everything to generate the setup, including the hunch and test code but the anecdotal results are missing. It's a little suspect. How much faster is ARM??

    • jasoneckert 1 hour ago
      I intentionally left out screenshots of the output for a couple of reasons:

      1) They’d distract from the main point (I wasn’t aiming to write a benchmarking post), and

      2) They can be misleading, since results will vary across ARM hardware and even between Snapdragon X Elite variants.

      Instead, I included the PowerShell snippets so anyone interested can reproduce the results themselves.

      For a rough sense of the outcome: the Snapdragon VM outperformed the Intel VM by ~20–80%, depending on the test (DNS ~20%, IIS ~50%, all others closer to ~80%).

      • jiggawatts 1 hour ago
        You likely tripped over a difference in power management profiles (and capabilities) between Intel and ARM.

        You're testing "variability" and latency, and you even mention that "modern Intel CPUs tend to ramp frequency..." but entirely neglect to mention which specific Windows Power Profile you were using.

        Fundamentally, you're benchmarking a server operating system on laptops and/or desktop-class hardware, and not the same spec either. I.e.: you're not controlling for differences in memory bandwidth, SSD performance, etc...

        Even on server hardware the power profiles matter! A lot more than you think!

        One of my gimmicks in my consulting gig is to change Intel server power settings from "Balanced" to "Maximum Performance" and gloat as the customer makes the Shocked Pikachu face because their $$$ "enterprise grade server" instantly triples in performance for the cost of a button press.

        Not to mention that by testing this in VMs, you're benchmarking three layers: The outer OS (and its power management), the hypervisor stack, and the inner guest OS.

        • jasoneckert 1 hour ago
          Both Windows 11 systems are configured with the “High performance” power plan, as are the two Windows Server VMs. In hindsight, I should have included this detail explicitly in the original post instead of only alluding to it.
  • kh9000 2 hours ago
    Windows developer here. After reading this post, my gut instinct is that this is due to something called 'segment heap'.

    A bit of backstory: there are two, totally independent implementations behind the Windows heap allocation APIs (i.e. the implementation code behind RtlHeapAlloc and RtlHeapFree, which are called by malloc/free). The older of the two, developed uring the Dave Cutler era, is known as the "NT heap". The newer implementation, developed in the 2010s, is known as "segment heap". This is all documented online if anyone wants to read more. When development on segment heap was completed, it was known to be superior to the NT heap in many ways. In particular, it was more efficient in terms of memory footprint, due to lower fragmentation-related waste. Segment heap was smarter about reusing small allocations slots that were recently free'd. But, as ever, Windows was very serious about legacy app compat. Joel Spolsky calls this the 'Raymond Chen camp'. So, they didn't want to turn segment heap on universally. It was known that a small portion of legacy software would misbehave and do things like, rely on doing a bit of use-after-free as a treat. Or worse, it took dependencies on casting addresses to internal NT heap data structures. So, the decision at the time was to make segment heap the default for packaged executables. At that time, Windows Phone still existed, and Microsoft was pushing super hard on the Universal platform being the new, recommended way to make apps on Windows. So they thought we'd see a gradual transition from unpackaged executables to packaged, and thus, a gradual transition from NT heap to segment heap. The dream of UWP died, and the Windows framework landscape is more fragmented than ever. Most important software on Windows is still unpackaged, and most of it runs on x64.

    Why does this matter? Because segment heap is also enabled by default on arm. Same logic as the packaged vs unpackaged decision. Arm64 binaries on Windows are guaranteed not to be ancient, unmaintained legacy code. Arm64 windows devices have been a big success, and users widely report that they feel more responsive than x64 devices.

    A not insignificant part of why Windows feels better on arm is because segment heap is enabled by default on arm.

    I'd be interested to see how this test turns out if you force segment heap on x64. You can do it on a per-executable basis via creating a DWORD value named FrontEndHeapDebugOptions under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\<myExeName>.exe, and giving it a value of 8.

    You can turn it on globally for all processes by creating a DWORD value named "Enabled" under HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Segment Heap, and giving it a value of 3. I do this on my dev machine and have encountered zero problems. The memory footprint savings are pretty crazy. About 15% in my testing.

    • adzm 58 minutes ago
      For those interested, you can opt-in to this behavior via the application manifest for your own executables: set heapType to SegmentHeap https://learn.microsoft.com/en-us/windows/win32/sbscs/applic...
    • bentcorner 1 hour ago
      This feels like it deserves to live somewhere on a blog, not as a comment on some forum. This is really interesting thanks for sharing.
    • shoobiedoo 1 hour ago
      Wonderful breakdown. I love reading this kind of thing. thank you
  • josephg 1 hour ago
    What is the RAM and storage on each of these machines? Is it possible the Snapdragon has packaged RAM (with faster interconnects as a result), and the x86 machine is using DIMMs with longer traces? And what about storage? For that matter, what CPUs are you using?

    Its possible ARM is a better architecture. But a lot of benchmarks end up stressing one part of the system more than any other. And if thats the case, faster RAM or faster syscalls or faster SSD performance or something could be whats really driving this performance difference.

    • jasoneckert 1 hour ago
      Both systems have DDR5 soldered to the mainboard and NVMe SSDs (the Intel system has a faster Samsung model compared to the Foresee model in the Snapdragon system).
      • josephg 30 minutes ago
        What CPUs are they both running? Is the ARM chip simply faster?
  • bfrog 2 hours ago
    It all runs better with Linux, Linux isn’t wasting cycles spying on me.
  • gt0 1 hour ago
    Am I missing something or is the article avoiding saying what Intel processor they are using?
    • wmf 48 minutes ago
      14th Gen Intel Core i9
  • cloudbonsai 1 hour ago
    Reading the article, it seems to boil down to the following two observations:

    1. ARM64 is actually less "smart" than x64. While Intel's Core i9 tries to be clever by aggressive boosting and throttling, Snapdragon just delivers steady and consistent performance. This lack of variability makes it easier for the OS to schedule tasks.

    2. It is possible that the ARM build is more efficient than the x64 build, because Windows has less historical clutter on ARM than x64.

    So, has CPU throttling become too smart to the point it hurts?

  • whatever1 1 hour ago
    I mean we were suspecting for some time that smartphone processors have reached parity with laptop class ones. MacBook Neo proved it.

    Not clear how both Amd and Intel not only lost the smartphone fight but also lost in their own field (aka servers, laptops, desktops)

    15 years ago if I told you that windows would be running better on ARM you would call me crazy.

  • stackskipton 4 hours ago
    As former Windows person who still uses fair amount of Powershell on Linux, I was interested.

    However, reading the summary left me confused like you don't understand what's happening at Microsoft.

    > Hopefully Microsoft will spend more time in the future on their server product strategy and less on Copilot ;-)

    The future product strategy is clear, it's Linux for servers. .Net runs on Linux, generally with much better performance. Microsoft internally on Azure is using Linux a ton and Windows Server is legacy and hell, MSSQL is legacy. Sure, they will continue to sell it because if you want to give them thousands of dollars, they would be idiots to turn it down but it's no longer a focus.

    • keithnz 3 hours ago
      in no way that I can see is MSSQL or Server "legacy".
      • Alupis 3 hours ago
        The only people using MSSQL Server are people deep, deep in the Microsoft ecosystem. Think government work, and those unlucky enough to work at a pure Microsoft shop where every problem looks like a Microsoft or Azure solution.

        It's not a dominant database anywhere on the outside.

        • magicalhippo 2 hours ago
          We're a B2B shop migrating to MSSQL, from SQL Anywhere. Managed MSSQL in Azure is fairly easy operationally, especially since we don't have a dedicated DBA and our support staff aren't SQL gurus.

          However since we now got the tools for running on both, and experience migrating, we might be moving to PostgreSQL at some point in not too distant future. Managed MSSQL in Azure is not cheap.

          • stackskipton 1 hour ago
            If you started on SQL Anywhere, SAP, you were pretty deep in Enterprise sauce so MSSQL make sense.

            And "Holy crap, this is not cheap" is why I see plenty of companies transitioning off MSSQL.

            • magicalhippo 1 hour ago
              We started with SQL Anywhere way before it was SAP. SAP was the primary driver to move away, but it also fits nicely with our customers, some which want to run their own MSSQL instance.
        • keithnz 2 hours ago
          I think this is more your bias, it's also regional as different places in the world seem to use these things way more than other parts. Really quick search shows it's used a LOT outside of the areas you mentioned. The place it's not really used? startups... it's the #3 DB in the world.
          • stackskipton 1 hour ago
            Sure, it's #3 but whole point is new installs have mostly stalled and outside companies absolutely mainlining the .Net Framework Kool-Aid, no one is building greenfield on it. I've worked for several .Net Core companies, all of them have either converted or in process of converting away from MSSQL to MySQL flavor or PostGres.

            Microsoft is heavily investing in Postgres in fact which is why they bought PostGres sharding company, Citus and looking at commit history on PostGres, they have several employees actively working on it. They also contributed DocumentDB which is Mongo over Postgres.

            It will take a long time to die and Microsoft will still continue to do little work on the product and stack your money in their vault while giggling.

        • acdha 1 hour ago
          This is like saying nobody eats at McDonald’s because they have more competition now. It’s not wrong from a certain perspective but that’s still a huge number of customers.
          • stackskipton 1 hour ago
            Sure and likely Windows Server and MSSQL will still exist in 2056 because there will be enough money in it. Hell, AS/400 is still kicking but I'm not sure anyone would consider that anything but legacy.
        • icedchai 3 hours ago
          Heh. State government is the only place I've encounter MSSQL in the past 10 years.
          • Loudergood 3 hours ago
            It's common as the backend to a lot of SMB scale ERP and CRM solutions. But almost all of those run on SQL Express.
            • ssl-3 2 hours ago
              I know of a couple of rather fancy, proprietary 2-way radio trunking systems products that use local MS SQL on the back end, to keep track of configs for individual subscriber radios and system configurations for the radio repeaters.

              (What's that? Well, if you ever walk into a place like a gigantic oil refinery, you'll see a bunch of people working there. If you look long enough, you'll notice that each of them have an expensive-looking radio ("walkie talkie") on their hip. Some of those radios may be my fault -- and of those that are, there's an MS SQL database that knows exactly how it was programmed. But I didn't pick it; that's just how the system operates.)

              • womod 1 hour ago
                Yup, thanks big M for making things fun as usual. I deal with the same thing on the P25 side.
                • ssl-3 55 minutes ago
                  I don't mind Radio Management, per se. It's a nice idea. It just feels broken and internally-disjointed when it isn't falling flat on its face.

                  We almost got into bits of the P25 side to help service $giant_government_entity's system, but the GTR 8000 training was complete ass. Mostly what we got out of it was long periods of the dude fretting about the clutch job that his Hyundai was in the shop for and talking on the phone about that, interspersed with a repeated slogan of "I was a Navy man. I don't know what makes sense to you, but I do things by memorizing steps instead of understanding how they work."

                  Sometimes, he'd get around to mentioning some of those steps.

                  Much waste, very disappoint.

                  We all very thoroughly failed the test at the end of that week.

            • trollbridge 1 hour ago
              Yep. Cabinet Vision as of 3 years ago required installing both SQL Server 2016 and 2019, plus 2010-vintage Microsoft Jet database, plus Powershell 2.0, plus .NET 3.5.

              It’s completely dominant in its industry and has no real competition. Pricing starts at $200 a month for the most basic, single user setup and goes up (way up) from there.

              And no, it doesn’t work on ARM, at all. I tried.

              • stackskipton 1 hour ago
                Yep, there is plenty of that type of software, industry niche software that doesn't have market cap to interest competitors, that will require MSSQL and Windows so Microsoft will continue to sell it/develop it.
            • thewebguyd 3 hours ago
              Which can also run on Linux now.
      • chaps 3 hours ago
        On the flip side, every single MSSQL instance that I've encountered has been legacy. For at least five years.
        • Incipient 3 hours ago
          For mid sized businesses, where you're mostly just doing some business reporting, a single mssql instance makes for a great and very cheap 'data warehouse'. All the auth magically works for people to connect with Excel, and powerbi+cloud just works out of the box.

          I'd be curious what a better/non-legacy solution is! (as I do this stuff haha, and don't see much else other than full cloud options, sf etc)

          • chaps 2 hours ago
            These days I think airtable and other "no code" systems fit this bill well.
            • trollbridge 1 hour ago
              MSSQL doesn’t come with usage based pricing.
      • aninteger 3 hours ago
        It's "legacy" because it's essentially tied to Windows. Yes, technically it works on Linux, and no doubt that was an amazing feat, but no serious company is running MSSQL on Linux when all the documentation, all the best practices are all based on running that on Windows.
        • andai 3 hours ago
          Why did they port it to Linux?

          Knowing nothing about this, I wonder if they're getting ready to retire Windows Server, and wanted to get their server products off it?

          Edit: How they did it is also quite fascinating:

          https://www.microsoft.com/en-us/sql-server/blog/2016/12/16/s...

          https://www.microsoft.com/en-us/research/project/drawbridge/

          >a key contribution of Drawbridge is a version of Windows that has been enlightened to run within a single Drawbridge picoprocess.

          MSSQL on Linux only seems to use parts of that project (a smaller abstraction layer), but that's still super cool.

          • stackskipton 1 hour ago
            Two big reasons I realize,

            First reason is MS SQL team read the writing on the wall and realized if they wanted a chance to stay relevant, they needed to support Linux. I'm not sure that play really worked for them but it also gave benefits for number 2.

            Second, they had to eat their own dogfood operationally with Azure and hated the taste of dealing with Windows. Linux offered lower RAM/CPU footprint along with much more ease of use with Kubernetes/Containers. Yes, Windows containers exists but as someone who has had to use them, it's rough experience.

          • spijdar 2 hours ago
            Wait until you read about the version they released for ARM, briefly! It had a dynamic recompiler which would produced ARM64 ELF libraries from Windows PE executables, allowing x86_64 MSSQL to run on ARM Linux! They ditched that once Rosetta support on ARM Macs was good enough to run x86_64 VMs, as apparently all they cared about was supporting Docker on Macs...

            I think it is essentially "complete drawbridge", too. I haven't played around with it in a while, but from memory, you can coerce it to run arbitrary Windows executables, basically anything without graphics (which are missing from the PAL they ship).

            It's quite impressive, though also necessary if you think about it. SQL Server requires the legacy dot net stack, AND it also ships with a full copy of the msvc compiler/linker! Not sure if that's ever used by the Linux port, but it is installed. MSSQL kind of exercises every inch of the Windows API surface.

            You can even run e.g. xp_dirtree and see an overlay of the host disk along with Drawbridge's copy of Windows.

          • jiggawatts 2 hours ago
            The "why" is for Kubernetes and Docker support.

            For example, the Aspire.NET orchestrator pulls the Linux docker image of SQL Server in much the same way as it does for MySQL or Postgres.

      • jiggawatts 2 hours ago
        Even Microsoft considers Microsoft SQL Server legacy! It's had virtually no new features added between 2022 and 2025 other than AI and cloud integration. All the truly capable people have long since left that team and moved into various Azure and Fabric teams.

        To give you an idea of how bad things have gotten, there's like one guy working on developer tooling for SQL Server and he's "too busy" to implement SDK-style SQL Server Data Projects for Visual Studio. He's distracted by, you guessed it, support for Fabric's dialect of SQL for which the only tooling is Visual Studio Code (not VS 2026).

        There's people screaming at Microsoft that they have VS solutions with hundreds of .NET 10 and SQL projects, and now they can't open it their flagship IDE product because the SQL team office at Redmond has cloth draped over the furnite and the lights are all off except over one cubicle.

        Also: There still isn't support for Microsoft Azure v6 or v7 virtual machines in Microsoft SQL Server because they just don't have the staff to keep up with the low-level code changes required to support SSD over NVMe with 8 KB atomicity. Think about how insanely understaffed they must be if they're unable to implement 8 KB cluster support in a database engine that uses 8 KB pages!!!

        • Uvix 1 hour ago
          They also still don't have ASP.NET Core support for SQL Server Reporting Services - you're stuck in ASP.NET Web Forms land if you want to embed reports in your app.
        • Pxtl 1 hour ago
          > like one guy working on developer tooling for SQL Server

          As somebody who's been procrastinating on getting my main project off of SSDT,

          We can all tell.

    • p_ing 2 hours ago
      Azure services run on [customized] Hyper-V, thus Windows Server.

      Azure networking is Linux.

      EDIT: Marvel at the NT4 style Task Manager [0].

      [0] https://techcommunity.microsoft.com/blog/windowsosplatform/a...

  • doctorpangloss 41 minutes ago
    you upgraded a windows 2022 system to windows 2025, and you are comparing the upgraded machine, which will not have 2025 optimized defaults, including a lot of stuff that makes VMs work much better, to a new 2025 installation, right?
  • p_ing 3 days ago
    Typical approach on an HV server is to disable C States, set power management to high, etc preventing x86 from downclocking. Keeping the CPU from seesawing can have big improvements.

    But you’re not going to do that in a lab/personal machine, usually.

  • phwbikm 3 hours ago
    Cant believe somebody is still using windows server? What’s the use case?
    • jayd16 3 hours ago
      Building Unreal games. Running windows containers.

      Windows server is actually kind of awesome for when you need a Windows machine. Linux is great for servers but Windows server is the real Windows pro. Rock solid and none of the crap.

      The worst part of Windows server is knowing that Microsoft can make a good operating system and chooses not to.

      • jamesfinlayson 2 hours ago
        Yes I only recently understood why people use Windows Server as a desktop operating system - it looks and feels like old Windows.
      • shimms 2 hours ago
        This has been the case for ever. I recall opting to use Windows Server 2003 over XP back in the day for desktop/workstation use.

        Could even enable XP themes IIRC.

    • tokyobreakfast 2 hours ago
      Companies that are bigger than startups vibecoding food delivery apps?

      Even Apple and Google run AD internally.

      Gotta support all those CAD workstations running Windows.

      Is Apple hardware still designed on Windows PCs?

      • tempest_ 2 hours ago
        Im not really in the space but all the CAD things I see lately are browser based "cloud offerings"

        Im not sure is CAD stuff is just served by a basic graphics card at this point or if there is some server side work going on.

        OS doesnt mean that much when every industry decided that Chrome was going to be their VM

    • Marsymars 1 hour ago
      Not a business use case, but I run it for my home server. I've got some QNAP JBOD SAS enclosures that only support firmware updates via Windows (or QNAP NAS). Every other disk enclosure I looked at involved some compromises (e.g. rackmounted, or non-SAS, or a custom-built thing that I'm not really interested in.)

      The next best alterative would be a Mac Studio with Thunderbolt enclosures, but that would be notably more expensive, and macOS isn't great as a server OS.

    • sllewe 2 hours ago
      AEC companies.

      Our GIS clients run WS as a Deskstop OS with ESRIs ArcGIS Pro. Incredibly common.

      And once you have that - add in Active directory, DFS and random Windows Servers for running archaic proprietary licensing services.

    • minetest2048 50 minutes ago
      - Proprietary embedded hardware compilers that only runs on windows

      - Building windows GUI apps

    • scorpioxy 2 hours ago
      An application that is only supported on MS Windows. Yes, those still exist. One project I am working on is supporting such an application that is a mix of desktop and web application talking to industrial monitoring devices.

      It's a beast in terms of complexity, in my opinion. But the vendor only supports running it on specific configurations.

    • haik90 3 hours ago
      I hope we migrate our stack to Linux soon, but I think that’ll take few years.

      I know big company that run their core on Windows Server 2012, I’ve no idea how they manage the software assurance and compliance

    • keyle 2 hours ago
      Many companies only have legacy software/server/services running on windows.
    • mopsi 2 hours ago
      Questions like this show the incredible disconnect between HN and the widely deployed tech that the world depends on. The use case for Windows Server is running a centrally managed office: from operating your own certificate authority and deploying PC images, to managing resources like virtual desktops, print and file servers, all the way down to individual browser settings and even the ordering of items in the Start menu.

      You can recreate Windows Server on other platforms by stringing together bits and pieces, but there is nothing that comes even close in terms of integration and how everything works together. Nothing.

    • parineum 2 hours ago
      Companies that aren't technology companies but use technology that has been doing the job for 20 years.
      • ssl-3 2 hours ago
        What was the reason 20 years ago?

        (I know, I know. That question might be a bit too loaded. I'm really very sorry. No, there's no need that; I'll see myself out.)

      • theandrewbailey 2 hours ago
        Those don't exist. I was told (over and over again) that every company is a technology company.

        mild \s