Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
This page describes the settings for best performance for servers running the Qlik Associative Engine.
Latest update: May 2022
Windows 2022 has improved performance for servers with many physical cores. This table shows the definition used in the below document.
| Older Windows versions | Windows 2022 |
Server with normal core count | ≤64 physical cores | ≤90 physical cores |
Server with large core count | >64 physical cores | >90 physical cores |
Setting | Value |
Hyper-threading | Applies to QlikView and Qlik Sense servers:
There are use cases that even on servers with huge #cores enabling hyper-threading is beneficial. Therefore, it is best to test these settings for your application. |
Power Management (System Profile Settings) | Applies to QlikView and Qlik Sense servers:
Another setting that can be used is the full performance setting. But this settings makes the server run constantly at the maximum clock speed for all cores, which has the following drawbacks:
A solution to this is to use a custom system profile in the server BIOS that allows the CPUs to use their C states while all other components are set to full performance. The custom system profile should be set up similar to the following:
|
NUMA | QlikView servers (Intel):
Qlik Sense servers (Intel):
*On servers with Intel CPUs, NUMA is disabled by enabling Node Interleaving. QlikView and Qlik Sense servers (AMD EPYC):
|
Memory configuration | QlikView and Qlik Sense servers:
|
Hardware/Software Prefetcher | QlikView and Qlik Sense servers:
|
The names of the settings and how to tune them may differ depending on the server manufacturer and model. Refer to the documentation for your server to find the equivalents of the settings listed above.
Setting | Value |
Power plan | QlikView and Qlik Sense servers:
|
Registry update | Qlik Sense servers only: For servers with a large core count, there is a registry change, applicable to both Intel and AMD CPUs, that improves the responsiveness when the Qlik Sense Repository Service (QRS) is under heavy load (for example, when many users open the hub at the same time). Two registry updates are needed: Add the Thread_NormalizeSpinWait key as a DWORD value to the following subkey: HKEY\LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
Add the Switch.System.Threading.UseNetCoreTimer key as a String value to the following subkey: HKEY\LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\AppContext
The fix is described in full here: https://support.microsoft.com/en-za/help/4527212/long-spin-wait-loops-in-net-framework-on-intel-skyl... |
/ Cheers from the Scalability Center team
All,
We are not finding that hyper-threading should be switched either on or off but needs to be tested on a case by case basis. (we appreciate that this may not be entirely logical - but is evidenced by consequential performance)
If off is the advice perhaps there is a second setting that drives hyper-threading behaviour that affects CPU utilisation and performance that we are not aware of?
Kind regards,
Adrian
Adrian Parker
Differentia Consulting | Solutions | Resourcing | Support ™
...making the difference
Envision | Execute | Evolve
QlikView Elite Solution Provider
Oracle and IBM partner of the year
m: +44 7813 600 186
s : parkera
o : +44 8702 243 040
f : +44 8702 243 041
i : differentia.co
Differentia Consulting Ltd., is a UK based independent ERP centric; management consulting, IT solutions, resourcing and support provider.
Differentia Consulting Ltd is registered in England and Wales company number 4478146
with a registered address of The Old Byre, Sevington, Grittleton, Chippenham, SN14 7LD
found this document http://www.intel.com/content/www/us/en/performance/performance-xeon-e7-qliktech-delivering-advanced-...
which leads me to think that hyperthreading should be enabled on intel E7-series processors. Have some clients with this processors and have enabled it, but cant really tell if it makes any difference pro or con.
will keep testing...
Certainly a much valued information from the Scalability Center and the product itself. Large enterprise deployments are based on these settings to make the difference from a just acceptable performance to a goo to optimal performance.
I think at least Hyper-threading=Disabled needs some explanations. I mean is this related to NUMA or AMD? I guess Hyper-threading should be enabled on Intel servers..
Ralf, from what I know HT should be off for the QVS service. Last time I heard from on of us, HT should be on for the QDS ...
I advice Intel CPU.
http://frankdenneman.nl/2010/12/node-interleaving-enable-or-disable/
I did some load testing with Hyperthreading settings and the results were very interesting.
I scheduled 40 concurrent QVW reloads in the QDS (the QVW's generated data, wrote QVDs, read QVDs, and then logged stats).
The test hardware was a HP DL580 G7 with 4 X Intel Xeon Processor E7-4870 (4 CPU X 10 cores) and 256GB RAM. By disabling hyperthreading, the average document refresh time went from 02:53 to 01:50.
HT is one of configurations that you need to change. If you make all config, this statistics will be decreased more.
Look at antivirus to disable scan in the Qlikview files and directories too and try it again.
We have on access scanning disabled on the QV servers (only scheduled scans run periodically).
Cheers,
Graeme
Hi Graeme,
Did you only disabled HT? or together with NUMA = DISABLED?