Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

QlikView Server doesn't take advantage of multiple cores

Hello all,

Documentation states that "QlikView scales almost perfectly with the addition of more cores and more CPUs".

However, our QV11 server seems to use only one CPU (green graph in the attached image) reaching a "server timeout" response when it takes too much time, while the other CPU remains almost idle (red graph).

Could somebody give us advice about why is this happening?
System while failure.png

11 Replies
Not applicable
Author

Hello David,

Could you explain further how a expression became a 'single-thread' chain reaction? (In my case I think we were using all cores in all expressions).

dcheung3388
Partner - Contributor III
Partner - Contributor III

Hi Alzhaid,

This is what we have found and we are in the progress of conducting more test to verify the performance....

We have a qvw that is 700MB for financial reporting with 6 years of data.

Within this qvw, we have a tab with a P&L pivot table, and user can select the period they want to show, when user select a column, we noticed only 1 x CPU (32 cpu in total with 256GB RAM) was actually moving... and when we have 5 users, all the users request were queued... if the response took 30 seconds to complete, the user A would be 30 seconds, User B would then be 25-30 seconds later and continue...

If we changed the expression to a simple SUM(), all the CPU were used... so we start breaking down the expression.

We then found that within the original expression, we had a data island field called 'unit' which allows us to show the amount in "full, thousand, and million' this is a field that is selectable by the user and based on the selection, the expression would then divide on it.

We found that when trying to divide on this, it was causing (seems to be in task manager) the CPU to go into a single-thread mode.

Instead, what did was to change the expression to use a "variable" which incoroprated the expression to pickup the selected data island field.

Once this was changed, the whole expression became "multi-thread" and we could see all the CPU going crazy... And all the Users request were completed almost together...

What a learning exercise, drove a few of our us nuts... !

David