With regards to performance tuning of NAV, I have a couple of cases where we need to look deeper into how NAV utilizes the allocated system resources (CPU cores, RAM memory, hard drives). The scope is locally for the NAV processes, and not related to the SQL service.
Does anyone have in-depth information on how NAV processes and threads interact with an utilize system resources, and how the NAV service actually handle the use of parallelism, and how (why) we can optimize this?
This topic seems to be completely left out of all the NAV performance documents I have located, and there does not seem to be any official documentation of this.
Besides this, I got a specific inquery regarding support for multi-threading in NAV 2013 R2, and I cannot find any information on this topic.
A contact mentioned, that the support for multi-threading was not present in the initial release and only got introduced later with one of the CUs.
I have not found
any information that support this statement, or even whether multi-threading has always been possible in Dynamics NAV - as long as the operating system, hardware and hypervisor provided the feature.
Any input, comments or references would be much appreciated
Thanks !
Comments
Internally NAV (the NST) might utilise concurrency, for sure it does it to execute in parallel code from different sessions, but when it comes to single user session it is hard to tell.
To be fair NAV processing paradigm looks very 'serial', all available commands are farily simple. I personally cannot really see which one could benefint from parallel execution -maybe with exception of sorting on large temp tables in memory..
My 0.01£
Dynamics NAV, MS SQL Server, Wherescape RED;
PRINCE2 Practitioner - License GR657010572SG
GDPR Certified Data Protection Officer - PECB License DPCDPO1025070-2018-03