854a0f752e
### What changes were proposed in this pull request? This PR regenerates the `sql/core` benchmarks in JDK8/11 to compare the result. In general, we compare the ratio instead of the time. However, in this PR, the average time is compared. This PR should be considered as a rough comparison. **A. EXPECTED CASES(JDK11 is faster in general)** - [x] BloomFilterBenchmark (JDK11 is faster except one case) - [x] BuiltInDataSourceWriteBenchmark (JDK11 is faster at CSV/ORC) - [x] CSVBenchmark (JDK11 is faster except five cases) - [x] ColumnarBatchBenchmark (JDK11 is faster at `boolean`/`string` and some cases in `int`/`array`) - [x] DatasetBenchmark (JDK11 is faster with `string`, but is slower for `long` type) - [x] ExternalAppendOnlyUnsafeRowArrayBenchmark (JDK11 is faster except two cases) - [x] ExtractBenchmark (JDK11 is faster except HOUR/MINUTE/SECOND/MILLISECONDS/MICROSECONDS) - [x] HashedRelationMetricsBenchmark (JDK11 is faster) - [x] JSONBenchmark (JDK11 is much faster except eight cases) - [x] JoinBenchmark (JDK11 is faster except five cases) - [x] OrcNestedSchemaPruningBenchmark (JDK11 is faster in nine cases) - [x] PrimitiveArrayBenchmark (JDK11 is faster) - [x] SortBenchmark (JDK11 is faster except `Arrays.sort` case) - [x] UDFBenchmark (N/A, values are too small) - [x] UnsafeArrayDataBenchmark (JDK11 is faster except one case) - [x] WideTableBenchmark (JDK11 is faster except two cases) **B. CASES WE NEED TO INVESTIGATE MORE LATER** - [x] AggregateBenchmark (JDK11 is slower in general) - [x] CompressionSchemeBenchmark (JDK11 is slower in general except `string`) - [x] DataSourceReadBenchmark (JDK11 is slower in general) - [x] DateTimeBenchmark (JDK11 is slightly slower in general except `parsing`) - [x] MakeDateTimeBenchmark (JDK11 is slower except two cases) - [x] MiscBenchmark (JDK11 is slower except ten cases) - [x] OrcV2NestedSchemaPruningBenchmark (JDK11 is slower) - [x] ParquetNestedSchemaPruningBenchmark (JDK11 is slower except six cases) - [x] RangeBenchmark (JDK11 is slower except one case) `FilterPushdownBenchmark/InExpressionBenchmark/WideSchemaBenchmark` will be compared later because it took long timer. ### Why are the changes needed? According to the result, there are some difference between JDK8/JDK11. This will be a baseline for the future improvement and comparison. Also, as a reproducible environment, the following environment is used. - Instance: `r3.xlarge` - OS: `CentOS Linux release 7.5.1804 (Core)` - JDK: - `OpenJDK Runtime Environment (build 1.8.0_222-b10)` - `OpenJDK Runtime Environment 18.9 (build 11.0.4+11-LTS)` ### Does this PR introduce any user-facing change? No. ### How was this patch tested? This is a test-only PR. We need to run benchmark. Closes #26003 from dongjoon-hyun/SPARK-29320. Authored-by: Dongjoon Hyun <dhyun@apple.com> Signed-off-by: Dongjoon Hyun <dhyun@apple.com>
101 lines
11 KiB
Plaintext
101 lines
11 KiB
Plaintext
OpenJDK 64-Bit Server VM 1.8.0_222-b10 on Linux 3.10.0-862.3.2.el7.x86_64
|
|
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
|
|
Invoke extract for timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
|
|
------------------------------------------------------------------------------------------------------------------------
|
|
cast to timestamp 404 460 71 24.8 40.4 1.0X
|
|
MILLENNIUM of timestamp 1432 1580 128 7.0 143.2 0.3X
|
|
CENTURY of timestamp 1380 1390 10 7.2 138.0 0.3X
|
|
DECADE of timestamp 1254 1261 8 8.0 125.4 0.3X
|
|
YEAR of timestamp 1229 1236 9 8.1 122.9 0.3X
|
|
ISOYEAR of timestamp 1382 1415 44 7.2 138.2 0.3X
|
|
QUARTER of timestamp 1444 1458 16 6.9 144.4 0.3X
|
|
MONTH of timestamp 1212 1257 60 8.2 121.2 0.3X
|
|
WEEK of timestamp 1718 1730 12 5.8 171.8 0.2X
|
|
DAY of timestamp 1180 1201 22 8.5 118.0 0.3X
|
|
DAYOFWEEK of timestamp 1371 1427 68 7.3 137.1 0.3X
|
|
DOW of timestamp 1365 1378 18 7.3 136.5 0.3X
|
|
ISODOW of timestamp 1312 1319 7 7.6 131.2 0.3X
|
|
DOY of timestamp 1224 1238 16 8.2 122.4 0.3X
|
|
HOUR of timestamp 343 355 16 29.2 34.3 1.2X
|
|
MINUTE of timestamp 341 344 3 29.3 34.1 1.2X
|
|
SECOND of timestamp 553 556 2 18.1 55.3 0.7X
|
|
MILLISECONDS of timestamp 562 565 3 17.8 56.2 0.7X
|
|
MICROSECONDS of timestamp 435 465 49 23.0 43.5 0.9X
|
|
EPOCH of timestamp 1211 1217 9 8.3 121.1 0.3X
|
|
|
|
OpenJDK 64-Bit Server VM 1.8.0_222-b10 on Linux 3.10.0-862.3.2.el7.x86_64
|
|
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
|
|
Invoke extract for date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
|
|
------------------------------------------------------------------------------------------------------------------------
|
|
cast to date 1030 1038 8 9.7 103.0 1.0X
|
|
MILLENNIUM of date 1302 1306 6 7.7 130.2 0.8X
|
|
CENTURY of date 1309 1315 6 7.6 130.9 0.8X
|
|
DECADE of date 1197 1202 7 8.4 119.7 0.9X
|
|
YEAR of date 1182 1192 10 8.5 118.2 0.9X
|
|
ISOYEAR of date 1421 1429 10 7.0 142.1 0.7X
|
|
QUARTER of date 1454 1468 14 6.9 145.4 0.7X
|
|
MONTH of date 1217 1230 19 8.2 121.7 0.8X
|
|
WEEK of date 1723 1725 3 5.8 172.3 0.6X
|
|
DAY of date 1188 1191 4 8.4 118.8 0.9X
|
|
DAYOFWEEK of date 1348 1355 6 7.4 134.8 0.8X
|
|
DOW of date 1344 1353 8 7.4 134.4 0.8X
|
|
ISODOW of date 1301 1311 9 7.7 130.1 0.8X
|
|
DOY of date 1237 1241 4 8.1 123.7 0.8X
|
|
HOUR of date 1465 1474 16 6.8 146.5 0.7X
|
|
MINUTE of date 1463 1471 8 6.8 146.3 0.7X
|
|
SECOND of date 1720 1725 5 5.8 172.0 0.6X
|
|
MILLISECONDS of date 1739 1749 9 5.8 173.9 0.6X
|
|
MICROSECONDS of date 1607 1611 4 6.2 160.7 0.6X
|
|
EPOCH of date 2370 2377 10 4.2 237.0 0.4X
|
|
|
|
OpenJDK 64-Bit Server VM 1.8.0_222-b10 on Linux 3.10.0-862.3.2.el7.x86_64
|
|
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
|
|
Invoke date_part for timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
|
|
------------------------------------------------------------------------------------------------------------------------
|
|
cast to timestamp 307 312 6 32.6 30.7 1.0X
|
|
MILLENNIUM of timestamp 1294 1298 4 7.7 129.4 0.2X
|
|
CENTURY of timestamp 1317 1321 6 7.6 131.7 0.2X
|
|
DECADE of timestamp 1202 1207 8 8.3 120.2 0.3X
|
|
YEAR of timestamp 1196 1201 8 8.4 119.6 0.3X
|
|
ISOYEAR of timestamp 1431 1440 10 7.0 143.1 0.2X
|
|
QUARTER of timestamp 1483 1487 5 6.7 148.3 0.2X
|
|
MONTH of timestamp 1205 1209 4 8.3 120.5 0.3X
|
|
WEEK of timestamp 1728 1731 4 5.8 172.8 0.2X
|
|
DAY of timestamp 1190 1193 3 8.4 119.0 0.3X
|
|
DAYOFWEEK of timestamp 1369 1371 2 7.3 136.9 0.2X
|
|
DOW of timestamp 1371 1373 3 7.3 137.1 0.2X
|
|
ISODOW of timestamp 1316 1321 8 7.6 131.6 0.2X
|
|
DOY of timestamp 1236 1241 6 8.1 123.6 0.2X
|
|
HOUR of timestamp 342 343 1 29.3 34.2 0.9X
|
|
MINUTE of timestamp 338 352 23 29.6 33.8 0.9X
|
|
SECOND of timestamp 555 556 1 18.0 55.5 0.6X
|
|
MILLISECONDS of timestamp 570 573 4 17.6 57.0 0.5X
|
|
MICROSECONDS of timestamp 436 442 5 22.9 43.6 0.7X
|
|
EPOCH of timestamp 1212 1218 7 8.3 121.2 0.3X
|
|
|
|
OpenJDK 64-Bit Server VM 1.8.0_222-b10 on Linux 3.10.0-862.3.2.el7.x86_64
|
|
Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz
|
|
Invoke date_part for date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative
|
|
------------------------------------------------------------------------------------------------------------------------
|
|
cast to date 1017 1025 13 9.8 101.7 1.0X
|
|
MILLENNIUM of date 1314 1318 5 7.6 131.4 0.8X
|
|
CENTURY of date 1318 1334 16 7.6 131.8 0.8X
|
|
DECADE of date 1205 1210 5 8.3 120.5 0.8X
|
|
YEAR of date 1187 1190 3 8.4 118.7 0.9X
|
|
ISOYEAR of date 1409 1432 21 7.1 140.9 0.7X
|
|
QUARTER of date 1477 1482 6 6.8 147.7 0.7X
|
|
MONTH of date 1193 1199 7 8.4 119.3 0.9X
|
|
WEEK of date 1711 1719 7 5.8 171.1 0.6X
|
|
DAY of date 1183 1192 7 8.5 118.3 0.9X
|
|
DAYOFWEEK of date 1368 1371 6 7.3 136.8 0.7X
|
|
DOW of date 1361 1366 8 7.3 136.1 0.7X
|
|
ISODOW of date 1312 1315 3 7.6 131.2 0.8X
|
|
DOY of date 1230 1233 2 8.1 123.0 0.8X
|
|
HOUR of date 1480 1483 2 6.8 148.0 0.7X
|
|
MINUTE of date 1473 1489 27 6.8 147.3 0.7X
|
|
SECOND of date 1731 1737 7 5.8 173.1 0.6X
|
|
MILLISECONDS of date 1744 1749 6 5.7 174.4 0.6X
|
|
MICROSECONDS of date 1592 1594 1 6.3 159.2 0.6X
|
|
EPOCH of date 2368 2371 3 4.2 236.8 0.4X
|
|
|