Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
pover
Luminary Alumni
Luminary Alumni

QlikView Server slower with more CPUs

Hello all,

I have a machine with 1 CPU, 4 cores, 8 system threads and 8 GB RAM which calculates the same graphs in half the time as a machine with 2 CPUs, 8 cores, 32 system threads and 64 GB RAM. Both have QV Server V9 SR5 and neither machine is virtualized.

Has anybody experienced something similar?

Thanks for the help.

Regards,

Karl

30 Replies
Not applicable

Thanks Rainer, we have tried setting the power plan to high performance it did improve, the calc time went from 34s to 30s, however, the time is still not comparable to the performance we are having from a quad-core server at 8.6s calc time.

Regards

pover
Luminary Alumni
Luminary Alumni
Author

Thanks for the suggestions. I just got a list of things to review from QlikTech and it mentions many of the same things that are mentioned here. Like Iván said, we´re testing all the suggestions we can.

The test that seems to have the biggest impact is the number of cores that we allow QlikView to use. With 1 user QlikView runs twice as fast when we restrict QlikView to 4 cores than when we allow it to use 32 cores. With 2 users and 32 cores, QlikView runs almost twice as slow as with 1 user. All CPUs available to QlikView are used at 100% so QlikView doesn't seem to know how to restrict itself.

Maybe once I have 10 concurrent users in the system QlikView will work better. So, against all logic if a user experiences poor QlikView performance then they should ask other users to enter and use QlikView. That's wierd.

Not applicable

From your original question : "a machine with 2 CPUs, 8 cores, 32 system threads"

If you would disable the CPU hyper-threading, there would be 8 cores = 8 system threads in the machine.

-Alex

Not applicable

Hi,

we' ve an internal discussion regarding this. And this post is only for completeness:

(This statement comes from a consultant colleague)

this QPI Wrap Card is needed only when the Server has 4 CPUs installed, but here the X3850 box has only 2 CPUs.

This could eventually cause a performance degradation.

Here is a excerpt from a whitepaper of the ex5:

These wrap cards complete the full QPI mesh to allow all four

processors to be connected to each other. The QPI Wrap Cards are not needed in

two-processor configurations and not needed when a MAX5 is connected.

3.4.1 QPI Wrap Card

In the x3850 X5, QPI links are used for inter-processor communication, both in a single node

and two-node system. They are also used to connect the system to a MAX5 memory

expansion drawer. In a single node x3850 X5, the QPI links are connected in a full mesh

between all CPUs. To complete this mesh, the QPI Wrap Card is used.

Tip: The QPI Wrap Cards are only for single-node configurations with three or four

processors installed. They are not necessary for any of the following items:

_ Single-node configurations with two processors

_ Configurations with MAX5 memory expansion units

_ Two-node configurations

A further performance issue can appear, when RAM-modules are not optimally distributed over the available DIMM-slots.

Attached is the link the WP from IBM: http://www.redbooks.ibm.com/redpapers/pdfs/redp4650.pdf

Not applicable


Alexandru Toth wrote:
From your original question : "a machine with 2 CPUs, 8 cores, 32 system threads"
If you would disable the CPU hyper-threading, there would be 8 cores = 8 system threads in the machine.
-Alex<div></div>


The server have 2 CPU's with 8 cores each, for a total of 16 physical CPU. We did see and increase of performance when disabling hyper-threading, thanks. I'm guessing we might be able to get a decent performance with a combination of all your suggestions.

Regards

Not applicable


olli wrote:
this QPI Wrap Card is needed only when the Server has 4 CPUs installed, but here the X3850 box has only 2 CPUs.
This could eventually cause a performance degradation.


Thanks, for the suggestion, we got the same comment from QlikTech. Now that you come out with this again, we feel more comfortable asking the provider to remove the card. We will let you know the outcome as soon as we do the testing without the qpi wrap card.

Thanks, again.

Not applicable

Hello all,

Thanks everyone for your suggestions because they have been useful. We just finished tunning up the server with the following changes in the configuration:

- Power Options. Changed from Balanced to High Performance

-Hyper threading. Changed to disable

-Virtualization capabilities. Changed to disable

-Ram Memory Configuration. RAM modules evenly distributed among the three channels. Density per module 8GB @ 1333mhz

-Hardware Prefetch. Qliktech suggested to disable this option, however we found out that prefetch benefits performance, so we turn it back on.

The server now is performing our test at 8.8s comparing the 17s intially.

Best Regards, thanks everybody.

pover
Luminary Alumni
Luminary Alumni
Author

Just as a final note. It is important that this information be relayed to partners and customers. We only discovered this issue after starting to use 64-bit laptops. There is probably plenty of improvement that could have been made in past projects and now when the customer asks for server requirements we will deliver these requirements along with the QlikView standard requirements.

The QlikTech Scalibility Center should post a white paper on what they've seen.

Thank you for all your posts.

Not applicable

Hello ivan_cruz, How can I disable Hyper threading. Is it on the BIOS or from Windows control panel. I would appreciate if you can give some more input on these. Thanks in advance

pover
Luminary Alumni
Luminary Alumni
Author

It is in the BIOS.  Since very server model can have a different BIOS interface it is hard to tell you where exactly the hyperthreading option is located, but if you go through all the options you shouldn't have a problem finding it.  It is usually in the CPU section of the BIOS.  Change the hyperthreading option to disabled, save your setting in the BIOS upon existing and your server should restart.

Karl