You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In this case study, we show the performance improvement to filter operator by (1)exposing the loop to the compiler and (b) using specific code rather than general code.
The following table shows the performance improvement by exposing loop to the compiler when the tuple size varies. The filter conditoin is x<1000, and x attribute follows uniform distribution ranging from 0 to 2^20. So, the selectivity is 0.001.
tuple size (bytes)
4
16
32
64
128
256
512
1024
2048
normal (cycles)
8
10
14
22
33
59
127
277
556
exposed (cycles)
2
5
6
11
21
39
75
148
299
The following table shows the performance comparisoin on filtering between sepecific code and general code (the loop is not exposed).
tuple size (bytes)
4
16
32
64
128
256
512
1024
2048
general code (cycles)
5
17
21
30
43
68
137
282
566
specific code (cycles)
8
10
14
22
33
59
127
277
556
Conclusion
The results in the case study help us to understand that exposing loop to the compiler could improve the performance by 2X. This result motivate us to use llvm to expose the loop to llvm compiler. The performance gains from specific code seems to be miginal. I believe this is because the the filter condition is very simple, the general code for which is still very efficient. Futher test should be made on the complex filtering condition.
The text was updated successfully, but these errors were encountered:
In this case study, we show the performance improvement to filter operator by (1)exposing the loop to the compiler and (b) using specific code rather than general code.
The following table shows the performance improvement by exposing loop to the compiler when the tuple size varies. The filter conditoin is x<1000, and x attribute follows uniform distribution ranging from 0 to 2^20. So, the selectivity is 0.001.
The following table shows the performance comparisoin on filtering between sepecific code and general code (the loop is not exposed).
Conclusion
The results in the case study help us to understand that exposing loop to the compiler could improve the performance by 2X. This result motivate us to use llvm to expose the loop to llvm compiler. The performance gains from specific code seems to be miginal. I believe this is because the the filter condition is very simple, the general code for which is still very efficient. Futher test should be made on the complex filtering condition.
The text was updated successfully, but these errors were encountered: