GregBowyer commented on a change in pull request #8698:
URL: https://github.com/apache/arrow/pull/8698#discussion_r534657321



##########
File path: rust/parquet/src/encodings/encoding.rs
##########
@@ -561,6 +545,7 @@ impl<T: DataType> DeltaBitPackEncoder<T> {
     }
 
     // Write current delta buffer (<= 'block size' values) into bit writer
+    #[inline(never)]

Review comment:
       Performance notes:
   
   In the code there are a few places where the inlines have been shifted 
about. From `perf` and `vtune` its pretty obvious that the code is a bit overly 
inlined. This leads to places where we include a lot of code at a given 
compilation site that is either seldom used, or is just rather large.
   
   This impacts the instruction cache size and has a pronounced impact on 
performance. As a rule I have removed inlines that show up as causing front-end 
stalls in various tools, or are likly to be quite large (general size, large 
loops etc).
   
   For some parts the inlines are removed letting the compiler do its thing, in 
a few select places inlining is disabled since it swells the size of the 
resulting code.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to