Open wukefe opened 5 years ago
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.
size%16
size>>4
if((*cur)+size < top){
while(hN(t)){
DOP(vLen, tempK[i]=find_hash_many(hashT,hashMask,src,val,i,typ,&tempH[i]))
DOT(xn, if(vB(x,i))z[tid]++)
DOIa(vn(x), ...)
if(x[mid] == val) R mid;
Update
Use bit shift instead of basic arithmetic operations, e.g. use size>>4 instead of size%16.
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
size%16
tosize>>4
if((*cur)+size < top){
while(hN(t)){
DOP(vLen, tempK[i]=find_hash_many(hashT,hashMask,src,val,i,typ,&tempH[i]))
DOT(xn, if(vB(x,i))z[tid]++)
DOIa(vn(x), ...)
if(x[mid] == val) R mid;