This was something that I thought I had covered off already and was one of the key messages that I wanted to get across when looking to move to Power BI Premium.

It can be quite confusing when always thinking about the size of a PBIX file being smaller than 1 GB and then moving to Power BI Premium where it now changes to how much memory will be consumed by your data model.

I hope in this blog post to make it very clear on how much memory your PBIX will consume when moving to Power BI Premium (It might be interesting to see how much memory your PBIX uses)

Below are the series of blog posts on Power BI Premium Performance

How much memory does my PBIX consume?

Let me get straight into it, and below I will show you and explain how your PBIX file uses a lot more memory than the PBIX file size.

From the above image the total memory consumed is made up of the 5 components above.

The only component that is stored onto the disk is the Data Size. All the other components are expanded into memory when Power BI Desktop is opened and running.

Working Example of PBIX memory being consumed

Below I will show you an example of how much memory the PBIX is using.

One thing to note is that all the details below are a good estimation of memory sizing, I am still certain that there are some other internal processes running which will either make the memory consumed a little bigger or a little smaller.

The PBIX size is known internally as the roughly Data Size.

As shown below the size of my PBIX is 55.9MB

When I open the PBIX it then must use all the additional items above, which increase the memory consumed.

By using the Vertipaq Analzer, I can then see the memory requirements as shown below.

From the above table, I can see that my estimated Memory is 498,161,722 bytes, which translates to 475MB

And that total is made up mostly by the dictionary sizes of the internal Date Tables.

Whilst the above is a good indication of the memory being consumed in by the table size “498,161,722” another great way to find out how much memory it is currently using is to do the following

  • Make sure you only have got one Power BI Desktop File Open.
  • Now right click on the taskbar and select Task Manager
  • Next click on the Details tab.
  • The easiest way to find the msmdsrv.exe is I click on the Name to sort it alphabetically
    • I then click on any item under Name
    • I then type “ms” which allows me to then go down to a name that starts with “ms”
    • I can then find my msmdsrv.exe
  • As you can see below my current PBIX is using about 318MB of memory
  • NOTE: Even though t is currently using 318MB of memory I am currently not interacting with the report, which would very likely increase the amount of memory consumed. Not by a significant amount, but just something to be aware of.

Planning to migrate PBIX files from Power BI Pro to Power BI Premium

Now that I have shown you how to estimate the amount of memory required for moving to Power BI Premium, I can now successfully plan how much memory I would need in Power BI Premium.

Remember that the following needs to be factored when estimating how much memory is required:

  • Ensure that your data model is as optimized as possible
  • Opening the PBIX and using either Vertipaq Analzer or the msmdsrv.exe from above to get the memory consumed.
  • An entire dataset refresh would require double the amount from above.
  • It is a good idea to still have some headroom of those DAX queries which will require additional memory whilst it computes the result set.
  • This is where using the Incremental refreshing will use significantly less memory due to only having to allocate enough memory for the partitions being refreshed.

Conclusion

I do hope that this blog post has made it clearer on how to understand the memory requirement when moving from a PBIX to Power BI Premium.

If there are any questions or suggestions, please leave them in the comments section below.

Thanks once again for reading!