Skip to content

Potential performance issues [2019-03] #14

Description

@wukefe

Overview

The source file, profile-q5-single.txt, contains the profiled information generated by callgrind/cachegrind for query 5. After looking into the result, we identify several potential issues as shown below.

List of Potential Issues

  • allocMem: /* naive system */
    • bit shift: size%16 to size>>4
    • (Dr 9,491,585) if((*cur)+size < top){
  • getHashValueComplete:
    • (Dr 7,037,254) caseL dominates
  • find_hash_many
    • (Dr 13,097,228) while(hN(t)){
    • (Dr 20,181,981) caseL
  • lib_join_index_hash
    • (Dr 65,628,988) DOP(vLen, tempK[i]=find_hash_many(hashT,hashMask,src,val,i,typ,&tempH[i]))
  • getNumOfNonZero
    • (Dr 3,910,408) DOT(xn, if(vB(x,i))z[tid]++)
  • isOrdered
    • (Dr 1,650,050) DOIa(vn(x), ...)
  • binarySearch (<- searchOrdered)
    • (Dr 142,639,278) if(x[mid] == val) R mid;

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions