Qlik Community

QlikView App Development

Discussion Board for collaboration related to QlikView App Development.

Announcements
QlikWorld 2020: Join us May 11 - 14, 2020 in Phoenix, AZ. Register early and save $400. Learn More
Highlighted
Not applicable

32 bit outperforming 64 bit by factor of 2-3

I have been doing some benchmarking between the 32 and 64 bit versions of QV, and have found a significant discrepancy in performance for a Pivot Table calc times, which I think may force us to use the 32 bit server if a better solution cannot be found. I am running QV 9 SR3 Build 7440

I suspect that we're doing something funky that most other QV users aren't doing (i.e. large expressions with conditional logic containing set expressions. Interestingly I've separately tested with two different expressions: one dealing with averages (i.e. floating point operations) and the second with only counts and sums (i.e. integer operations).

I should also point out that until SR3 came out, this code didn't work at all in the 64 bit version, so I wonder if my suboptimal performance is related to this patched bug.

I've pasted the Pivot Table dimension definitions below (the first 5 dimensions are primary [i.e. rows], and the 6th dimension is secondary [i.e. columns]).

If anyone has any ideas I'm all ears

Dimensions:


ORG1_MemberName1
=if($(CurOrgLevel) >= 2, ORG1_MemberName2)
=if($(CurOrgLevel) >= 3, ORG1_MemberName3)
=if($(CurOrgLevel) >= 4, ORG1_MemberName4)
=if($(CurOrgLevel) >= 5, ORG1_MemberName5)
=$(PdRollupField)


Variables:


CurOrgLevel = 2
PdRollupField = PD1_PeriodName2
PdResp1 = {<SG1_path=,ORG1_path=,ORG1_level={1},ORG1_MemberName1={'Acme Co'}>}
PdResp2 = {<SG1_path=,ORG1_path=,ORG1_level={1},ORG1_MemberName2={'Montana','Idaho','Nevada'}>}
PdResp3 =
PdResp4 =
PdResp5 =


Current Selections:


SG1_path = 'Question 1'
PD1_path = 96 of 296
ORG1_path = NOT 'Acme Co'


Chart Expression:



If(dimensionality()=5 AND $(CurOrgLevel) >= 5,
count($(PdResp5) distinct FT_ResponseId)
,
if(dimensionality()=4 AND $(CurOrgLevel) >= 4,
sum($(PdResp4) aggr(count($(PdResp4) distinct FT_ResponseId), ORG1_MemberName4, $(PdRollupField)))
,
if(dimensionality()=3 AND $(CurOrgLevel) >= 3,
sum($(PdResp3) aggr(count($(PdResp3) distinct FT_ResponseId), ORG1_MemberName3, $(PdRollupField)))
,
if(dimensionality()=2 AND $(CurOrgLevel) >= 2,
sum($(PdResp2) aggr(count($(PdResp2) distinct FT_ResponseId), ORG1_MemberName2, $(PdRollupField)))
,
if (dimensionality()=1 AND $(CurOrgLevel) >= 1,
sum($(PdResp1) aggr(count($(PdResp1) distinct FT_ResponseId), ORG1_MemberName2, $(PdRollupField)))
)
)
)
)
)



Tags (2)