This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreLevel up your Power BI skills this month - build one visual each week and tell better stories with data! Get started
Hello,
We are using RS engine on Virtual Machine. Despite having robust hardware, the system becomes unresponsive due to 100% CPU usage, primarily driven by the msmdsrv.exeprocess.
Environment Details:
Steps Taken (No significant improvement):
Specific Questions:
Any architectural insights or advanced configuration suggestions would be greatly appreciated.
Best Regards,
Solved! Go to Solution.
Hi @gkc9,
You’re heading in the right direction! Since the issue shows up across different versions, it’s more likely tied to workload concurrency and configuration than a specific bug.
When multiple refresh operations happen at the same time, the Analysis Services engine (msmdsrv.exe) will use all available CPU, which can push usage to 100%, especially with high concurrency.
To help, you can tweak CoordinatorExecutionMode (like setting it to 6–8 on a 16-core VM) to cut down on conflicts between jobs. Adjusting ThreadPool settings like MaxThreads is possible, but bumping them up usually makes CPU pressure worse, so it’s best to be careful there.
The easiest way to keep CPU stable is to manage how and when refreshes happen, PBIRS doesn’t throttle well on its own, so staggering schedules, separating heavy and light datasets, and avoiding big refresh bursts at the same time can really help.
Also, simplifying your models (like cutting down on heavy Power Query steps or large cardinality) and moving transformations upstream can lighten the load. If you can’t reduce the workload, splitting it across multiple PBIRS instances is worth considering. Basically, balancing parallelism and refresh timing is the way to go, rather than relying on a single SSAS tweak.
Thank you.
Hi @gkc9,
You’re heading in the right direction! Since the issue shows up across different versions, it’s more likely tied to workload concurrency and configuration than a specific bug.
When multiple refresh operations happen at the same time, the Analysis Services engine (msmdsrv.exe) will use all available CPU, which can push usage to 100%, especially with high concurrency.
To help, you can tweak CoordinatorExecutionMode (like setting it to 6–8 on a 16-core VM) to cut down on conflicts between jobs. Adjusting ThreadPool settings like MaxThreads is possible, but bumping them up usually makes CPU pressure worse, so it’s best to be careful there.
The easiest way to keep CPU stable is to manage how and when refreshes happen, PBIRS doesn’t throttle well on its own, so staggering schedules, separating heavy and light datasets, and avoiding big refresh bursts at the same time can really help.
Also, simplifying your models (like cutting down on heavy Power Query steps or large cardinality) and moving transformations upstream can lighten the load. If you can’t reduce the workload, splitting it across multiple PBIRS instances is worth considering. Basically, balancing parallelism and refresh timing is the way to go, rather than relying on a single SSAS tweak.
Thank you.
Hi @gkc9
This looks more like a high parallel refresh workload issue, where too many concurrent refreshes are driving msmdsrv CPU to 100%, rather than a hardware limitation.
There is a related discussion about msmdsrv restarts and SQLDmpr events in the January 2026 build under heavy load:
https://community.fabric.microsoft.com/t5/Report-Server/Power-BI-Report-Server-January-2026-msmdsrv-...
While that case involves crashes/restarts (stability issue) and your scenario is CPU saturation (performance issue), both may be related to how the engine handles concurrent workloads in this version.
It’s recommended to verify you're running the latest patched version (March 2, 2026 update):
https://www.microsoft.com/en-us/download/details.aspx?id=105943
If this response was helpful, please accept it as a solution and give kudos to support other community members
Hello,
Thank you for your response.
We’ve been hitting 100% CPU on msmdsrv.exe during parallel refreshes, and actually, we saw the same thing happening back in the January 2025 version too.
Since it persists across different versions, I’m starting to think it's a configuration issue rather than a specific bug. Do you think there are any specific Analysis Services (SSAS) settings or properties we could tweak to throttle this load and stabilize the CPU?
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
| User | Count |
|---|---|
| 3 | |
| 3 | |
| 2 | |
| 2 | |
| 2 |
| User | Count |
|---|---|
| 4 | |
| 3 | |
| 3 | |
| 2 | |
| 2 |