Qlik Community

Qlik Scalability

A group dedicated to advancing Qlik scalability and performance. In this group we will share knowledge on how to perform load tests of Qlik products.

Highlighted
Employee
Employee

Quick tips #8 - Server Settings For Best Performance

Servers running QIX engine benefit from the following settings on average:

 

Setting/Configuration

Value

Hyper-threading

Enabled

 

Note: For 4-socket solutions, having hyper-threading disabled is beneficial on average. There are, however, cases when disabling it leads to improved performance.

Power Management (Power profile)

Max performance (BIOS and Windows setting) (1)

Node Interleaving

Enabled (meaning that NUMA is disabled)

 

Note: Disabling NUMA has no significant impact on the performance as the product adapts its behavior if NUMA is enabled.

Intel Turbo Boost

Enabled

Memory configuration

Configured for best performance

 

Note: The DIMM slots for every CPU should be populated in accordance to the hardware manufacturer’s specification for best performance.

Hardware pre-fetch

Enabled

 

The names of the settings and how to tune them differ depending on the server manufacturer and model. Refer to the documentation for your server to find the equivalents of the settings listed above.

 

(1) This setting will make the server constantly run at the maximum clock speed for all cores, which has the following drawbacks:

  • The server uses more power.
  • The CPUs will not use clock speeds higher than the speed of the all-core boost clock, which usually is lower than the maximum boost clock speed of the CPUs.

A solution to this is to use a custom system profile in the server BIOS, which 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:

  • CPU power management: Max performance (or OS since windows power management is also set to full performance)
  • Turbo boost: enabled
  • Energy efficient turbo: disabled
  • C states: enabled
  • C1E state: enabled
  • Uncore frequency: Max
  • Memory frequency: Max
  • Energy Efficiency policy: Performance

 

As mentioned above, the settings and how to tune them differ depending on the server manufacturer and model. Refer to the documentation for your server to find the equivalents of the settings listed above.

Cheers from the Scalability Team

26 Replies
Luminary
Luminary

Re: Quick tips #8 - Server Settings For Best Performance

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

Not applicable

Re: Quick tips #8 - Server Settings For Best Performance

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...

Re: Quick tips #8 - Server Settings For Best Performance

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.

MVP & Luminary
MVP & Luminary

Re: Quick tips #8 - Server Settings For Best 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..

Not applicable

Re: Quick tips #8 - Server Settings For Best Performance

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/

Not applicable

Re: Quick tips #8 - Server Settings For Best Performance

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.

Employee
Employee

Re: Quick tips #8 - Server Settings For Best Performance

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.

Ricardo Gerhard
OEM Solution Architect
LATAM
Not applicable

Re: Quick tips #8 - Server Settings For Best Performance

We have on access scanning disabled on the QV servers (only scheduled scans run periodically).

Cheers,

Graeme

Not applicable

Re: Quick tips #8 - Server Settings For Best Performance

Hi Graeme,

Did you only disabled HT? or together with NUMA = DISABLED?