Files
Michael Smith 7230c57f67 IMPALA-5081: Add codegen_opt_level query option
Adds the 'codegen_opt_level' query option to select LLVM optimization
level for generated code. Retains the prior behavior - O2 - as default.

If optimization level is changed for an entry already in cache, the
cache entry will be used unless the new optimization level is higher
than the cached level.

Adds additional counters for NumOptimizedFunctions and
NumOptimizedInstructions, which allow observing some impacts from
codegen optimization. These additional counters, and tracking opt level
for cached entries, increases the size of each cached entry.

Adds unit tests for all optimizition levels checking
- that small functions are inlined at higher levels (as a way to verify
  that optimization level has an effect)
- codegen cache entries are updated when optimizing the same fragment at
  a higher level, and not updated the rest of the time

Change-Id: I371f8758b6552263e91a1fbfd9a6e1c28e1fa2bd
Reviewed-on: http://gerrit.cloudera.org:8080/20399
Reviewed-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
2023-10-23 21:11:47 +00:00
..