2 Replies Latest reply: Jun 29, 2010 11:07 AM by Nick Borunov RSS

    QlikView Objects not using all processor cores

    rherrera

      I have a server with 4 six-core processors, and qlikview objects don't use all of them. It seems like 1 object is assigned to 1 core.
      This really kills performance in my model.

      Is this a bug or normal behavior?
      Is there any way to change this setting and allow object to use all 24 cores available?

      Thanks!

        • QlikView Objects not using all processor cores
          John Witherspoon

          Under system requirements, my reference manual states:

          "QlikView makes full use of modern multi-core processor architecture and we thus strongly recommend using such processors."

          I can think of two possible non-bug explanations for what you're seeing:

          1. Any time you execute a macro, it will flush all cached data and objects, and single-thread the macro. That's because a macro can change anything, so it has to be a single process, and you can no longer trust cached data or objects.
          2. There may well be a "Single thread only?" setting somewhere that somehow got flipped on or is on by default in some implementations. I'm not aware of one, and couldn't find it looking for "thread" or "core" in my reference manual, but it wouldn't surprise me if there is one.
          • QlikView Objects not using all processor cores
            Nick Borunov

            I have the same problem.

            I have simple chart of clients with two metrics for them. One metric is very simple like sum(SessionCount), but second one is pretty complicated:

            sum(if($(vDateTime)=$(vStartDT) and $(vStartDT)=$(vEndDT),
            ((EndMin - StartMin) * 60) + (EndSec - StartSec),
            if($(vDateTime)=$(vEndDT),
            (EndMin * 60) + EndSec,
            if($(vDateTime)=$(vStartDT),
            3600 - (StartMin * 60) - StartSec, 3600))))/3600


            Where $(vDateTime), $(vStartDT) and $(vEndDT) are variables that contain proper field name for the expression.

            When I disable second variable in the chart, the application uses all cores. When the expression is enabled the application works in one core mode.

            So as I can see the problem related with the expression only, which relies on table structure. I need to change the expression or table structure. But I'm going to try exact field names instead of the variables first.

            So maybe somebody already knows what is the proper way. It will great to know too. :)

            Thanks