niyue commented on PR #39098:
URL: https://github.com/apache/arrow/pull/39098#issuecomment-1853865161

   Now all test can pass after migrating to ORC v2/LLJIT. I ran the micro 
benchmark locally, and the performance looks roughly the same.
   * I ran 3 times for both locally, and they varied a bit but not differ too 
much (Google Benchmark itself runs the test a number of iterations)
   * the posted data stands for one time result I collected locally
   
   
![image](https://github.com/apache/arrow/assets/27754/a5611ce0-183a-4d88-aca6-33d7e3f4ab9b)
   
   # LLJIT
   ```
   Running release/gandiva-micro-benchmarks
   Run on (10 X 24.121 MHz CPU s)
   CPU Caches:
     L1 Data 64 KiB
     L1 Instruction 128 KiB
     L2 Unified 4096 KiB (x10)
   Load Average: 8.24, 27.86, 29.55
   /Users/ss/dev/projects/opensource/arrow/cpp/src/gandiva/cache.cc:50: 
Creating gandiva cache with capacity of 500
   /Users/ss/dev/projects/opensource/arrow/cpp/src/gandiva/engine.cc:211: 
Detected CPU Name : cyclone
   /Users/ss/dev/projects/opensource/arrow/cpp/src/gandiva/engine.cc:212: 
Detected CPU Features: []
   
-----------------------------------------------------------------------------------------
   Benchmark                                               Time             CPU 
  Iterations
   
-----------------------------------------------------------------------------------------
   TimedTestAdd3/min_time:1.000                          993 us          992 us 
        1368
   TimedTestBigNested/min_time:1.000                    8000 us         7990 us 
         177
   TimedTestExtractYear/min_time:1.000                  7267 us         7262 us 
         198
   TimedTestFilterAdd2/min_time:1.000                   2829 us         2829 us 
         486
   TimedTestFilterLike/min_time:1.000                  12213 us        12212 us 
         115
   TimedTestCastFloatFromString/min_time:1.000         14800 us        14798 us 
          94
   TimedTestCastIntFromString/min_time:1.000           14375 us        14367 us 
          96
   TimedTestAllocs/min_time:1.000                      34461 us        34458 us 
          41
   TimedTestOutputStringAllocs/min_time:1.000          52166 us        52158 us 
          28
   TimedTestMultiOr/min_time:1.000                      8928 us         8928 us 
         157
   TimedTestInExpr/min_time:1.000                       2484 us         2484 us 
         554
   DecimalAdd2Fast/min_time:1.000                       1963 us         1962 us 
         697
   DecimalAdd2LeadingZeroes/min_time:1.000              5036 us         5034 us 
         276
   DecimalAdd2LeadingZeroesWithDiv/min_time:1.000      23914 us        23912 us 
          59
   DecimalAdd2Large/min_time:1.000                    115643 us       115633 us 
          12
   DecimalAdd3Fast/min_time:1.000                       2250 us         2248 us 
         611
   DecimalAdd3LeadingZeroes/min_time:1.000              8654 us         8652 us 
         162
   DecimalAdd3LeadingZeroesWithDiv/min_time:1.000      60001 us        59988 us 
          23
   DecimalAdd3Large/min_time:1.000                    235355 us       235343 us 
           6
   ```
   
   # MCJIT
   ```
   Running release/gandiva-micro-benchmarks
   Run on (10 X 24.116 MHz CPU s)
   CPU Caches:
     L1 Data 64 KiB
     L1 Instruction 128 KiB
     L2 Unified 4096 KiB (x10)
   Load Average: 5.46, 18.00, 25.05
   /Users/ss/dev/projects/opensource/arrow/cpp/src/gandiva/cache.cc:50: 
Creating gandiva cache with capacity of 500
   /Users/ss/dev/projects/opensource/arrow/cpp/src/gandiva/engine.cc:129: 
Detected CPU Name : cyclone
   /Users/ss/dev/projects/opensource/arrow/cpp/src/gandiva/engine.cc:130: 
Detected CPU Features:
   
-----------------------------------------------------------------------------------------
   Benchmark                                               Time             CPU 
  Iterations
   
-----------------------------------------------------------------------------------------
   TimedTestAdd3/min_time:1.000                         1147 us         1145 us 
        1190
   TimedTestBigNested/min_time:1.000                    7934 us         7923 us 
         177
   TimedTestExtractYear/min_time:1.000                  6587 us         6583 us 
         216
   TimedTestFilterAdd2/min_time:1.000                   2855 us         2854 us 
         487
   TimedTestFilterLike/min_time:1.000                  12447 us        12440 us 
         114
   TimedTestCastFloatFromString/min_time:1.000         14514 us        14495 us 
          97
   TimedTestCastIntFromString/min_time:1.000           13710 us        13694 us 
         102
   TimedTestAllocs/min_time:1.000                      33595 us        33568 us 
          42
   TimedTestOutputStringAllocs/min_time:1.000          51769 us        51732 us 
          27
   TimedTestMultiOr/min_time:1.000                     12467 us        12462 us 
         112
   TimedTestInExpr/min_time:1.000                       2548 us         2547 us 
         557
   DecimalAdd2Fast/min_time:1.000                       2024 us         2020 us 
         678
   DecimalAdd2LeadingZeroes/min_time:1.000              5097 us         5091 us 
         275
   DecimalAdd2LeadingZeroesWithDiv/min_time:1.000      23785 us        23760 us 
          59
   DecimalAdd2Large/min_time:1.000                    116614 us       116562 us 
          12
   DecimalAdd3Fast/min_time:1.000                       2206 us         2205 us 
         626
   DecimalAdd3LeadingZeroes/min_time:1.000              8595 us         8587 us 
         164
   DecimalAdd3LeadingZeroesWithDiv/min_time:1.000      60579 us        60538 us 
          23
   DecimalAdd3Large/min_time:1.000                    239852 us       239584 us 
           6
   ```


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