Hi, PostgreSQLv14- compiled with LLVM-Clangv13 and GCCv11,And captured performance using HammerDBv4.3-TPC-H. And Observed the functionality differences as LLVM-Clangv13-triggers heapgetpage instead XidInMVCCSnapshot or vice versa with GCC. I would like to know here the functionality differences triggered i.e. function call "heapgetpage vs XidInMVCCSnapshot '' in GCC vs LLVM-Clangv13 And also observed the performance difference GCC performing (Query execution time (small value is better) better than LLVM-Clang 13 on same BareMetal with same H/W and DB configurations
perf data top hot functions: LLVM-Clangv13: ============= TPCH-Query-completed-50.526 seconds Overhead Symbol 19.41% [.] tts_buffer_heap_getsomeattrs * 17.75% [.] heapgetpage* 9.46% [.] bpchareq 5.86% [.] ExecEvalScalarArrayOp 5.85% [.] ExecInterpExpr 4.50% [.] ReadBuffer_common 3.02% [.] heap_getnextslot GCCv11 ======= TPCH-Query-completed-41.593 seconds 21.13% [.] tts_buffer_heap_getsomeattrs *11.58% [.] XidInMVCCSnapshot* 10.87% [.] bpchareq 7.07% [.] ExecEvalScalarArrayOp 5.93% [.] ExecInterpExpr 5.16% [.] ReadBuffer_common 3.61% [.] heapgetpage Regards Arjun