March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
As captioned, buying a new PC, wonder if I need a higher core count CPU for future updates. Many Thanks
Solved! Go to Solution.
Power BI already uses multiple cores. If you want to splurge, get more memory.
HI @nascaline,
As lbendlin said, current power bi already enabled multiple threads feature. (e.g. parallel loading)
You can direct use these features if your device existed enough resources. For performance reasons, I'd like to suggest you use the 64-bit version instead 32-bit version. (notice: 32-bit version has 4G limit on memory resource usage)
BTW, you can also take a look at the following blog about tips and tricks to improve power bi performance:
Optimization guide for Power BI - Power BI | Microsoft Docs
Regards,
Xiaoxin Sheng
How exactly are the processes distributed to the threads?
Is it that rendering is executed on one thread and e.g. queries on a separate thread?
That is my assumption. I have a huge report and when I change the page there after longer modeling I actually see only load on one core.
So if queries make up 90% of the performance usage and e.g. rendering only 10% you don't notice much of the multithreading.
I have an i5 11600 and 64GB RAM.
It doesn't run that well, especially after prolonged use it feels like an engine limitation.
You seem to be talking about the rendering of visuals. That's a different topic. Familarize yourself with the Performance Analyzer and with DAX Studio.
No, sorry if I have been unclear.
The rendering as well as the query processes should only be an example.
I was just trying to give an example.
Power BI will consist of several program modules / processes. (I guess)
Because I see most of the loads only on one core, my assumption was that some processes need much more resources.
As an example process A needs much more resources and uses its thread to the maximum.
Process B on the other hand also has its own thread but does not use it as much and processes its computational tasks much faster.
Now my question was -> Is there e.g. a rendering process, a query process etc...?
So somehow it must be so, otherwise I would not see only load on one core/thread
This is now very theoretical and I also do not understand so much of multithreading.
My problem is that process A should actually be split on multiple threads.
I get over 400 pages in my report, even if I stop all visualizations/updates I have very long load times when building the report.
But I only see load on one thread.
Are there limits to how big PBi reports can be?
Currently it looks like my performance does not benefit from more cores but only single core performance.
PS: In Power BI service viewing works without problems. Actually, I thought that my DAX is quite okay -> If I stop all visuals... should that then still be relevant?
thank you for trying to help me
I get over 400 pages in my report, even if I stop all visualizations/updates I have very long load times when building the report.
While that is an absurdly high number, it has nothing to do with your issue. Pages are not pre-rendered. They will only be rendered when the report user explicityl looks at them. The Performance Analyzer gives you all the details about that process .
The Query engine is actually two parts - the Formula engine which is single threaded, and the Storage engine which can be multithreaded. Your design of the report visuals and measures will decide the eventual core usage
Keep in mind that a lot of this is academic as you have no control over the engine (or cores) in the Power BI Service.
Biggest takeaway - reduce the number of visuals on your pages, and make them render fast by inspecting and optimizing their queries.
TY!
So it has to be my DAX formulas (or my DAX inside the SSAS model) -> Because the Formula engine is single threaded.
Which would make sense looking at my problem.
Thank you, this helps me a lot
I need to ask you one more thing.
Why is it that my PBI Desktop loads everything pretty fast at the beginning but after some time it gets slower and slower -> Until I reopen the report.
How much space do you have dedicated for the caches? Might be worth cleaning them out and checking if that makes a difference.
HI @nascaline,
As lbendlin said, current power bi already enabled multiple threads feature. (e.g. parallel loading)
You can direct use these features if your device existed enough resources. For performance reasons, I'd like to suggest you use the 64-bit version instead 32-bit version. (notice: 32-bit version has 4G limit on memory resource usage)
BTW, you can also take a look at the following blog about tips and tricks to improve power bi performance:
Optimization guide for Power BI - Power BI | Microsoft Docs
Regards,
Xiaoxin Sheng
Power BI already uses multiple cores. If you want to splurge, get more memory.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!