The AI laptop that could not: My Snapdragon X Elite NPU Debacle

An experience report for those who want to buy a "Copilot+ PC" for local AI interference – and why this is currently a very bad idea.

The promise

Microsoft and Qualcomm have massively advertised the Snapdragon X Elite. "Copilot+ PC", 45 TOPS NPU performance, "KI-native Hardware" – the marketing machine ran at full speed. Anyone who wanted to use local AI models for development work could hardly imagine that those are truly empty word. Which is why I bought a Lenovo Yoga Slim 7x with Snapdragon X Elite (X1E78100) and 32 GB RAM. What followed were weeks of frustrating research, failed attempts and investments I could have saved.

I did not ask too much

I think I didn't want too much and started with a modest intention: let a 7B model (concrete Qwen2.5-Coder-7B) run locally on the NPU and connect to a coding assistant via an OpenAI-compatible API endpoint. Afterall this model is not available for the Snapdragon stack – at least as long as you want to use the NPU - more on that later though. And why shouldn't you want this? It is, after all, THE feature of a Copilot+ PC. On a MacBook with Apple Silicon, it likely is an evening project thanks to the MLX framework. On the Snapdragon X Elite it is simply not possible – at least not today, and not with open source tooling.

Failures, failures as far as the eye can reache

llama.cpp with QNN-Backend

The most obvious way: llama.cpp, the de facto standard framework for local LLM interference, had for some time an open Pull-Request, which implements the QNN backup for Qualcomm hardware. After hours of build process, missing DLLs and debugging turned out:

GGML OP MUL MAT – the most expensive and most important operation for LLM interference – is simply not implemented in QNN-Backend. The backend reports "offloaded 29/29 layers to GPU", but in practice only 1.27 MiB of the model really are loaded into the accelerator. The rest runs on the CPU. This is not a configuration error, this is a lack of implementation and the acceleration simply does not exist.

Microsoft Olive: An Odyssey in three chapters

After I put aside llama.cpp, I stumbled upon Microsoft Olive. This is a separate tool for model optimization for NPU interference from Redmond. What followed is symptomatic for the entire Ecosystem state:

Act 1: OOM on 32 GB. The conversion process for Qwen2.5-Coder-7B breaks off with an out-of-memory error. The process requires 3-4 times the model size in the RAM at the same time – so it is absolutely impossible to implement on a consumer laptop.

Act 2: 128 GB cloud server. After the OOM on the laptop I rented a dedicated cloud server with 128 GB of RAM and wrote an Ansible Playbook for orchestration RAM was no longer a problem. Instead: RuntimeError: unordered map::at – a bug deep in PyTorch/Transformers ONNX export stack, triggered by incompatible versions between Olive, PyTorch and Transformers. No helpful error text, just a C++ exception name.

Act 3: The fix that is none. A Microsoft employee replied after several days to my GitHub-Issue and recommended Olive 0.11.0 with specific package versions. With exactly these versions: same error. My comment with the complete dependency stack and the reproduced error remained unanswered. Thanks to RAM crunch, further attempts were simply not worth the money.

Windows AI Foundry: Microsoft's own answer

After spending enough time with meaningless attempts, Microsoft published Windows AI Foundry – The official tool for running models on "AI PCs". A "foundry model list" shows the state of the Ecosystem in a single table. Only very few models are even optimized for the Qualcomm NPU, all other models only run on the CPU – or in other words significantly slower than necessary.

This is Microsoft's own Tool, on Microsofts own operating system, on hardware that Microsoft markets as a "Copilot+ PC" – and even here the model "of choice" – which is not actually a choice – only runs on the CPU. If you want to run a coding assistant with a current model on the NPU, you simply have no luck.

Qualcomm AI Hub – A Model Zoo

So I tried my luck with Qualcomm himself – someone has to have an interest in a sensible use of the hardware... And indeed there is the Qualcomm AI Hub. This is Qualcomm's own platform for pre-optimized NPU binaries. Sounds good – until you get to know more:

Outdated models. Qualcomm’s own model zoo offers few current models. The flagship LLM on the hub is Mistral 7B Instruct v0.3 – published in September 2023. In March 2026, this is two generation old. Qwen2.5-Coder, Llama 3.3, Gemma 3 – not available. The model pipeline is frozen at the stand of two years ago.

