cyb70289 commented on PR #40335:
URL: https://github.com/apache/arrow/pull/40335#issuecomment-1987514574

   Did a quick profiling. For gcc, looks Neon code doesn't save total 
instructions. Normalize instructions by iteration gives similar result for both 
the scalar and neon benchmark.
   `ASE_SPEC`  in output means total Neon (asimd) instructions.
   
   - profile scalar encode
   ```
   perf stat -e ASE_SPEC,instructions,cycles -- 
release/parquet-encoding-benchmark 
--benchmark_filter=BM_ByteStreamSplitEncode_Double_Scalar/65536
   
   
-------------------------------------------------------------------------------------------------------
   Benchmark                                             Time             CPU   
Iterations UserCounters...
   
-------------------------------------------------------------------------------------------------------
   BM_ByteStreamSplitEncode_Double_Scalar/65536     152798 ns       152798 ns   
      4586 bytes_per_second=3.19561Gi/s
   
               37,622      ASE_SPEC
        9,189,030,863      instructions                     #    3.48  insn per 
cycle
        2,643,007,625      cycles
   ```
   
   - profile neon encode
   ```
   perf stat -e ASE_SPEC,instructions,cycles -- 
release/parquet-encoding-benchmark 
--benchmark_filter=BM_ByteStreamSplitEncode_Double_Neon/65536
   
   
-----------------------------------------------------------------------------------------------------
   Benchmark                                           Time             CPU   
Iterations UserCounters...
   
-----------------------------------------------------------------------------------------------------
   BM_ByteStreamSplitEncode_Double_Neon/65536     177150 ns       177149 ns     
    3948 bytes_per_second=2.75633Gi/s
   
        2,985,430,024      ASE_SPEC
        7,998,814,771      instructions                     #    2.94  insn per 
cycle
        2,718,202,634      cycles
   ```


-- 
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.

To unsubscribe, e-mail: [email protected]

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

Reply via email to