Wrong chip. The Snapdragon X Elite (X1E78100) – used in millions of Copilot+ PCs – is officially unlisted. The AI Hub is mainly aimed at the Snapdragon 8 Elite, which is used in mobile devices. The chip in my expensive "AI PC" is an sidenote for Qualcomm's own AI platform.

Proprietary license. The downloadable models are under the "Qualcomm AI Hub Proprietary License" – no open source, no own fine tuning, no adjustment possible – a long registration process with zig-licensing is necessary.

llama.cpp for rescue? The Hexagon backend on Windows

During the weeks in which I tried the different approaches and wrote this blog post, an official instructions for hexagon backend was actually published for "Windows on Snapdragon" in llama.cpp. The guide is detailed, technically sound – but and this is the big let down: A signing of the driver is necessary. For an average person, this would mean to run:

bcdedit /set TESTSIGNING ON

To use the NPU on Windows, Secure Boot must be disabled.

The reason: The compiled binaries must be signed with a self-signed certificate that is accepted in Windows Driver Test Mode. For this to work, the system must be put into the test-signing mode – and Secure Boot must be deactivated.

That's significant. Secure Boot is a fundamental security feature of modern systems that prevents unsigned code from being executed at startup. It protects against boot kits, rootkits and other attackers deeply embedded in the system. Microsoft itself expressly recommends that Secure Boot be activated – and the Copilot+ PC certification requires Secure Boot.

To summarize: To use the NPU function for which the laptop was advertised, you should disable the security function Microsoft prescribes for this laptop. This is absolutely no attack on the developers who wrote this guide. I am grateful for these developments and the time spent.

The problem is the obvious lackluster support from Microsoft and Qualcomm. One would expect these companies to work together with the AI community in the competition for developers. Instead of undermining the great work of volunteers with their own AI Foundry, IMHO Microsoft should have worked with llama.cpp and other projects early on to ensure that they can be used in time. This is still not the case - even two years after the first introduction of "Copilot+".

The real problem

It's not a bug. This is ecosystem failure – one that cost me real money for a laptop and cloud server hours. Admittedly the Lenovo Yoga Slim 7x is a great machine that will accompany me for a long time. Unfortunately though, I can't use it for its intended purpose.

Qualcomm has sold hardware whose software stack does not exist for the advertised use case. Microsoft has marketed devices under the "Copilot+ PC" brand without ensuring that open-source AI workloads would run on it. The NPU is real – the 45 TOPS are measurable. Without functioning software stack though, this is a number on a data sheet.

The Oryon CPU in Snapdragon X Elite is actually very fast. llama.cpp runs on CPU with 15-25 tok/s for a 7B model – which can be used for many applications. It has nothing to do with the NPU promise for which the device was marketed – at least not for me as a developer.

And the next generation? Snapdragon X2 with 80 TOPS

Qualcomm and its partners introduced the Snapdragon X2 Elite at the CES 2026 – with 80 TOPS NPU performance, almost twice as much as the 45 TOPS of the first generation. The marketing machine is running at full speed again. The crucial question is: Of what use are 80 TOPS if the software stack has the same fundamental problems?

Ultimately, 80 TOPS are also just a larger number on the same broken foundation. If you buy a Snapdragon X2 device today, the same bet is on: The Ecosystem will eventually catch up. My experience with the first generation suggests that this is no sure win.

Hoping for Microsoft Build 2026?

Microsoft Build takes place on 2nd and 3rd of June 2026 and is held in San Francisco, and the recently published session catalog indicates that Microsoft wants to address the massive problems of the NPU ecosystem. The session Local Models, Developer Control, and the Future of AI Runtimes makes the greatest hope. Also Train and deploy custom OSS reasoning models with Foundry Sounds like a rally in Redmond – Let’s just hope that the models are current models that are also optimized for the NPU.

My recommendation

If you want to run local AI interference with open models and open source tools: DO NOT buy a copilot+ PC with Snapdragon X Elite – not for this use case, not today. Even though I'm not a fan of Apple products: A MacBook with Apple Silicon is the state of the art for local LLM interference on laptops. If you want to stay mobile and circumvent Apple’s walled garden, take a look towards Intel and AMD. Both are clearly better positioned than Qualcomm. Alternatively, there are many stationary AI workstations from different manufacturers. For me, those are still a better alternative than thworing my credit card at the various AI model providers.

The Snapdragon X Elite NPU may be an interesting option in two or three years, with sophisticated software stack. Today it is without substance for open source LLM inference - at least for my use case.