From 6c536d451d7cd456fb2c66a87357a8af0f73e86d Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Sat, 2 May 2020 22:47:20 +0300 Subject: [PATCH 01/11] Optimize micros rebasing --- .../sql/catalyst/util/RebaseDateTime.scala | 47 ++++++++++++++----- 1 file changed, 35 insertions(+), 12 deletions(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala index 6848b0fa39c7c..0d5058e49e789 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala @@ -284,6 +284,17 @@ object RebaseDateTime { */ private val gregJulianRebaseMap = loadRebaseRecords("gregorian-julian-rebase-micros.json") + private def getLastSwitchTs(rebaseMap: AnyRefMap[String, RebaseInfo]): Long = { + val latestTs = rebaseMap.values.map(_.switches.last).max + require(rebaseMap.values.forall(_.diffs.last == 0), + s"Differences between Julian and Gregorian calendar after $latestTs are expected " + + "to be zero for available time zones.") + latestTs + } + // The switch time point after which all diffs between Gregorian and Julian calendars + // across all time zones are zero + private final val lastSwitchGregorianTs: Long = getLastSwitchTs(gregJulianRebaseMap) + private final val gregorianStartTs = LocalDateTime.of(gregorianStartDate, LocalTime.MIDNIGHT) private final val julianEndTs = LocalDateTime.of( julianEndDate, @@ -342,13 +353,17 @@ object RebaseDateTime { * @return The rebased microseconds since the epoch in Julian calendar. */ def rebaseGregorianToJulianMicros(micros: Long): Long = { - val timeZone = TimeZone.getDefault - val tzId = timeZone.getID - val rebaseRecord = gregJulianRebaseMap.getOrNull(tzId) - if (rebaseRecord == null || micros < rebaseRecord.switches(0)) { - rebaseGregorianToJulianMicros(timeZone.toZoneId, micros) + if (micros >= lastSwitchGregorianTs) { + micros } else { - rebaseMicros(rebaseRecord, micros) + val timeZone = TimeZone.getDefault + val tzId = timeZone.getID + val rebaseRecord = gregJulianRebaseMap.getOrNull(tzId) + if (rebaseRecord == null || micros < rebaseRecord.switches(0)) { + rebaseGregorianToJulianMicros(timeZone.toZoneId, micros) + } else { + rebaseMicros(rebaseRecord, micros) + } } } @@ -416,6 +431,10 @@ object RebaseDateTime { // in the interval: [julianGregDiffSwitchMicros(i), julianGregDiffSwitchMicros(i+1)) private val julianGregRebaseMap = loadRebaseRecords("julian-gregorian-rebase-micros.json") + // The switch time point after which all diffs between Julian and Gregorian calendars + // across all time zones are zero + private final val lastSwitchJulianTs: Long = getLastSwitchTs(julianGregRebaseMap) + /** * An optimized version of [[rebaseJulianToGregorianMicros(ZoneId, Long)]]. This method leverages * the pre-calculated rebasing maps to save calculation. If the rebasing map doesn't contain @@ -430,13 +449,17 @@ object RebaseDateTime { * @return The rebased microseconds since the epoch in Proleptic Gregorian calendar. */ def rebaseJulianToGregorianMicros(micros: Long): Long = { - val timeZone = TimeZone.getDefault - val tzId = timeZone.getID - val rebaseRecord = julianGregRebaseMap.getOrNull(tzId) - if (rebaseRecord == null || micros < rebaseRecord.switches(0)) { - rebaseJulianToGregorianMicros(timeZone.toZoneId, micros) + if (micros >= lastSwitchJulianTs) { + micros } else { - rebaseMicros(rebaseRecord, micros) + val timeZone = TimeZone.getDefault + val tzId = timeZone.getID + val rebaseRecord = julianGregRebaseMap.getOrNull(tzId) + if (rebaseRecord == null || micros < rebaseRecord.switches(0)) { + rebaseJulianToGregorianMicros(timeZone.toZoneId, micros) + } else { + rebaseMicros(rebaseRecord, micros) + } } } } From 832f366252bf1de60b00385296b310eac17a7ad9 Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Sun, 3 May 2020 06:42:32 +0000 Subject: [PATCH 02/11] Re-gen benchmarks on JDK 8 --- .../benchmarks/DateTimeBenchmark-results.txt | 474 +++++++++--------- .../DateTimeRebaseBenchmark-results.txt | 104 ++-- 2 files changed, 289 insertions(+), 289 deletions(-) diff --git a/sql/core/benchmarks/DateTimeBenchmark-results.txt b/sql/core/benchmarks/DateTimeBenchmark-results.txt index dba6c909be637..58a156fa72768 100644 --- a/sql/core/benchmarks/DateTimeBenchmark-results.txt +++ b/sql/core/benchmarks/DateTimeBenchmark-results.txt @@ -2,456 +2,456 @@ datetime +/- interval ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz datetime +/- interval: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date + interval(m) 1003 1012 13 0.0 334353721.7 1.0X -date + interval(m, d) 1154 1174 29 0.0 384575202.7 0.9X -date + interval(m, d, ms) 4338 4366 40 0.0 1446002701.3 0.2X -date - interval(m) 850 858 8 0.0 283424914.7 1.2X -date - interval(m, d) 1017 1031 19 0.0 339034354.7 1.0X -date - interval(m, d, ms) 4699 4717 25 0.0 1566218686.3 0.2X -timestamp + interval(m) 2044 2046 3 0.0 681382301.0 0.5X -timestamp + interval(m, d) 2215 2249 48 0.0 738464286.7 0.5X -timestamp + interval(m, d, ms) 2053 2063 13 0.0 684393366.0 0.5X -timestamp - interval(m) 1668 1677 12 0.0 556138256.7 0.6X -timestamp - interval(m, d) 1865 1882 25 0.0 621574795.3 0.5X -timestamp - interval(m, d, ms) 2075 2077 3 0.0 691569937.3 0.5X +date + interval(m) 1685 1710 36 0.0 561641919.7 1.0X +date + interval(m, d) 1739 1756 25 0.0 579533639.3 1.0X +date + interval(m, d, ms) 6359 6364 6 0.0 2119755588.3 0.3X +date - interval(m) 1447 1457 14 0.0 482312220.0 1.2X +date - interval(m, d) 1736 1739 4 0.0 578690557.7 1.0X +date - interval(m, d, ms) 6585 6600 21 0.0 2195120371.3 0.3X +timestamp + interval(m) 2684 2687 3 0.0 894782957.7 0.6X +timestamp + interval(m, d) 2992 3002 13 0.0 997465699.7 0.6X +timestamp + interval(m, d, ms) 3277 3286 13 0.0 1092314206.7 0.5X +timestamp - interval(m) 2682 2688 8 0.0 894100610.0 0.6X +timestamp - interval(m, d) 2962 2962 1 0.0 987345841.0 0.6X +timestamp - interval(m, d, ms) 3254 3262 11 0.0 1084800465.0 0.5X ================================================================================================ Extract components ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast to timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast to timestamp wholestage off 192 192 0 52.2 19.2 1.0X -cast to timestamp wholestage on 163 166 3 61.3 16.3 1.2X +cast to timestamp wholestage off 311 313 2 32.1 31.1 1.0X +cast to timestamp wholestage on 299 304 6 33.5 29.9 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz year of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -year of timestamp wholestage off 743 745 4 13.5 74.3 1.0X -year of timestamp wholestage on 708 715 5 14.1 70.8 1.0X +year of timestamp wholestage off 1221 1222 2 8.2 122.1 1.0X +year of timestamp wholestage on 1200 1217 15 8.3 120.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz quarter of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -quarter of timestamp wholestage off 848 857 12 11.8 84.8 1.0X -quarter of timestamp wholestage on 803 813 6 12.5 80.3 1.1X +quarter of timestamp wholestage off 1376 1378 2 7.3 137.6 1.0X +quarter of timestamp wholestage on 1332 1340 10 7.5 133.2 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz month of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -month of timestamp wholestage off 740 745 7 13.5 74.0 1.0X -month of timestamp wholestage on 703 710 5 14.2 70.3 1.1X +month of timestamp wholestage off 1243 1246 4 8.0 124.3 1.0X +month of timestamp wholestage on 1192 1205 20 8.4 119.2 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz weekofyear of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -weekofyear of timestamp wholestage off 1162 1182 28 8.6 116.2 1.0X -weekofyear of timestamp wholestage on 1093 1102 9 9.2 109.3 1.1X +weekofyear of timestamp wholestage off 1815 1818 4 5.5 181.5 1.0X +weekofyear of timestamp wholestage on 1819 1829 15 5.5 181.9 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz day of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -day of timestamp wholestage off 742 748 9 13.5 74.2 1.0X -day of timestamp wholestage on 703 713 7 14.2 70.3 1.1X +day of timestamp wholestage off 1230 1234 6 8.1 123.0 1.0X +day of timestamp wholestage on 1203 1219 17 8.3 120.3 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofyear of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofyear of timestamp wholestage off 791 799 11 12.6 79.1 1.0X -dayofyear of timestamp wholestage on 732 744 9 13.7 73.2 1.1X +dayofyear of timestamp wholestage off 1274 1280 8 7.8 127.4 1.0X +dayofyear of timestamp wholestage on 1235 1244 8 8.1 123.5 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofmonth of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofmonth of timestamp wholestage off 738 752 20 13.6 73.8 1.0X -dayofmonth of timestamp wholestage on 695 712 9 14.4 69.5 1.1X +dayofmonth of timestamp wholestage off 1232 1233 1 8.1 123.2 1.0X +dayofmonth of timestamp wholestage on 1208 1211 2 8.3 120.8 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofweek of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofweek of timestamp wholestage off 854 856 3 11.7 85.4 1.0X -dayofweek of timestamp wholestage on 819 839 16 12.2 81.9 1.0X +dayofweek of timestamp wholestage off 1402 1411 12 7.1 140.2 1.0X +dayofweek of timestamp wholestage on 1360 1367 8 7.4 136.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz weekday of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -weekday of timestamp wholestage off 816 821 7 12.3 81.6 1.0X -weekday of timestamp wholestage on 788 800 8 12.7 78.8 1.0X +weekday of timestamp wholestage off 1343 1347 5 7.4 134.3 1.0X +weekday of timestamp wholestage on 1299 1307 10 7.7 129.9 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz hour of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -hour of timestamp wholestage off 595 595 1 16.8 59.5 1.0X -hour of timestamp wholestage on 533 541 10 18.8 53.3 1.1X +hour of timestamp wholestage off 1013 1013 0 9.9 101.3 1.0X +hour of timestamp wholestage on 937 941 4 10.7 93.7 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz minute of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -minute of timestamp wholestage off 585 588 4 17.1 58.5 1.0X -minute of timestamp wholestage on 532 545 11 18.8 53.2 1.1X +minute of timestamp wholestage off 1015 1022 11 9.9 101.5 1.0X +minute of timestamp wholestage on 940 944 5 10.6 94.0 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz second of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -second of timestamp wholestage off 579 589 13 17.3 57.9 1.0X -second of timestamp wholestage on 529 537 6 18.9 52.9 1.1X +second of timestamp wholestage off 1008 1011 3 9.9 100.8 1.0X +second of timestamp wholestage on 942 948 9 10.6 94.2 1.1X ================================================================================================ Current date and time ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz current_date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -current_date wholestage off 171 174 4 58.4 17.1 1.0X -current_date wholestage on 152 155 3 65.6 15.2 1.1X +current_date wholestage off 293 295 2 34.1 29.3 1.0X +current_date wholestage on 266 279 14 37.6 26.6 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz current_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -current_timestamp wholestage off 178 181 4 56.2 17.8 1.0X -current_timestamp wholestage on 138 149 7 72.6 13.8 1.3X +current_timestamp wholestage off 296 297 0 33.7 29.6 1.0X +current_timestamp wholestage on 263 273 16 38.1 26.3 1.1X ================================================================================================ Date arithmetic ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast to date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast to date wholestage off 630 640 14 15.9 63.0 1.0X -cast to date wholestage on 591 594 5 16.9 59.1 1.1X +cast to date wholestage off 1039 1050 15 9.6 103.9 1.0X +cast to date wholestage on 989 1000 17 10.1 98.9 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz last_day: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -last_day wholestage off 759 778 26 13.2 75.9 1.0X -last_day wholestage on 727 736 9 13.8 72.7 1.0X +last_day wholestage off 1252 1255 4 8.0 125.2 1.0X +last_day wholestage on 1230 1237 4 8.1 123.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz next_day: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -next_day wholestage off 649 659 15 15.4 64.9 1.0X -next_day wholestage on 628 629 1 15.9 62.8 1.0X +next_day wholestage off 1111 1115 6 9.0 111.1 1.0X +next_day wholestage on 1041 1044 3 9.6 104.1 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_add: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_add wholestage off 621 622 1 16.1 62.1 1.0X -date_add wholestage on 600 606 6 16.7 60.0 1.0X +date_add wholestage off 1055 1055 0 9.5 105.5 1.0X +date_add wholestage on 1020 1024 5 9.8 102.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_sub: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_sub wholestage off 611 626 21 16.4 61.1 1.0X -date_sub wholestage on 588 600 7 17.0 58.8 1.0X +date_sub wholestage off 1066 1077 15 9.4 106.6 1.0X +date_sub wholestage on 1016 1022 7 9.8 101.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz add_months: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -add_months wholestage off 843 845 2 11.9 84.3 1.0X -add_months wholestage on 818 831 11 12.2 81.8 1.0X +add_months wholestage off 1354 1366 16 7.4 135.4 1.0X +add_months wholestage on 1395 1408 10 7.2 139.5 1.0X ================================================================================================ Formatting dates ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz format date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -format date wholestage off 3557 3569 18 2.8 355.7 1.0X -format date wholestage on 3564 3588 17 2.8 356.4 1.0X +format date wholestage off 5871 5923 73 1.7 587.1 1.0X +format date wholestage on 5769 5854 147 1.7 576.9 1.0X ================================================================================================ Formatting timestamps ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz from_unixtime: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -from_unixtime wholestage off 4875 4887 17 2.1 487.5 1.0X -from_unixtime wholestage on 4845 4870 16 2.1 484.5 1.0X +from_unixtime wholestage off 8664 8671 9 1.2 866.4 1.0X +from_unixtime wholestage on 8636 8651 18 1.2 863.6 1.0X ================================================================================================ Convert timestamps ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz from_utc_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -from_utc_timestamp wholestage off 665 671 8 15.0 66.5 1.0X -from_utc_timestamp wholestage on 654 672 14 15.3 65.4 1.0X +from_utc_timestamp wholestage off 1110 1112 3 9.0 111.0 1.0X +from_utc_timestamp wholestage on 1086 1102 17 9.2 108.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_utc_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_utc_timestamp wholestage off 982 983 1 10.2 98.2 1.0X -to_utc_timestamp wholestage on 877 889 9 11.4 87.7 1.1X +to_utc_timestamp wholestage off 1513 1517 5 6.6 151.3 1.0X +to_utc_timestamp wholestage on 1429 1435 5 7.0 142.9 1.1X ================================================================================================ Intervals ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast interval: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast interval wholestage off 200 206 9 50.1 20.0 1.0X -cast interval wholestage on 157 163 5 63.6 15.7 1.3X +cast interval wholestage off 338 343 7 29.6 33.8 1.0X +cast interval wholestage on 282 288 13 35.4 28.2 1.2X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz datediff: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -datediff wholestage off 1065 1068 4 9.4 106.5 1.0X -datediff wholestage on 1028 1047 15 9.7 102.8 1.0X +datediff wholestage off 1818 1829 16 5.5 181.8 1.0X +datediff wholestage on 1741 1747 4 5.7 174.1 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz months_between: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -months_between wholestage off 3102 3111 13 3.2 310.2 1.0X -months_between wholestage on 2970 3028 46 3.4 297.0 1.0X +months_between wholestage off 4984 4992 11 2.0 498.4 1.0X +months_between wholestage on 4931 4939 6 2.0 493.1 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz window: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -window wholestage off 1142 1154 16 0.9 1142.2 1.0X -window wholestage on 14817 15049 257 0.1 14816.5 0.1X +window wholestage off 1793 1923 184 0.6 1792.8 1.0X +window wholestage on 44186 44252 49 0.0 44186.5 0.0X ================================================================================================ Truncation ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YEAR: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YEAR wholestage off 1516 1518 2 6.6 151.6 1.0X -date_trunc YEAR wholestage on 1458 1468 9 6.9 145.8 1.0X +date_trunc YEAR wholestage off 2427 2432 6 4.1 242.7 1.0X +date_trunc YEAR wholestage on 2386 2398 7 4.2 238.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YYYY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YYYY wholestage off 1535 1535 1 6.5 153.5 1.0X -date_trunc YYYY wholestage on 1453 1461 7 6.9 145.3 1.1X +date_trunc YYYY wholestage off 2427 2435 11 4.1 242.7 1.0X +date_trunc YYYY wholestage on 2389 2395 6 4.2 238.9 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YY wholestage off 1561 1567 9 6.4 156.1 1.0X -date_trunc YY wholestage on 1452 1467 16 6.9 145.2 1.1X +date_trunc YY wholestage off 2424 2428 6 4.1 242.4 1.0X +date_trunc YY wholestage on 2381 2386 3 4.2 238.1 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MON: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MON wholestage off 1522 1531 13 6.6 152.2 1.0X -date_trunc MON wholestage on 1458 1467 7 6.9 145.8 1.0X +date_trunc MON wholestage off 2416 2416 0 4.1 241.6 1.0X +date_trunc MON wholestage on 2400 2406 8 4.2 240.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MONTH: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MONTH wholestage off 1518 1519 0 6.6 151.8 1.0X -date_trunc MONTH wholestage on 1452 1465 16 6.9 145.2 1.0X +date_trunc MONTH wholestage off 2406 2409 5 4.2 240.6 1.0X +date_trunc MONTH wholestage on 2399 2405 5 4.2 239.9 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MM: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MM wholestage off 1531 1532 1 6.5 153.1 1.0X -date_trunc MM wholestage on 1453 1463 8 6.9 145.3 1.1X +date_trunc MM wholestage off 2406 2410 6 4.2 240.6 1.0X +date_trunc MM wholestage on 2404 2411 13 4.2 240.4 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc DAY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc DAY wholestage off 1287 1309 31 7.8 128.7 1.0X -date_trunc DAY wholestage on 1310 1337 16 7.6 131.0 1.0X +date_trunc DAY wholestage off 2063 2071 10 4.8 206.3 1.0X +date_trunc DAY wholestage on 1993 2007 11 5.0 199.3 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc DD: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc DD wholestage off 1322 1328 9 7.6 132.2 1.0X -date_trunc DD wholestage on 1282 1324 28 7.8 128.2 1.0X +date_trunc DD wholestage off 2061 2064 4 4.9 206.1 1.0X +date_trunc DD wholestage on 1994 2001 8 5.0 199.4 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc HOUR: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc HOUR wholestage off 1379 1393 20 7.3 137.9 1.0X -date_trunc HOUR wholestage on 1288 1302 11 7.8 128.8 1.1X +date_trunc HOUR wholestage off 2062 2065 4 4.8 206.2 1.0X +date_trunc HOUR wholestage on 2024 2034 8 4.9 202.4 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MINUTE: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MINUTE wholestage off 243 245 2 41.2 24.3 1.0X -date_trunc MINUTE wholestage on 213 219 8 47.0 21.3 1.1X +date_trunc MINUTE wholestage off 362 364 3 27.6 36.2 1.0X +date_trunc MINUTE wholestage on 322 326 3 31.1 32.2 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc SECOND: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc SECOND wholestage off 238 245 11 42.1 23.8 1.0X -date_trunc SECOND wholestage on 201 210 9 49.7 20.1 1.2X +date_trunc SECOND wholestage off 336 337 1 29.8 33.6 1.0X +date_trunc SECOND wholestage on 329 338 8 30.4 32.9 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc WEEK: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc WEEK wholestage off 1443 1477 49 6.9 144.3 1.0X -date_trunc WEEK wholestage on 1491 1516 17 6.7 149.1 1.0X +date_trunc WEEK wholestage off 2352 2369 24 4.3 235.2 1.0X +date_trunc WEEK wholestage on 2326 2337 9 4.3 232.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc QUARTER: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc QUARTER wholestage off 2017 2039 32 5.0 201.7 1.0X -date_trunc QUARTER wholestage on 1966 2005 36 5.1 196.6 1.0X +date_trunc QUARTER wholestage off 3115 3127 17 3.2 311.5 1.0X +date_trunc QUARTER wholestage on 3072 3091 16 3.3 307.2 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc year: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc year wholestage off 206 206 1 48.6 20.6 1.0X -trunc year wholestage on 175 178 2 57.2 17.5 1.2X +trunc year wholestage off 321 321 0 31.1 32.1 1.0X +trunc year wholestage on 281 298 29 35.6 28.1 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc yyyy: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc yyyy wholestage off 188 189 2 53.2 18.8 1.0X -trunc yyyy wholestage on 176 180 4 56.9 17.6 1.1X +trunc yyyy wholestage off 345 347 4 29.0 34.5 1.0X +trunc yyyy wholestage on 282 288 7 35.4 28.2 1.2X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc yy: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc yy wholestage off 191 191 0 52.4 19.1 1.0X -trunc yy wholestage on 175 180 4 57.0 17.5 1.1X +trunc yy wholestage off 319 321 4 31.4 31.9 1.0X +trunc yy wholestage on 281 291 9 35.6 28.1 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc mon: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc mon wholestage off 203 205 3 49.3 20.3 1.0X -trunc mon wholestage on 183 186 2 54.8 18.3 1.1X +trunc mon wholestage off 330 339 14 30.3 33.0 1.0X +trunc mon wholestage on 279 289 11 35.8 27.9 1.2X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc month: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc month wholestage off 199 199 0 50.3 19.9 1.0X -trunc month wholestage on 177 179 2 56.4 17.7 1.1X +trunc month wholestage off 340 342 2 29.4 34.0 1.0X +trunc month wholestage on 281 284 4 35.6 28.1 1.2X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc mm: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc mm wholestage off 198 198 1 50.5 19.8 1.0X -trunc mm wholestage on 180 183 3 55.7 18.0 1.1X +trunc mm wholestage off 320 322 3 31.3 32.0 1.0X +trunc mm wholestage on 280 282 3 35.7 28.0 1.1X ================================================================================================ Parsing ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to timestamp str: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to timestamp str wholestage off 138 139 2 7.2 138.2 1.0X -to timestamp str wholestage on 129 138 7 7.8 128.9 1.1X +to timestamp str wholestage off 219 219 0 4.6 219.1 1.0X +to timestamp str wholestage on 210 211 2 4.8 210.1 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_timestamp wholestage off 885 889 5 1.1 885.3 1.0X -to_timestamp wholestage on 854 866 10 1.2 854.0 1.0X +to_timestamp wholestage off 2008 2009 2 0.5 2008.0 1.0X +to_timestamp wholestage on 1879 1882 4 0.5 1878.7 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_unix_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_unix_timestamp wholestage off 848 856 12 1.2 848.1 1.0X -to_unix_timestamp wholestage on 826 850 18 1.2 826.4 1.0X +to_unix_timestamp wholestage off 1894 1905 16 0.5 1894.3 1.0X +to_unix_timestamp wholestage on 1743 1749 5 0.6 1743.0 1.1X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to date str: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to date str wholestage off 167 171 5 6.0 167.2 1.0X -to date str wholestage on 165 173 4 6.1 165.0 1.0X +to date str wholestage off 256 259 3 3.9 256.5 1.0X +to date str wholestage on 263 266 4 3.8 262.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_date wholestage off 1612 1633 31 0.6 1611.7 1.0X -to_date wholestage on 1588 1605 19 0.6 1588.2 1.0X +to_date wholestage off 3757 3771 20 0.3 3757.2 1.0X +to_date wholestage on 3690 3703 14 0.3 3689.6 1.0X ================================================================================================ Conversion from/to external types ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 1.8.0_251-b08 on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz To/from Java's date-time: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -From java.sql.Date 245 247 1 20.4 49.0 1.0X -From java.time.LocalDate 228 233 4 21.9 45.6 1.1X -Collect java.sql.Date 1239 1361 209 4.0 247.9 0.2X -Collect java.time.LocalDate 1049 1107 54 4.8 209.8 0.2X -From java.sql.Timestamp 247 252 4 20.2 49.5 1.0X -From java.time.Instant 156 158 3 32.1 31.2 1.6X -Collect longs 854 910 59 5.9 170.8 0.3X -Collect java.sql.Timestamp 1133 1140 12 4.4 226.6 0.2X -Collect java.time.Instant 1108 1159 74 4.5 221.7 0.2X +From java.sql.Date 422 426 6 11.8 84.4 1.0X +From java.time.LocalDate 340 341 1 14.7 68.1 1.2X +Collect java.sql.Date 2017 2698 1063 2.5 403.4 0.2X +Collect java.time.LocalDate 1523 1545 25 3.3 304.6 0.3X +From java.sql.Timestamp 249 264 24 20.1 49.8 1.7X +From java.time.Instant 251 256 7 19.9 50.2 1.7X +Collect longs 1310 1366 81 3.8 262.0 0.3X +Collect java.sql.Timestamp 1503 1523 24 3.3 300.5 0.3X +Collect java.time.Instant 1393 1522 114 3.6 278.7 0.3X diff --git a/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt b/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt index 050950571511d..58794be2eb275 100644 --- a/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt +++ b/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt @@ -2,93 +2,93 @@ Rebasing dates/timestamps in Parquet datasource ================================================================================================ -OpenJDK 64-Bit Server VM 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save dates to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 24114 24114 0 4.1 241.1 1.0X -before 1582, noop 10250 10250 0 9.8 102.5 2.4X -after 1582, rebase off 36672 36672 0 2.7 366.7 0.7X -after 1582, rebase on 37123 37123 0 2.7 371.2 0.6X -before 1582, rebase off 21925 21925 0 4.6 219.2 1.1X -before 1582, rebase on 22341 22341 0 4.5 223.4 1.1X +after 1582, noop 23205 23205 0 4.3 232.1 1.0X +before 1582, noop 10484 10484 0 9.5 104.8 2.2X +after 1582, rebase off 35861 35861 0 2.8 358.6 0.6X +after 1582, rebase on 35248 35248 0 2.8 352.5 0.7X +before 1582, rebase off 21223 21223 0 4.7 212.2 1.1X +before 1582, rebase on 22516 22516 0 4.4 225.2 1.0X -OpenJDK 64-Bit Server VM 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load dates from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off, rebase off 12456 12601 126 8.0 124.6 1.0X -after 1582, vec off, rebase on 13299 13336 32 7.5 133.0 0.9X -after 1582, vec on, rebase off 3623 3660 40 27.6 36.2 3.4X -after 1582, vec on, rebase on 5160 5177 15 19.4 51.6 2.4X -before 1582, vec off, rebase off 13177 13264 76 7.6 131.8 0.9X -before 1582, vec off, rebase on 14102 14149 46 7.1 141.0 0.9X -before 1582, vec on, rebase off 3649 3670 34 27.4 36.5 3.4X -before 1582, vec on, rebase on 5652 5667 15 17.7 56.5 2.2X +after 1582, vec off, rebase off 12584 12719 140 7.9 125.8 1.0X +after 1582, vec off, rebase on 13478 13500 27 7.4 134.8 0.9X +after 1582, vec on, rebase off 3606 3631 22 27.7 36.1 3.5X +after 1582, vec on, rebase on 5158 5176 19 19.4 51.6 2.4X +before 1582, vec off, rebase off 12883 13022 126 7.8 128.8 1.0X +before 1582, vec off, rebase on 13927 13948 19 7.2 139.3 0.9X +before 1582, vec on, rebase off 3643 3658 13 27.4 36.4 3.5X +before 1582, vec on, rebase on 5621 5722 88 17.8 56.2 2.2X -OpenJDK 64-Bit Server VM 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save timestamps to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 2871 2871 0 34.8 28.7 1.0X -before 1582, noop 2753 2753 0 36.3 27.5 1.0X -after 1582, rebase off 15927 15927 0 6.3 159.3 0.2X -after 1582, rebase on 19138 19138 0 5.2 191.4 0.1X -before 1582, rebase off 16137 16137 0 6.2 161.4 0.2X -before 1582, rebase on 19584 19584 0 5.1 195.8 0.1X +after 1582, noop 2770 2770 0 36.1 27.7 1.0X +before 1582, noop 2697 2697 0 37.1 27.0 1.0X +after 1582, rebase off 16368 16368 0 6.1 163.7 0.2X +after 1582, rebase on 19519 19519 0 5.1 195.2 0.1X +before 1582, rebase off 16535 16535 0 6.0 165.4 0.2X +before 1582, rebase on 20159 20159 0 5.0 201.6 0.1X -OpenJDK 64-Bit Server VM 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load timestamps from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off, rebase off 14995 15047 47 6.7 150.0 1.0X -after 1582, vec off, rebase on 18111 18146 37 5.5 181.1 0.8X -after 1582, vec on, rebase off 4837 4873 44 20.7 48.4 3.1X -after 1582, vec on, rebase on 9542 9669 111 10.5 95.4 1.6X -before 1582, vec off, rebase off 14993 15090 94 6.7 149.9 1.0X -before 1582, vec off, rebase on 18675 18712 64 5.4 186.7 0.8X -before 1582, vec on, rebase off 4908 4923 15 20.4 49.1 3.1X -before 1582, vec on, rebase on 10128 10148 19 9.9 101.3 1.5X +after 1582, vec off, rebase off 15236 15268 44 6.6 152.4 1.0X +after 1582, vec off, rebase on 18293 18296 2 5.5 182.9 0.8X +after 1582, vec on, rebase off 4909 4930 22 20.4 49.1 3.1X +after 1582, vec on, rebase on 9668 9714 78 10.3 96.7 1.6X +before 1582, vec off, rebase off 15327 15421 102 6.5 153.3 1.0X +before 1582, vec off, rebase on 18798 18833 35 5.3 188.0 0.8X +before 1582, vec on, rebase off 4893 4898 5 20.4 48.9 3.1X +before 1582, vec on, rebase on 10218 10245 26 9.8 102.2 1.5X ================================================================================================ Rebasing dates/timestamps in ORC datasource ================================================================================================ -OpenJDK 64-Bit Server VM 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save dates to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 23977 23977 0 4.2 239.8 1.0X -before 1582, noop 10094 10094 0 9.9 100.9 2.4X -after 1582 33115 33115 0 3.0 331.2 0.7X -before 1582 19430 19430 0 5.1 194.3 1.2X +after 1582, noop 22819 22819 0 4.4 228.2 1.0X +before 1582, noop 10538 10538 0 9.5 105.4 2.2X +after 1582 31526 31526 0 3.2 315.3 0.7X +before 1582 20008 20008 0 5.0 200.1 1.1X -OpenJDK 64-Bit Server VM 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load dates from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off 10217 10241 21 9.8 102.2 1.0X -after 1582, vec on 3671 3691 31 27.2 36.7 2.8X -before 1582, vec off 10800 10874 114 9.3 108.0 0.9X -before 1582, vec on 4118 4165 74 24.3 41.2 2.5X +after 1582, vec off 10807 10829 30 9.3 108.1 1.0X +after 1582, vec on 3737 3754 26 26.8 37.4 2.9X +before 1582, vec off 11204 11241 36 8.9 112.0 1.0X +before 1582, vec on 4101 4132 41 24.4 41.0 2.6X -OpenJDK 64-Bit Server VM 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save timestamps to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 2691 2691 0 37.2 26.9 1.0X -before 1582, noop 2743 2743 0 36.5 27.4 1.0X -after 1582 21409 21409 0 4.7 214.1 0.1X -before 1582 22554 22554 0 4.4 225.5 0.1X +after 1582, noop 2865 2865 0 34.9 28.7 1.0X +before 1582, noop 2803 2803 0 35.7 28.0 1.0X +after 1582 20914 20914 0 4.8 209.1 0.1X +before 1582 21776 21776 0 4.6 217.8 0.1X -OpenJDK 64-Bit Server VM 1.8.0_242-8u242-b08-0ubuntu3~18.04-b08 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load timestamps from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off 14752 14855 103 6.8 147.5 1.0X -after 1582, vec on 8146 8185 34 12.3 81.5 1.8X -before 1582, vec off 15247 15294 46 6.6 152.5 1.0X -before 1582, vec on 8414 8466 52 11.9 84.1 1.8X +after 1582, vec off 14877 14911 33 6.7 148.8 1.0X +after 1582, vec on 7975 7996 22 12.5 79.7 1.9X +before 1582, vec off 15538 15581 37 6.4 155.4 1.0X +before 1582, vec on 8482 8519 33 11.8 84.8 1.8X From f4187d2db5ad9d82bbc45e7e9a094c635942a206 Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Sun, 3 May 2020 08:04:23 +0000 Subject: [PATCH 03/11] Re-gen results on JDK 11 --- .../DateTimeBenchmark-jdk11-results.txt | 474 +++++++++--------- .../DateTimeRebaseBenchmark-jdk11-results.txt | 104 ++-- 2 files changed, 289 insertions(+), 289 deletions(-) diff --git a/sql/core/benchmarks/DateTimeBenchmark-jdk11-results.txt b/sql/core/benchmarks/DateTimeBenchmark-jdk11-results.txt index 1004bcf1aa286..0494f596e6fc1 100644 --- a/sql/core/benchmarks/DateTimeBenchmark-jdk11-results.txt +++ b/sql/core/benchmarks/DateTimeBenchmark-jdk11-results.txt @@ -2,456 +2,456 @@ datetime +/- interval ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz datetime +/- interval: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date + interval(m) 919 933 22 0.0 306237514.3 1.0X -date + interval(m, d) 910 916 9 0.0 303338619.0 1.0X -date + interval(m, d, ms) 3912 3923 16 0.0 1303942791.7 0.2X -date - interval(m) 883 887 6 0.0 294268789.3 1.0X -date - interval(m, d) 898 911 18 0.0 299453403.0 1.0X -date - interval(m, d, ms) 3937 3944 11 0.0 1312269472.0 0.2X -timestamp + interval(m) 2226 2236 14 0.0 741972014.3 0.4X -timestamp + interval(m, d) 2264 2274 13 0.0 754709121.0 0.4X -timestamp + interval(m, d, ms) 2202 2223 30 0.0 734001075.0 0.4X -timestamp - interval(m) 1992 2005 17 0.0 664152744.7 0.5X -timestamp - interval(m, d) 2069 2075 9 0.0 689631159.0 0.4X -timestamp - interval(m, d, ms) 2240 2244 6 0.0 746538728.0 0.4X +date + interval(m) 1512 1576 90 0.0 504043760.0 1.0X +date + interval(m, d) 1544 1551 10 0.0 514516300.0 1.0X +date + interval(m, d, ms) 6642 6664 31 0.0 2213982734.0 0.2X +date - interval(m) 1457 1476 28 0.0 485507029.3 1.0X +date - interval(m, d) 1539 1541 4 0.0 512934920.7 1.0X +date - interval(m, d, ms) 6683 6691 11 0.0 2227667103.3 0.2X +timestamp + interval(m) 2907 2941 48 0.0 968860762.0 0.5X +timestamp + interval(m, d) 3018 3070 74 0.0 1006041770.0 0.5X +timestamp + interval(m, d, ms) 3425 3425 0 0.0 1141537846.3 0.4X +timestamp - interval(m) 3050 3054 7 0.0 1016542979.3 0.5X +timestamp - interval(m, d) 3140 3141 1 0.0 1046714072.7 0.5X +timestamp - interval(m, d, ms) 3408 3410 4 0.0 1135997137.0 0.4X ================================================================================================ Extract components ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast to timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast to timestamp wholestage off 178 180 3 56.1 17.8 1.0X -cast to timestamp wholestage on 189 192 4 53.0 18.9 0.9X +cast to timestamp wholestage off 334 339 7 29.9 33.4 1.0X +cast to timestamp wholestage on 306 317 9 32.7 30.6 1.1X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz year of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -year of timestamp wholestage off 760 761 1 13.2 76.0 1.0X -year of timestamp wholestage on 731 741 10 13.7 73.1 1.0X +year of timestamp wholestage off 1242 1244 4 8.1 124.2 1.0X +year of timestamp wholestage on 1237 1241 6 8.1 123.7 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz quarter of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -quarter of timestamp wholestage off 1005 1013 10 9.9 100.5 1.0X -quarter of timestamp wholestage on 981 986 3 10.2 98.1 1.0X +quarter of timestamp wholestage off 1494 1494 1 6.7 149.4 1.0X +quarter of timestamp wholestage on 1517 1529 12 6.6 151.7 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz month of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -month of timestamp wholestage off 754 758 6 13.3 75.4 1.0X -month of timestamp wholestage on 719 729 11 13.9 71.9 1.0X +month of timestamp wholestage off 1239 1245 9 8.1 123.9 1.0X +month of timestamp wholestage on 1228 1234 9 8.1 122.8 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz weekofyear of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -weekofyear of timestamp wholestage off 1085 1088 4 9.2 108.5 1.0X -weekofyear of timestamp wholestage on 1075 1091 13 9.3 107.5 1.0X +weekofyear of timestamp wholestage off 2181 2190 13 4.6 218.1 1.0X +weekofyear of timestamp wholestage on 1802 1813 13 5.5 180.2 1.2X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz day of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -day of timestamp wholestage off 751 770 27 13.3 75.1 1.0X -day of timestamp wholestage on 735 741 7 13.6 73.5 1.0X +day of timestamp wholestage off 1240 1253 19 8.1 124.0 1.0X +day of timestamp wholestage on 1228 1231 4 8.1 122.8 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofyear of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofyear of timestamp wholestage off 765 769 5 13.1 76.5 1.0X -dayofyear of timestamp wholestage on 762 770 7 13.1 76.2 1.0X +dayofyear of timestamp wholestage off 1289 1289 1 7.8 128.9 1.0X +dayofyear of timestamp wholestage on 1260 1272 12 7.9 126.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofmonth of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofmonth of timestamp wholestage off 780 782 2 12.8 78.0 1.0X -dayofmonth of timestamp wholestage on 720 736 12 13.9 72.0 1.1X +dayofmonth of timestamp wholestage off 1257 1268 16 8.0 125.7 1.0X +dayofmonth of timestamp wholestage on 1226 1232 10 8.2 122.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofweek of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofweek of timestamp wholestage off 887 899 17 11.3 88.7 1.0X -dayofweek of timestamp wholestage on 820 847 20 12.2 82.0 1.1X +dayofweek of timestamp wholestage off 1426 1428 2 7.0 142.6 1.0X +dayofweek of timestamp wholestage on 1374 1389 12 7.3 137.4 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz weekday of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -weekday of timestamp wholestage off 821 825 5 12.2 82.1 1.0X -weekday of timestamp wholestage on 802 814 9 12.5 80.2 1.0X +weekday of timestamp wholestage off 1363 1363 0 7.3 136.3 1.0X +weekday of timestamp wholestage on 1324 1329 5 7.6 132.4 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz hour of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -hour of timestamp wholestage off 611 622 14 16.4 61.1 1.0X -hour of timestamp wholestage on 571 577 8 17.5 57.1 1.1X +hour of timestamp wholestage off 1014 1014 1 9.9 101.4 1.0X +hour of timestamp wholestage on 932 939 5 10.7 93.2 1.1X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz minute of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -minute of timestamp wholestage off 607 615 12 16.5 60.7 1.0X -minute of timestamp wholestage on 573 580 6 17.5 57.3 1.1X +minute of timestamp wholestage off 1014 1016 2 9.9 101.4 1.0X +minute of timestamp wholestage on 932 939 9 10.7 93.2 1.1X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz second of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -second of timestamp wholestage off 615 616 2 16.3 61.5 1.0X -second of timestamp wholestage on 564 575 8 17.7 56.4 1.1X +second of timestamp wholestage off 1010 1019 14 9.9 101.0 1.0X +second of timestamp wholestage on 952 955 3 10.5 95.2 1.1X ================================================================================================ Current date and time ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz current_date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -current_date wholestage off 166 169 4 60.4 16.6 1.0X -current_date wholestage on 150 153 3 66.7 15.0 1.1X +current_date wholestage off 291 292 1 34.4 29.1 1.0X +current_date wholestage on 279 284 3 35.8 27.9 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz current_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -current_timestamp wholestage off 179 181 2 55.8 17.9 1.0X -current_timestamp wholestage on 162 324 138 61.9 16.2 1.1X +current_timestamp wholestage off 316 318 4 31.7 31.6 1.0X +current_timestamp wholestage on 271 287 12 36.9 27.1 1.2X ================================================================================================ Date arithmetic ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast to date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast to date wholestage off 658 661 5 15.2 65.8 1.0X -cast to date wholestage on 644 654 10 15.5 64.4 1.0X +cast to date wholestage off 1074 1078 5 9.3 107.4 1.0X +cast to date wholestage on 1012 1023 15 9.9 101.2 1.1X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz last_day: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -last_day wholestage off 768 772 5 13.0 76.8 1.0X -last_day wholestage on 737 750 12 13.6 73.7 1.0X +last_day wholestage off 1254 1256 4 8.0 125.4 1.0X +last_day wholestage on 1246 1251 4 8.0 124.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz next_day: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -next_day wholestage off 691 704 17 14.5 69.1 1.0X -next_day wholestage on 664 676 10 15.1 66.4 1.0X +next_day wholestage off 1129 1138 13 8.9 112.9 1.0X +next_day wholestage on 1062 1066 4 9.4 106.2 1.1X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_add: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_add wholestage off 646 646 0 15.5 64.6 1.0X -date_add wholestage on 623 640 13 16.1 62.3 1.0X +date_add wholestage off 1098 1108 13 9.1 109.8 1.0X +date_add wholestage on 1044 1054 12 9.6 104.4 1.1X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_sub: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_sub wholestage off 638 645 9 15.7 63.8 1.0X -date_sub wholestage on 618 629 8 16.2 61.8 1.0X +date_sub wholestage off 1058 1064 8 9.5 105.8 1.0X +date_sub wholestage on 1047 1050 2 9.6 104.7 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz add_months: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -add_months wholestage off 892 896 5 11.2 89.2 1.0X -add_months wholestage on 926 938 7 10.8 92.6 1.0X +add_months wholestage off 1461 1466 7 6.8 146.1 1.0X +add_months wholestage on 1442 1452 9 6.9 144.2 1.0X ================================================================================================ Formatting dates ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz format date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -format date wholestage off 3395 3439 62 2.9 339.5 1.0X -format date wholestage on 3418 3438 14 2.9 341.8 1.0X +format date wholestage off 5517 5541 33 1.8 551.7 1.0X +format date wholestage on 5765 5769 4 1.7 576.5 1.0X ================================================================================================ Formatting timestamps ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz from_unixtime: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -from_unixtime wholestage off 4565 4592 38 2.2 456.5 1.0X -from_unixtime wholestage on 4608 4635 32 2.2 460.8 1.0X +from_unixtime wholestage off 7418 7432 20 1.3 741.8 1.0X +from_unixtime wholestage on 7427 7442 9 1.3 742.7 1.0X ================================================================================================ Convert timestamps ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz from_utc_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -from_utc_timestamp wholestage off 801 807 9 12.5 80.1 1.0X -from_utc_timestamp wholestage on 819 830 7 12.2 81.9 1.0X +from_utc_timestamp wholestage off 1330 1341 16 7.5 133.0 1.0X +from_utc_timestamp wholestage on 1251 1256 9 8.0 125.1 1.1X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_utc_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_utc_timestamp wholestage off 1108 1114 8 9.0 110.8 1.0X -to_utc_timestamp wholestage on 1067 1078 13 9.4 106.7 1.0X +to_utc_timestamp wholestage off 1710 1713 5 5.8 171.0 1.0X +to_utc_timestamp wholestage on 1639 1644 6 6.1 163.9 1.0X ================================================================================================ Intervals ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast interval: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast interval wholestage off 211 213 2 47.4 21.1 1.0X -cast interval wholestage on 185 188 3 54.1 18.5 1.1X +cast interval wholestage off 338 341 4 29.6 33.8 1.0X +cast interval wholestage on 280 288 8 35.7 28.0 1.2X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz datediff: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -datediff wholestage off 1120 1120 1 8.9 112.0 1.0X -datediff wholestage on 1174 1205 19 8.5 117.4 1.0X +datediff wholestage off 1875 1881 9 5.3 187.5 1.0X +datediff wholestage on 1789 1798 9 5.6 178.9 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz months_between: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -months_between wholestage off 3669 3688 26 2.7 366.9 1.0X -months_between wholestage on 3687 3819 181 2.7 368.7 1.0X +months_between wholestage off 5916 5921 6 1.7 591.6 1.0X +months_between wholestage on 5848 5851 3 1.7 584.8 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz window: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -window wholestage off 1147 1148 1 0.9 1146.6 1.0X -window wholestage on 16997 17207 226 0.1 16996.7 0.1X +window wholestage off 1935 1970 49 0.5 1935.1 1.0X +window wholestage on 47286 47315 18 0.0 47286.1 0.0X ================================================================================================ Truncation ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YEAR: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YEAR wholestage off 1824 1859 50 5.5 182.4 1.0X -date_trunc YEAR wholestage on 1844 1942 71 5.4 184.4 1.0X +date_trunc YEAR wholestage off 2675 2695 28 3.7 267.5 1.0X +date_trunc YEAR wholestage on 2744 2750 7 3.6 274.4 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YYYY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YYYY wholestage off 1808 1815 11 5.5 180.8 1.0X -date_trunc YYYY wholestage on 1833 1864 49 5.5 183.3 1.0X +date_trunc YYYY wholestage off 2676 2685 14 3.7 267.6 1.0X +date_trunc YYYY wholestage on 2756 2763 5 3.6 275.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YY wholestage off 1867 1883 23 5.4 186.7 1.0X -date_trunc YY wholestage on 1843 1861 15 5.4 184.3 1.0X +date_trunc YY wholestage off 2683 2686 4 3.7 268.3 1.0X +date_trunc YY wholestage on 2750 2756 6 3.6 275.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MON: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MON wholestage off 1845 1858 18 5.4 184.5 1.0X -date_trunc MON wholestage on 1830 1893 42 5.5 183.0 1.0X +date_trunc MON wholestage off 2672 2677 6 3.7 267.2 1.0X +date_trunc MON wholestage on 2733 2741 6 3.7 273.3 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MONTH: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MONTH wholestage off 1822 1855 47 5.5 182.2 1.0X -date_trunc MONTH wholestage on 1832 1863 20 5.5 183.2 1.0X +date_trunc MONTH wholestage off 2662 2673 16 3.8 266.2 1.0X +date_trunc MONTH wholestage on 2735 2739 4 3.7 273.5 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MM: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MM wholestage off 1843 1848 7 5.4 184.3 1.0X -date_trunc MM wholestage on 1886 1905 14 5.3 188.6 1.0X +date_trunc MM wholestage off 2676 2679 4 3.7 267.6 1.0X +date_trunc MM wholestage on 2730 2738 8 3.7 273.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc DAY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc DAY wholestage off 1542 1545 4 6.5 154.2 1.0X -date_trunc DAY wholestage on 1610 1616 5 6.2 161.0 1.0X +date_trunc DAY wholestage off 2309 2310 1 4.3 230.9 1.0X +date_trunc DAY wholestage on 2340 2352 16 4.3 234.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc DD: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc DD wholestage off 1521 1529 11 6.6 152.1 1.0X -date_trunc DD wholestage on 1595 1611 21 6.3 159.5 1.0X +date_trunc DD wholestage off 2306 2308 3 4.3 230.6 1.0X +date_trunc DD wholestage on 2341 2348 6 4.3 234.1 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc HOUR: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc HOUR wholestage off 1496 1543 67 6.7 149.6 1.0X -date_trunc HOUR wholestage on 1567 1594 18 6.4 156.7 1.0X +date_trunc HOUR wholestage off 2244 2246 3 4.5 224.4 1.0X +date_trunc HOUR wholestage on 2331 2340 6 4.3 233.1 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MINUTE: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MINUTE wholestage off 230 230 1 43.5 23.0 1.0X -date_trunc MINUTE wholestage on 288 295 7 34.7 28.8 0.8X +date_trunc MINUTE wholestage off 371 373 2 27.0 37.1 1.0X +date_trunc MINUTE wholestage on 423 430 5 23.6 42.3 0.9X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc SECOND: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc SECOND wholestage off 247 249 4 40.5 24.7 1.0X -date_trunc SECOND wholestage on 297 314 12 33.6 29.7 0.8X +date_trunc SECOND wholestage off 373 376 4 26.8 37.3 1.0X +date_trunc SECOND wholestage on 419 428 8 23.9 41.9 0.9X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc WEEK: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc WEEK wholestage off 1786 1788 3 5.6 178.6 1.0X -date_trunc WEEK wholestage on 1786 1832 46 5.6 178.6 1.0X +date_trunc WEEK wholestage off 2615 2620 7 3.8 261.5 1.0X +date_trunc WEEK wholestage on 2654 2672 22 3.8 265.4 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc QUARTER: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc QUARTER wholestage off 2319 2365 66 4.3 231.9 1.0X -date_trunc QUARTER wholestage on 2424 2551 182 4.1 242.4 1.0X +date_trunc QUARTER wholestage off 3475 3484 13 2.9 347.5 1.0X +date_trunc QUARTER wholestage on 3543 3559 18 2.8 354.3 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc year: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc year wholestage off 180 189 12 55.5 18.0 1.0X -trunc year wholestage on 271 277 5 36.9 27.1 0.7X +trunc year wholestage off 312 319 11 32.1 31.2 1.0X +trunc year wholestage on 384 387 3 26.0 38.4 0.8X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc yyyy: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc yyyy wholestage off 189 191 4 52.9 18.9 1.0X -trunc yyyy wholestage on 276 284 6 36.2 27.6 0.7X +trunc yyyy wholestage off 308 322 20 32.5 30.8 1.0X +trunc yyyy wholestage on 384 388 6 26.1 38.4 0.8X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc yy: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc yy wholestage off 189 190 1 52.9 18.9 1.0X -trunc yy wholestage on 279 294 11 35.9 27.9 0.7X +trunc yy wholestage off 307 312 8 32.6 30.7 1.0X +trunc yy wholestage on 385 390 4 26.0 38.5 0.8X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc mon: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc mon wholestage off 185 186 1 54.1 18.5 1.0X -trunc mon wholestage on 272 285 13 36.8 27.2 0.7X +trunc mon wholestage off 315 316 0 31.7 31.5 1.0X +trunc mon wholestage on 385 391 7 26.0 38.5 0.8X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc month: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc month wholestage off 190 190 1 52.6 19.0 1.0X -trunc month wholestage on 293 300 4 34.1 29.3 0.6X +trunc month wholestage off 310 310 1 32.3 31.0 1.0X +trunc month wholestage on 385 388 4 26.0 38.5 0.8X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc mm: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc mm wholestage off 178 182 6 56.3 17.8 1.0X -trunc mm wholestage on 306 312 5 32.7 30.6 0.6X +trunc mm wholestage off 309 315 8 32.3 30.9 1.0X +trunc mm wholestage on 385 388 3 26.0 38.5 0.8X ================================================================================================ Parsing ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to timestamp str: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to timestamp str wholestage off 111 117 8 9.0 110.9 1.0X -to timestamp str wholestage on 101 109 6 9.9 100.6 1.1X +to timestamp str wholestage off 168 172 6 5.9 168.1 1.0X +to timestamp str wholestage on 167 174 7 6.0 166.7 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_timestamp wholestage off 735 746 15 1.4 734.9 1.0X -to_timestamp wholestage on 708 725 11 1.4 708.2 1.0X +to_timestamp wholestage off 1582 1585 3 0.6 1582.3 1.0X +to_timestamp wholestage on 1517 1525 11 0.7 1516.6 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_unix_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_unix_timestamp wholestage off 718 727 12 1.4 717.9 1.0X -to_unix_timestamp wholestage on 739 755 12 1.4 739.1 1.0X +to_unix_timestamp wholestage off 1544 1545 1 0.6 1544.2 1.0X +to_unix_timestamp wholestage on 1471 1483 9 0.7 1471.0 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to date str: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to date str wholestage off 124 125 1 8.0 124.4 1.0X -to date str wholestage on 134 138 3 7.5 133.9 0.9X +to date str wholestage off 214 218 5 4.7 214.1 1.0X +to date str wholestage on 220 223 6 4.6 219.5 1.0X -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_date wholestage off 1510 1544 48 0.7 1510.4 1.0X -to_date wholestage on 1544 1557 15 0.6 1544.2 1.0X +to_date wholestage off 3661 3675 20 0.3 3661.0 1.0X +to_date wholestage on 3659 3666 5 0.3 3658.6 1.0X ================================================================================================ Conversion from/to external types ================================================================================================ -Java HotSpot(TM) 64-Bit Server VM 11.0.5+10-LTS on Mac OS X 10.15.4 -Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws +Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz To/from Java's date-time: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -From java.sql.Date 269 278 9 18.6 53.7 1.0X -From java.time.LocalDate 227 234 7 22.0 45.4 1.2X -Collect java.sql.Date 1164 1272 141 4.3 232.8 0.2X -Collect java.time.LocalDate 1070 1130 59 4.7 214.1 0.3X -From java.sql.Timestamp 246 248 2 20.3 49.2 1.1X -From java.time.Instant 214 216 2 23.4 42.8 1.3X -Collect longs 814 831 15 6.1 162.7 0.3X -Collect java.sql.Timestamp 1016 1096 78 4.9 203.2 0.3X -Collect java.time.Instant 1012 1093 86 4.9 202.4 0.3X +From java.sql.Date 453 462 8 11.0 90.6 1.0X +From java.time.LocalDate 368 370 1 13.6 73.7 1.2X +Collect java.sql.Date 2261 2523 341 2.2 452.3 0.2X +Collect java.time.LocalDate 1696 1761 69 2.9 339.2 0.3X +From java.sql.Timestamp 297 299 3 16.9 59.3 1.5X +From java.time.Instant 346 351 6 14.5 69.2 1.3X +Collect longs 1175 1279 109 4.3 235.0 0.4X +Collect java.sql.Timestamp 1497 1513 15 3.3 299.3 0.3X +Collect java.time.Instant 1725 1975 246 2.9 344.9 0.3X diff --git a/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt b/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt index 2a9322a4b462a..a079a63ece2af 100644 --- a/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt +++ b/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt @@ -2,93 +2,93 @@ Rebasing dates/timestamps in Parquet datasource ================================================================================================ -OpenJDK 64-Bit Server VM 11.0.6+10-post-Ubuntu-1ubuntu118.04.1 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save dates to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 21171 21171 0 4.7 211.7 1.0X -before 1582, noop 11036 11036 0 9.1 110.4 1.9X -after 1582, rebase off 34321 34321 0 2.9 343.2 0.6X -after 1582, rebase on 33269 33269 0 3.0 332.7 0.6X -before 1582, rebase off 22016 22016 0 4.5 220.2 1.0X -before 1582, rebase on 23338 23338 0 4.3 233.4 0.9X +after 1582, noop 21290 21290 0 4.7 212.9 1.0X +before 1582, noop 11202 11202 0 8.9 112.0 1.9X +after 1582, rebase off 34126 34126 0 2.9 341.3 0.6X +after 1582, rebase on 33860 33860 0 3.0 338.6 0.6X +before 1582, rebase off 22260 22260 0 4.5 222.6 1.0X +before 1582, rebase on 23695 23695 0 4.2 237.0 0.9X -OpenJDK 64-Bit Server VM 11.0.6+10-post-Ubuntu-1ubuntu118.04.1 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load dates from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off, rebase off 12791 13089 287 7.8 127.9 1.0X -after 1582, vec off, rebase on 13203 13271 81 7.6 132.0 1.0X -after 1582, vec on, rebase off 3709 3764 49 27.0 37.1 3.4X -after 1582, vec on, rebase on 5082 5114 29 19.7 50.8 2.5X -before 1582, vec off, rebase off 13059 13153 87 7.7 130.6 1.0X -before 1582, vec off, rebase on 14211 14236 27 7.0 142.1 0.9X -before 1582, vec on, rebase off 3687 3749 72 27.1 36.9 3.5X -before 1582, vec on, rebase on 5449 5497 56 18.4 54.5 2.3X +after 1582, vec off, rebase off 12694 12850 155 7.9 126.9 1.0X +after 1582, vec off, rebase on 13117 13195 77 7.6 131.2 1.0X +after 1582, vec on, rebase off 3692 3755 76 27.1 36.9 3.4X +after 1582, vec on, rebase on 5186 5219 55 19.3 51.9 2.4X +before 1582, vec off, rebase off 13096 13140 38 7.6 131.0 1.0X +before 1582, vec off, rebase on 14086 14154 67 7.1 140.9 0.9X +before 1582, vec on, rebase off 3681 3700 28 27.2 36.8 3.4X +before 1582, vec on, rebase on 5595 5623 41 17.9 55.9 2.3X -OpenJDK 64-Bit Server VM 11.0.6+10-post-Ubuntu-1ubuntu118.04.1 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save timestamps to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 2831 2831 0 35.3 28.3 1.0X -before 1582, noop 2816 2816 0 35.5 28.2 1.0X -after 1582, rebase off 15543 15543 0 6.4 155.4 0.2X -after 1582, rebase on 18391 18391 0 5.4 183.9 0.2X -before 1582, rebase off 15747 15747 0 6.4 157.5 0.2X -before 1582, rebase on 18846 18846 0 5.3 188.5 0.2X +after 1582, noop 3085 3085 0 32.4 30.9 1.0X +before 1582, noop 3009 3009 0 33.2 30.1 1.0X +after 1582, rebase off 16240 16240 0 6.2 162.4 0.2X +after 1582, rebase on 19289 19289 0 5.2 192.9 0.2X +before 1582, rebase off 16455 16455 0 6.1 164.5 0.2X +before 1582, rebase on 20105 20105 0 5.0 201.1 0.2X -OpenJDK 64-Bit Server VM 11.0.6+10-post-Ubuntu-1ubuntu118.04.1 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load timestamps from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off, rebase off 16126 16216 78 6.2 161.3 1.0X -after 1582, vec off, rebase on 18277 18453 165 5.5 182.8 0.9X -after 1582, vec on, rebase off 5030 5067 42 19.9 50.3 3.2X -after 1582, vec on, rebase on 8553 8583 43 11.7 85.5 1.9X -before 1582, vec off, rebase off 15828 15872 39 6.3 158.3 1.0X -before 1582, vec off, rebase on 18899 18959 103 5.3 189.0 0.9X -before 1582, vec on, rebase off 4961 5009 43 20.2 49.6 3.3X -before 1582, vec on, rebase on 9099 9140 40 11.0 91.0 1.8X +after 1582, vec off, rebase off 15195 15263 69 6.6 152.0 1.0X +after 1582, vec off, rebase on 17634 17672 46 5.7 176.3 0.9X +after 1582, vec on, rebase off 4908 4934 23 20.4 49.1 3.1X +after 1582, vec on, rebase on 8576 8598 21 11.7 85.8 1.8X +before 1582, vec off, rebase off 15084 15142 56 6.6 150.8 1.0X +before 1582, vec off, rebase on 18281 18396 101 5.5 182.8 0.8X +before 1582, vec on, rebase off 4936 4967 41 20.3 49.4 3.1X +before 1582, vec on, rebase on 9068 9101 28 11.0 90.7 1.7X ================================================================================================ Rebasing dates/timestamps in ORC datasource ================================================================================================ -OpenJDK 64-Bit Server VM 11.0.6+10-post-Ubuntu-1ubuntu118.04.1 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save dates to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 21026 21026 0 4.8 210.3 1.0X -before 1582, noop 11040 11040 0 9.1 110.4 1.9X -after 1582 28171 28171 0 3.5 281.7 0.7X -before 1582 18955 18955 0 5.3 189.5 1.1X +after 1582, noop 21225 21225 0 4.7 212.2 1.0X +before 1582, noop 11098 11098 0 9.0 111.0 1.9X +after 1582 29152 29152 0 3.4 291.5 0.7X +before 1582 19695 19695 0 5.1 197.0 1.1X -OpenJDK 64-Bit Server VM 11.0.6+10-post-Ubuntu-1ubuntu118.04.1 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load dates from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off 10876 10931 49 9.2 108.8 1.0X -after 1582, vec on 3900 3913 20 25.6 39.0 2.8X -before 1582, vec off 11165 11174 12 9.0 111.6 1.0X -before 1582, vec on 4208 4214 7 23.8 42.1 2.6X +after 1582, vec off 10492 10520 25 9.5 104.9 1.0X +after 1582, vec on 3785 3800 14 26.4 37.8 2.8X +before 1582, vec off 11050 11058 11 9.0 110.5 0.9X +before 1582, vec on 4186 4198 13 23.9 41.9 2.5X -OpenJDK 64-Bit Server VM 11.0.6+10-post-Ubuntu-1ubuntu118.04.1 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save timestamps to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 2924 2924 0 34.2 29.2 1.0X -before 1582, noop 2820 2820 0 35.5 28.2 1.0X -after 1582 22228 22228 0 4.5 222.3 0.1X -before 1582 22590 22590 0 4.4 225.9 0.1X +after 1582, noop 3065 3065 0 32.6 30.6 1.0X +before 1582, noop 2992 2992 0 33.4 29.9 1.0X +after 1582 21654 21654 0 4.6 216.5 0.1X +before 1582 23269 23269 0 4.3 232.7 0.1X -OpenJDK 64-Bit Server VM 11.0.6+10-post-Ubuntu-1ubuntu118.04.1 on Linux 4.15.0-1063-aws +OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load timestamps from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off 13591 13658 59 7.4 135.9 1.0X -after 1582, vec on 7399 7488 126 13.5 74.0 1.8X -before 1582, vec off 14065 14096 30 7.1 140.7 1.0X -before 1582, vec on 7950 8127 249 12.6 79.5 1.7X +after 1582, vec off 13659 13729 65 7.3 136.6 1.0X +after 1582, vec on 7199 7402 328 13.9 72.0 1.9X +before 1582, vec off 14259 14326 63 7.0 142.6 1.0X +before 1582, vec on 7840 7872 29 12.8 78.4 1.7X From f8ab34b2bed6ac880a678665ec7b9d4886c5819b Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Mon, 4 May 2020 06:31:38 +0000 Subject: [PATCH 04/11] Re-gen on JDK 8 --- .../benchmarks/DateTimeBenchmark-results.txt | 254 +++++++++--------- 1 file changed, 127 insertions(+), 127 deletions(-) diff --git a/sql/core/benchmarks/DateTimeBenchmark-results.txt b/sql/core/benchmarks/DateTimeBenchmark-results.txt index 3ef2f922f95bf..7586295778bd8 100644 --- a/sql/core/benchmarks/DateTimeBenchmark-results.txt +++ b/sql/core/benchmarks/DateTimeBenchmark-results.txt @@ -6,18 +6,18 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz datetime +/- interval: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date + interval(m) 1613 1622 13 6.2 161.3 1.0X -date + interval(m, d) 1729 1752 32 5.8 172.9 0.9X -date + interval(m, d, ms) 6421 6424 5 1.6 642.1 0.3X -date - interval(m) 1441 1443 2 6.9 144.1 1.1X -date - interval(m, d) 1687 1689 2 5.9 168.7 1.0X -date - interval(m, d, ms) 6617 6625 11 1.5 661.7 0.2X -timestamp + interval(m) 2713 2733 28 3.7 271.3 0.6X -timestamp + interval(m, d) 3027 3032 8 3.3 302.7 0.5X -timestamp + interval(m, d, ms) 3501 3509 12 2.9 350.1 0.5X -timestamp - interval(m) 2892 2895 4 3.5 289.2 0.6X -timestamp - interval(m, d) 3190 3196 9 3.1 319.0 0.5X -timestamp - interval(m, d, ms) 3497 3500 5 2.9 349.7 0.5X +date + interval(m) 1638 1701 89 6.1 163.8 1.0X +date + interval(m, d) 1785 1790 7 5.6 178.5 0.9X +date + interval(m, d, ms) 6229 6270 58 1.6 622.9 0.3X +date - interval(m) 1500 1503 4 6.7 150.0 1.1X +date - interval(m, d) 1764 1766 3 5.7 176.4 0.9X +date - interval(m, d, ms) 6428 6446 25 1.6 642.8 0.3X +timestamp + interval(m) 2719 2722 4 3.7 271.9 0.6X +timestamp + interval(m, d) 3011 3021 14 3.3 301.1 0.5X +timestamp + interval(m, d, ms) 3405 3412 9 2.9 340.5 0.5X +timestamp - interval(m) 2759 2764 7 3.6 275.9 0.6X +timestamp - interval(m, d) 3094 3112 25 3.2 309.4 0.5X +timestamp - interval(m, d, ms) 3388 3392 5 3.0 338.8 0.5X ================================================================================================ @@ -28,92 +28,92 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast to timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast to timestamp wholestage off 321 323 2 31.1 32.1 1.0X -cast to timestamp wholestage on 294 306 10 34.0 29.4 1.1X +cast to timestamp wholestage off 319 323 6 31.4 31.9 1.0X +cast to timestamp wholestage on 304 311 8 32.9 30.4 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz year of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -year of timestamp wholestage off 1235 1242 9 8.1 123.5 1.0X -year of timestamp wholestage on 1208 1216 8 8.3 120.8 1.0X +year of timestamp wholestage off 1234 1239 6 8.1 123.4 1.0X +year of timestamp wholestage on 1229 1244 22 8.1 122.9 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz quarter of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -quarter of timestamp wholestage off 1415 1424 12 7.1 141.5 1.0X -quarter of timestamp wholestage on 1338 1341 4 7.5 133.8 1.1X +quarter of timestamp wholestage off 1440 1445 7 6.9 144.0 1.0X +quarter of timestamp wholestage on 1358 1361 3 7.4 135.8 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz month of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -month of timestamp wholestage off 1224 1225 1 8.2 122.4 1.0X -month of timestamp wholestage on 1193 1202 8 8.4 119.3 1.0X +month of timestamp wholestage off 1239 1240 1 8.1 123.9 1.0X +month of timestamp wholestage on 1221 1239 26 8.2 122.1 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz weekofyear of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -weekofyear of timestamp wholestage off 1864 1866 3 5.4 186.4 1.0X -weekofyear of timestamp wholestage on 1827 1840 7 5.5 182.7 1.0X +weekofyear of timestamp wholestage off 1926 1934 11 5.2 192.6 1.0X +weekofyear of timestamp wholestage on 1901 1911 10 5.3 190.1 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz day of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -day of timestamp wholestage off 1209 1211 2 8.3 120.9 1.0X -day of timestamp wholestage on 1191 1194 6 8.4 119.1 1.0X +day of timestamp wholestage off 1225 1229 6 8.2 122.5 1.0X +day of timestamp wholestage on 1217 1225 7 8.2 121.7 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofyear of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofyear of timestamp wholestage off 1270 1271 2 7.9 127.0 1.0X -dayofyear of timestamp wholestage on 1241 1250 12 8.1 124.1 1.0X +dayofyear of timestamp wholestage off 1290 1295 7 7.8 129.0 1.0X +dayofyear of timestamp wholestage on 1262 1270 7 7.9 126.2 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofmonth of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofmonth of timestamp wholestage off 1236 1250 20 8.1 123.6 1.0X -dayofmonth of timestamp wholestage on 1193 1195 3 8.4 119.3 1.0X +dayofmonth of timestamp wholestage off 1239 1239 1 8.1 123.9 1.0X +dayofmonth of timestamp wholestage on 1215 1222 8 8.2 121.5 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofweek of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofweek of timestamp wholestage off 1402 1405 4 7.1 140.2 1.0X -dayofweek of timestamp wholestage on 1352 1359 7 7.4 135.2 1.0X +dayofweek of timestamp wholestage off 1421 1422 2 7.0 142.1 1.0X +dayofweek of timestamp wholestage on 1379 1388 8 7.3 137.9 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz weekday of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -weekday of timestamp wholestage off 1346 1347 2 7.4 134.6 1.0X -weekday of timestamp wholestage on 1294 1299 7 7.7 129.4 1.0X +weekday of timestamp wholestage off 1349 1351 2 7.4 134.9 1.0X +weekday of timestamp wholestage on 1320 1327 8 7.6 132.0 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz hour of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -hour of timestamp wholestage off 1000 1008 11 10.0 100.0 1.0X -hour of timestamp wholestage on 936 941 6 10.7 93.6 1.1X +hour of timestamp wholestage off 1024 1024 0 9.8 102.4 1.0X +hour of timestamp wholestage on 921 929 11 10.9 92.1 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz minute of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -minute of timestamp wholestage off 969 976 10 10.3 96.9 1.0X -minute of timestamp wholestage on 933 936 4 10.7 93.3 1.0X +minute of timestamp wholestage off 977 982 6 10.2 97.7 1.0X +minute of timestamp wholestage on 927 929 2 10.8 92.7 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz second of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -second of timestamp wholestage off 1002 1005 3 10.0 100.2 1.0X -second of timestamp wholestage on 935 938 2 10.7 93.5 1.1X +second of timestamp wholestage off 987 989 3 10.1 98.7 1.0X +second of timestamp wholestage on 923 926 5 10.8 92.3 1.1X ================================================================================================ @@ -124,15 +124,15 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz current_date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -current_date wholestage off 308 316 11 32.5 30.8 1.0X -current_date wholestage on 265 275 12 37.8 26.5 1.2X +current_date wholestage off 303 311 12 33.0 30.3 1.0X +current_date wholestage on 266 271 5 37.5 26.6 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz current_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -current_timestamp wholestage off 307 312 7 32.6 30.7 1.0X -current_timestamp wholestage on 263 268 5 38.1 26.3 1.2X +current_timestamp wholestage off 297 297 1 33.7 29.7 1.0X +current_timestamp wholestage on 264 272 7 37.8 26.4 1.1X ================================================================================================ @@ -143,43 +143,43 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast to date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast to date wholestage off 1061 1065 5 9.4 106.1 1.0X -cast to date wholestage on 985 991 11 10.2 98.5 1.1X +cast to date wholestage off 1062 1063 2 9.4 106.2 1.0X +cast to date wholestage on 1007 1021 20 9.9 100.7 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz last_day: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -last_day wholestage off 1261 1262 1 7.9 126.1 1.0X -last_day wholestage on 1223 1235 12 8.2 122.3 1.0X +last_day wholestage off 1262 1265 5 7.9 126.2 1.0X +last_day wholestage on 1244 1256 14 8.0 124.4 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz next_day: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -next_day wholestage off 1114 1119 7 9.0 111.4 1.0X -next_day wholestage on 1034 1038 3 9.7 103.4 1.1X +next_day wholestage off 1119 1121 2 8.9 111.9 1.0X +next_day wholestage on 1057 1063 6 9.5 105.7 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_add: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_add wholestage off 1059 1076 25 9.4 105.9 1.0X -date_add wholestage on 1012 1021 9 9.9 101.2 1.0X +date_add wholestage off 1054 1059 7 9.5 105.4 1.0X +date_add wholestage on 1037 1069 52 9.6 103.7 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_sub: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_sub wholestage off 1046 1046 0 9.6 104.6 1.0X -date_sub wholestage on 1019 1023 3 9.8 101.9 1.0X +date_sub wholestage off 1054 1056 4 9.5 105.4 1.0X +date_sub wholestage on 1036 1040 4 9.7 103.6 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz add_months: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -add_months wholestage off 1392 1393 1 7.2 139.2 1.0X -add_months wholestage on 1335 1346 14 7.5 133.5 1.0X +add_months wholestage off 1408 1421 19 7.1 140.8 1.0X +add_months wholestage on 1434 1440 7 7.0 143.4 1.0X ================================================================================================ @@ -190,8 +190,8 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz format date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -format date wholestage off 5959 5994 50 1.7 595.9 1.0X -format date wholestage on 5991 6008 28 1.7 599.1 1.0X +format date wholestage off 5937 6169 328 1.7 593.7 1.0X +format date wholestage on 5836 5878 74 1.7 583.6 1.0X ================================================================================================ @@ -202,8 +202,8 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz from_unixtime: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -from_unixtime wholestage off 8851 8872 29 1.1 885.1 1.0X -from_unixtime wholestage on 8855 8872 10 1.1 885.5 1.0X +from_unixtime wholestage off 8904 8914 14 1.1 890.4 1.0X +from_unixtime wholestage on 8918 8936 13 1.1 891.8 1.0X ================================================================================================ @@ -214,15 +214,15 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz from_utc_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -from_utc_timestamp wholestage off 1105 1107 2 9.0 110.5 1.0X -from_utc_timestamp wholestage on 1072 1084 11 9.3 107.2 1.0X +from_utc_timestamp wholestage off 1110 1112 3 9.0 111.0 1.0X +from_utc_timestamp wholestage on 1115 1119 3 9.0 111.5 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_utc_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_utc_timestamp wholestage off 1531 1534 3 6.5 153.1 1.0X -to_utc_timestamp wholestage on 1451 1463 14 6.9 145.1 1.1X +to_utc_timestamp wholestage off 1524 1525 1 6.6 152.4 1.0X +to_utc_timestamp wholestage on 1450 1458 14 6.9 145.0 1.1X ================================================================================================ @@ -233,29 +233,29 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast interval: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast interval wholestage off 360 366 8 27.8 36.0 1.0X -cast interval wholestage on 286 292 7 35.0 28.6 1.3X +cast interval wholestage off 341 342 1 29.3 34.1 1.0X +cast interval wholestage on 285 294 7 35.1 28.5 1.2X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz datediff: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -datediff wholestage off 1809 1814 8 5.5 180.9 1.0X -datediff wholestage on 1742 1751 8 5.7 174.2 1.0X +datediff wholestage off 1874 1881 10 5.3 187.4 1.0X +datediff wholestage on 1785 1791 3 5.6 178.5 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz months_between: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -months_between wholestage off 5007 5007 1 2.0 500.7 1.0X -months_between wholestage on 4957 4980 35 2.0 495.7 1.0X +months_between wholestage off 5038 5042 5 2.0 503.8 1.0X +months_between wholestage on 4979 4987 8 2.0 497.9 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz window: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -window wholestage off 1945 2027 116 0.5 1945.3 1.0X -window wholestage on 45637 45648 8 0.0 45637.2 0.0X +window wholestage off 1716 1841 177 0.6 1716.2 1.0X +window wholestage on 46024 46063 27 0.0 46024.1 0.0X ================================================================================================ @@ -266,134 +266,134 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YEAR: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YEAR wholestage off 2463 2465 2 4.1 246.3 1.0X -date_trunc YEAR wholestage on 2406 2409 3 4.2 240.6 1.0X +date_trunc YEAR wholestage off 2428 2429 2 4.1 242.8 1.0X +date_trunc YEAR wholestage on 2451 2469 12 4.1 245.1 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YYYY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YYYY wholestage off 2462 2463 1 4.1 246.2 1.0X -date_trunc YYYY wholestage on 2407 2411 6 4.2 240.7 1.0X +date_trunc YYYY wholestage off 2423 2426 3 4.1 242.3 1.0X +date_trunc YYYY wholestage on 2454 2462 8 4.1 245.4 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YY wholestage off 2462 2466 6 4.1 246.2 1.0X -date_trunc YY wholestage on 2401 2406 4 4.2 240.1 1.0X +date_trunc YY wholestage off 2421 2441 28 4.1 242.1 1.0X +date_trunc YY wholestage on 2453 2461 9 4.1 245.3 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MON: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MON wholestage off 2437 2437 0 4.1 243.7 1.0X -date_trunc MON wholestage on 2416 2421 6 4.1 241.6 1.0X +date_trunc MON wholestage off 2425 2427 3 4.1 242.5 1.0X +date_trunc MON wholestage on 2431 2438 9 4.1 243.1 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MONTH: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MONTH wholestage off 2430 2437 9 4.1 243.0 1.0X -date_trunc MONTH wholestage on 2417 2423 5 4.1 241.7 1.0X +date_trunc MONTH wholestage off 2427 2433 8 4.1 242.7 1.0X +date_trunc MONTH wholestage on 2429 2435 4 4.1 242.9 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MM: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MM wholestage off 2429 2431 3 4.1 242.9 1.0X -date_trunc MM wholestage on 2417 2421 4 4.1 241.7 1.0X +date_trunc MM wholestage off 2425 2431 9 4.1 242.5 1.0X +date_trunc MM wholestage on 2430 2435 4 4.1 243.0 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc DAY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc DAY wholestage off 2074 2075 2 4.8 207.4 1.0X -date_trunc DAY wholestage on 2001 2010 16 5.0 200.1 1.0X +date_trunc DAY wholestage off 2117 2119 4 4.7 211.7 1.0X +date_trunc DAY wholestage on 2036 2118 174 4.9 203.6 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc DD: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc DD wholestage off 2067 2067 0 4.8 206.7 1.0X -date_trunc DD wholestage on 2000 2003 3 5.0 200.0 1.0X +date_trunc DD wholestage off 2116 2119 5 4.7 211.6 1.0X +date_trunc DD wholestage on 2035 2043 10 4.9 203.5 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc HOUR: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc HOUR wholestage off 2074 2084 14 4.8 207.4 1.0X -date_trunc HOUR wholestage on 2057 2067 10 4.9 205.7 1.0X +date_trunc HOUR wholestage off 2013 2014 2 5.0 201.3 1.0X +date_trunc HOUR wholestage on 2077 2088 13 4.8 207.7 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MINUTE: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MINUTE wholestage off 362 364 3 27.6 36.2 1.0X -date_trunc MINUTE wholestage on 319 333 14 31.3 31.9 1.1X +date_trunc MINUTE wholestage off 363 368 8 27.6 36.3 1.0X +date_trunc MINUTE wholestage on 321 326 7 31.2 32.1 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc SECOND: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc SECOND wholestage off 361 366 7 27.7 36.1 1.0X -date_trunc SECOND wholestage on 324 341 23 30.9 32.4 1.1X +date_trunc SECOND wholestage off 365 366 0 27.4 36.5 1.0X +date_trunc SECOND wholestage on 319 332 16 31.4 31.9 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc WEEK: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc WEEK wholestage off 2385 2393 11 4.2 238.5 1.0X -date_trunc WEEK wholestage on 2313 2322 6 4.3 231.3 1.0X +date_trunc WEEK wholestage off 2371 2376 7 4.2 237.1 1.0X +date_trunc WEEK wholestage on 2314 2322 8 4.3 231.4 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc QUARTER: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc QUARTER wholestage off 3278 3280 2 3.1 327.8 1.0X -date_trunc QUARTER wholestage on 3228 3234 8 3.1 322.8 1.0X +date_trunc QUARTER wholestage off 3334 3335 1 3.0 333.4 1.0X +date_trunc QUARTER wholestage on 3286 3291 7 3.0 328.6 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc year: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc year wholestage off 328 331 4 30.5 32.8 1.0X -trunc year wholestage on 286 295 9 35.0 28.6 1.1X +trunc year wholestage off 303 304 2 33.0 30.3 1.0X +trunc year wholestage on 283 291 5 35.3 28.3 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc yyyy: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc yyyy wholestage off 317 319 3 31.5 31.7 1.0X -trunc yyyy wholestage on 283 287 6 35.3 28.3 1.1X +trunc yyyy wholestage off 324 330 8 30.9 32.4 1.0X +trunc yyyy wholestage on 283 291 9 35.3 28.3 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc yy: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc yy wholestage off 321 321 0 31.1 32.1 1.0X -trunc yy wholestage on 284 293 11 35.2 28.4 1.1X +trunc yy wholestage off 304 305 3 32.9 30.4 1.0X +trunc yy wholestage on 283 302 28 35.3 28.3 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc mon: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc mon wholestage off 318 319 1 31.4 31.8 1.0X -trunc mon wholestage on 283 287 4 35.4 28.3 1.1X +trunc mon wholestage off 315 319 6 31.7 31.5 1.0X +trunc mon wholestage on 284 287 5 35.3 28.4 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc month: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc month wholestage off 319 321 3 31.3 31.9 1.0X -trunc month wholestage on 286 293 7 35.0 28.6 1.1X +trunc month wholestage off 305 314 13 32.8 30.5 1.0X +trunc month wholestage on 283 292 14 35.3 28.3 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc mm: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc mm wholestage off 317 319 2 31.5 31.7 1.0X -trunc mm wholestage on 282 285 3 35.4 28.2 1.1X +trunc mm wholestage off 301 301 0 33.2 30.1 1.0X +trunc mm wholestage on 285 290 7 35.1 28.5 1.1X ================================================================================================ @@ -404,36 +404,36 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to timestamp str: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to timestamp str wholestage off 219 220 0 4.6 219.4 1.0X -to timestamp str wholestage on 214 218 6 4.7 214.1 1.0X +to timestamp str wholestage off 218 220 3 4.6 218.4 1.0X +to timestamp str wholestage on 213 216 6 4.7 212.5 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_timestamp wholestage off 1912 1913 2 0.5 1912.0 1.0X -to_timestamp wholestage on 1671 1675 7 0.6 1670.8 1.1X +to_timestamp wholestage off 1838 1842 5 0.5 1838.1 1.0X +to_timestamp wholestage on 1952 1971 11 0.5 1952.2 0.9X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_unix_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_unix_timestamp wholestage off 1761 1763 3 0.6 1761.1 1.0X -to_unix_timestamp wholestage on 1695 1697 2 0.6 1695.4 1.0X +to_unix_timestamp wholestage off 1987 1988 1 0.5 1986.9 1.0X +to_unix_timestamp wholestage on 1944 1948 3 0.5 1944.2 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to date str: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to date str wholestage off 267 272 7 3.7 266.9 1.0X -to date str wholestage on 266 267 2 3.8 265.8 1.0X +to date str wholestage off 263 264 0 3.8 263.5 1.0X +to date str wholestage on 263 265 2 3.8 262.6 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_date wholestage off 3705 3743 55 0.3 3704.6 1.0X -to_date wholestage on 3736 3746 11 0.3 3736.4 1.0X +to_date wholestage off 3560 3567 11 0.3 3559.7 1.0X +to_date wholestage on 3525 3534 10 0.3 3524.8 1.0X ================================================================================================ @@ -444,14 +444,14 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz To/from Java's date-time: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -From java.sql.Date 400 406 6 12.5 80.1 1.0X -From java.time.LocalDate 343 349 7 14.6 68.6 1.2X -Collect java.sql.Date 1904 2739 1170 2.6 380.9 0.2X -Collect java.time.LocalDate 1477 1495 19 3.4 295.3 0.3X -From java.sql.Timestamp 376 388 10 13.3 75.2 1.1X -From java.time.Instant 237 239 3 21.1 47.4 1.7X -Collect longs 1258 1356 111 4.0 251.7 0.3X -Collect java.sql.Timestamp 1878 1937 64 2.7 375.6 0.2X -Collect java.time.Instant 1667 1904 238 3.0 333.4 0.2X +From java.sql.Date 405 416 16 12.3 81.0 1.0X +From java.time.LocalDate 344 352 14 14.5 68.8 1.2X +Collect java.sql.Date 1622 2553 1372 3.1 324.4 0.2X +Collect java.time.LocalDate 1464 1482 20 3.4 292.8 0.3X +From java.sql.Timestamp 248 258 15 20.2 49.6 1.6X +From java.time.Instant 237 243 7 21.1 47.4 1.7X +Collect longs 1252 1341 109 4.0 250.5 0.3X +Collect java.sql.Timestamp 1515 1516 2 3.3 302.9 0.3X +Collect java.time.Instant 1379 1490 96 3.6 275.8 0.3X From b9dfb161294ef8c538dcb8afc2662926a34bd1c8 Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Mon, 4 May 2020 08:13:22 +0000 Subject: [PATCH 05/11] Re-gen on JDK 11 --- .../DateTimeBenchmark-jdk11-results.txt | 254 +++++++++--------- 1 file changed, 127 insertions(+), 127 deletions(-) diff --git a/sql/core/benchmarks/DateTimeBenchmark-jdk11-results.txt b/sql/core/benchmarks/DateTimeBenchmark-jdk11-results.txt index 61b4c762a752e..61ca342a0d559 100644 --- a/sql/core/benchmarks/DateTimeBenchmark-jdk11-results.txt +++ b/sql/core/benchmarks/DateTimeBenchmark-jdk11-results.txt @@ -6,18 +6,18 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz datetime +/- interval: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date + interval(m) 1485 1567 116 6.7 148.5 1.0X -date + interval(m, d) 1504 1510 9 6.6 150.4 1.0X -date + interval(m, d, ms) 7000 7013 18 1.4 700.0 0.2X -date - interval(m) 1466 1478 17 6.8 146.6 1.0X -date - interval(m, d) 1533 1534 1 6.5 153.3 1.0X -date - interval(m, d, ms) 7014 7019 7 1.4 701.4 0.2X -timestamp + interval(m) 3062 3064 3 3.3 306.2 0.5X -timestamp + interval(m, d) 3133 3136 5 3.2 313.3 0.5X -timestamp + interval(m, d, ms) 3401 3402 3 2.9 340.1 0.4X -timestamp - interval(m) 3025 3037 17 3.3 302.5 0.5X -timestamp - interval(m, d) 3083 3120 51 3.2 308.3 0.5X -timestamp - interval(m, d, ms) 3371 3379 11 3.0 337.1 0.4X +date + interval(m) 1496 1569 104 6.7 149.6 1.0X +date + interval(m, d) 1514 1526 17 6.6 151.4 1.0X +date + interval(m, d, ms) 6231 6253 30 1.6 623.1 0.2X +date - interval(m) 1481 1487 9 6.8 148.1 1.0X +date - interval(m, d) 1550 1552 2 6.5 155.0 1.0X +date - interval(m, d, ms) 6269 6272 4 1.6 626.9 0.2X +timestamp + interval(m) 3017 3056 54 3.3 301.7 0.5X +timestamp + interval(m, d) 3146 3148 3 3.2 314.6 0.5X +timestamp + interval(m, d, ms) 3446 3460 20 2.9 344.6 0.4X +timestamp - interval(m) 3045 3059 19 3.3 304.5 0.5X +timestamp - interval(m, d) 3147 3164 25 3.2 314.7 0.5X +timestamp - interval(m, d, ms) 3425 3442 25 2.9 342.5 0.4X ================================================================================================ @@ -28,92 +28,92 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast to timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast to timestamp wholestage off 339 339 1 29.5 33.9 1.0X -cast to timestamp wholestage on 330 337 9 30.3 33.0 1.0X +cast to timestamp wholestage off 332 336 5 30.1 33.2 1.0X +cast to timestamp wholestage on 333 344 10 30.0 33.3 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz year of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -year of timestamp wholestage off 1226 1237 15 8.2 122.6 1.0X -year of timestamp wholestage on 1230 1242 9 8.1 123.0 1.0X +year of timestamp wholestage off 1246 1257 16 8.0 124.6 1.0X +year of timestamp wholestage on 1209 1218 12 8.3 120.9 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz quarter of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -quarter of timestamp wholestage off 1602 1606 7 6.2 160.2 1.0X -quarter of timestamp wholestage on 1511 1514 3 6.6 151.1 1.1X +quarter of timestamp wholestage off 1608 1616 11 6.2 160.8 1.0X +quarter of timestamp wholestage on 1540 1552 10 6.5 154.0 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz month of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -month of timestamp wholestage off 1227 1233 8 8.1 122.7 1.0X -month of timestamp wholestage on 1226 1242 28 8.2 122.6 1.0X +month of timestamp wholestage off 1242 1246 6 8.1 124.2 1.0X +month of timestamp wholestage on 1202 1212 11 8.3 120.2 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz weekofyear of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -weekofyear of timestamp wholestage off 1965 1980 20 5.1 196.5 1.0X -weekofyear of timestamp wholestage on 1816 1833 17 5.5 181.6 1.1X +weekofyear of timestamp wholestage off 1879 1885 8 5.3 187.9 1.0X +weekofyear of timestamp wholestage on 1832 1845 10 5.5 183.2 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz day of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -day of timestamp wholestage off 1229 1231 3 8.1 122.9 1.0X -day of timestamp wholestage on 1222 1230 10 8.2 122.2 1.0X +day of timestamp wholestage off 1236 1239 4 8.1 123.6 1.0X +day of timestamp wholestage on 1206 1219 17 8.3 120.6 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofyear of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofyear of timestamp wholestage off 1294 1297 4 7.7 129.4 1.0X -dayofyear of timestamp wholestage on 1257 1264 6 8.0 125.7 1.0X +dayofyear of timestamp wholestage off 1308 1309 1 7.6 130.8 1.0X +dayofyear of timestamp wholestage on 1239 1255 15 8.1 123.9 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofmonth of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofmonth of timestamp wholestage off 1247 1253 8 8.0 124.7 1.0X -dayofmonth of timestamp wholestage on 1225 1229 4 8.2 122.5 1.0X +dayofmonth of timestamp wholestage off 1259 1263 5 7.9 125.9 1.0X +dayofmonth of timestamp wholestage on 1201 1205 5 8.3 120.1 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz dayofweek of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -dayofweek of timestamp wholestage off 1416 1416 0 7.1 141.6 1.0X -dayofweek of timestamp wholestage on 1376 1382 8 7.3 137.6 1.0X +dayofweek of timestamp wholestage off 1406 1410 6 7.1 140.6 1.0X +dayofweek of timestamp wholestage on 1387 1402 15 7.2 138.7 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz weekday of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -weekday of timestamp wholestage off 1350 1351 1 7.4 135.0 1.0X -weekday of timestamp wholestage on 1308 1318 13 7.6 130.8 1.0X +weekday of timestamp wholestage off 1355 1367 18 7.4 135.5 1.0X +weekday of timestamp wholestage on 1311 1321 10 7.6 131.1 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz hour of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -hour of timestamp wholestage off 1004 1007 3 10.0 100.4 1.0X -hour of timestamp wholestage on 928 938 7 10.8 92.8 1.1X +hour of timestamp wholestage off 996 997 2 10.0 99.6 1.0X +hour of timestamp wholestage on 930 936 6 10.7 93.0 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz minute of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -minute of timestamp wholestage off 1009 1020 15 9.9 100.9 1.0X -minute of timestamp wholestage on 933 935 2 10.7 93.3 1.1X +minute of timestamp wholestage off 1005 1012 10 9.9 100.5 1.0X +minute of timestamp wholestage on 949 952 3 10.5 94.9 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz second of timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -second of timestamp wholestage off 995 995 0 10.0 99.5 1.0X -second of timestamp wholestage on 932 937 8 10.7 93.2 1.1X +second of timestamp wholestage off 1013 1014 1 9.9 101.3 1.0X +second of timestamp wholestage on 933 934 2 10.7 93.3 1.1X ================================================================================================ @@ -124,15 +124,15 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz current_date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -current_date wholestage off 292 316 34 34.2 29.2 1.0X -current_date wholestage on 270 276 6 37.0 27.0 1.1X +current_date wholestage off 291 293 2 34.3 29.1 1.0X +current_date wholestage on 280 284 3 35.7 28.0 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz current_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -current_timestamp wholestage off 313 328 20 31.9 31.3 1.0X -current_timestamp wholestage on 270 331 95 37.0 27.0 1.2X +current_timestamp wholestage off 311 324 18 32.1 31.1 1.0X +current_timestamp wholestage on 275 364 85 36.3 27.5 1.1X ================================================================================================ @@ -143,43 +143,43 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast to date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast to date wholestage off 1078 1081 3 9.3 107.8 1.0X -cast to date wholestage on 1035 1040 7 9.7 103.5 1.0X +cast to date wholestage off 1077 1079 3 9.3 107.7 1.0X +cast to date wholestage on 1018 1030 14 9.8 101.8 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz last_day: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -last_day wholestage off 1265 1266 3 7.9 126.5 1.0X -last_day wholestage on 1236 1246 10 8.1 123.6 1.0X +last_day wholestage off 1257 1260 4 8.0 125.7 1.0X +last_day wholestage on 1218 1227 14 8.2 121.8 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz next_day: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -next_day wholestage off 1118 1118 1 8.9 111.8 1.0X -next_day wholestage on 1085 1090 8 9.2 108.5 1.0X +next_day wholestage off 1140 1141 1 8.8 114.0 1.0X +next_day wholestage on 1067 1076 11 9.4 106.7 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_add: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_add wholestage off 1052 1054 4 9.5 105.2 1.0X -date_add wholestage on 1046 1051 6 9.6 104.6 1.0X +date_add wholestage off 1062 1064 3 9.4 106.2 1.0X +date_add wholestage on 1046 1055 11 9.6 104.6 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_sub: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_sub wholestage off 1075 1075 0 9.3 107.5 1.0X -date_sub wholestage on 1043 1046 3 9.6 104.3 1.0X +date_sub wholestage off 1082 1083 1 9.2 108.2 1.0X +date_sub wholestage on 1047 1056 12 9.6 104.7 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz add_months: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -add_months wholestage off 1409 1409 0 7.1 140.9 1.0X -add_months wholestage on 1448 1453 4 6.9 144.8 1.0X +add_months wholestage off 1430 1431 1 7.0 143.0 1.0X +add_months wholestage on 1441 1446 8 6.9 144.1 1.0X ================================================================================================ @@ -190,8 +190,8 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz format date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -format date wholestage off 5373 5390 24 1.9 537.3 1.0X -format date wholestage on 5337 5346 12 1.9 533.7 1.0X +format date wholestage off 5442 5549 150 1.8 544.2 1.0X +format date wholestage on 5529 5655 236 1.8 552.9 1.0X ================================================================================================ @@ -202,8 +202,8 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz from_unixtime: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -from_unixtime wholestage off 7302 7308 9 1.4 730.2 1.0X -from_unixtime wholestage on 7298 7319 16 1.4 729.8 1.0X +from_unixtime wholestage off 7416 7440 34 1.3 741.6 1.0X +from_unixtime wholestage on 7372 7391 17 1.4 737.2 1.0X ================================================================================================ @@ -214,15 +214,15 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz from_utc_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -from_utc_timestamp wholestage off 1322 1355 48 7.6 132.2 1.0X -from_utc_timestamp wholestage on 1290 1294 5 7.8 129.0 1.0X +from_utc_timestamp wholestage off 1316 1320 6 7.6 131.6 1.0X +from_utc_timestamp wholestage on 1268 1272 4 7.9 126.8 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_utc_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_utc_timestamp wholestage off 1692 1705 18 5.9 169.2 1.0X -to_utc_timestamp wholestage on 1653 1657 4 6.1 165.3 1.0X +to_utc_timestamp wholestage off 1653 1657 6 6.0 165.3 1.0X +to_utc_timestamp wholestage on 1594 1599 4 6.3 159.4 1.0X ================================================================================================ @@ -233,29 +233,29 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz cast interval: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -cast interval wholestage off 340 356 22 29.4 34.0 1.0X -cast interval wholestage on 293 296 2 34.1 29.3 1.2X +cast interval wholestage off 341 343 3 29.4 34.1 1.0X +cast interval wholestage on 279 282 1 35.8 27.9 1.2X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz datediff: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -datediff wholestage off 1843 1862 28 5.4 184.3 1.0X -datediff wholestage on 1766 1780 16 5.7 176.6 1.0X +datediff wholestage off 1862 1865 4 5.4 186.2 1.0X +datediff wholestage on 1769 1783 15 5.7 176.9 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz months_between: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -months_between wholestage off 5856 5858 2 1.7 585.6 1.0X -months_between wholestage on 5799 5815 14 1.7 579.9 1.0X +months_between wholestage off 5594 5599 7 1.8 559.4 1.0X +months_between wholestage on 5498 5508 11 1.8 549.8 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz window: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -window wholestage off 2017 2147 183 0.5 2017.4 1.0X -window wholestage on 47789 47910 91 0.0 47788.6 0.0X +window wholestage off 2044 2127 117 0.5 2044.3 1.0X +window wholestage on 48057 48109 54 0.0 48056.9 0.0X ================================================================================================ @@ -266,134 +266,134 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YEAR: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YEAR wholestage off 2689 2689 1 3.7 268.9 1.0X -date_trunc YEAR wholestage on 2655 2670 17 3.8 265.5 1.0X +date_trunc YEAR wholestage off 2540 2542 3 3.9 254.0 1.0X +date_trunc YEAR wholestage on 2486 2507 29 4.0 248.6 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YYYY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YYYY wholestage off 2698 2700 3 3.7 269.8 1.0X -date_trunc YYYY wholestage on 2654 2660 6 3.8 265.4 1.0X +date_trunc YYYY wholestage off 2542 2543 3 3.9 254.2 1.0X +date_trunc YYYY wholestage on 2491 2498 9 4.0 249.1 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc YY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc YY wholestage off 2692 2697 7 3.7 269.2 1.0X -date_trunc YY wholestage on 2653 2662 7 3.8 265.3 1.0X +date_trunc YY wholestage off 2545 2569 35 3.9 254.5 1.0X +date_trunc YY wholestage on 2487 2493 4 4.0 248.7 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MON: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MON wholestage off 2752 2756 6 3.6 275.2 1.0X -date_trunc MON wholestage on 2666 2675 15 3.8 266.6 1.0X +date_trunc MON wholestage off 2590 2590 1 3.9 259.0 1.0X +date_trunc MON wholestage on 2506 2520 12 4.0 250.6 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MONTH: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MONTH wholestage off 2743 2746 4 3.6 274.3 1.0X -date_trunc MONTH wholestage on 2667 2673 8 3.7 266.7 1.0X +date_trunc MONTH wholestage off 2595 2603 11 3.9 259.5 1.0X +date_trunc MONTH wholestage on 2505 2516 12 4.0 250.5 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MM: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MM wholestage off 2741 2741 1 3.6 274.1 1.0X -date_trunc MM wholestage on 2670 2678 7 3.7 267.0 1.0X +date_trunc MM wholestage off 2605 2612 10 3.8 260.5 1.0X +date_trunc MM wholestage on 2501 2515 11 4.0 250.1 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc DAY: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc DAY wholestage off 2338 2342 6 4.3 233.8 1.0X -date_trunc DAY wholestage on 2269 2277 7 4.4 226.9 1.0X +date_trunc DAY wholestage off 2225 2229 5 4.5 222.5 1.0X +date_trunc DAY wholestage on 2184 2196 9 4.6 218.4 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc DD: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc DD wholestage off 2324 2325 1 4.3 232.4 1.0X -date_trunc DD wholestage on 2270 2273 2 4.4 227.0 1.0X +date_trunc DD wholestage off 2232 2236 6 4.5 223.2 1.0X +date_trunc DD wholestage on 2183 2190 6 4.6 218.3 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc HOUR: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc HOUR wholestage off 2325 2326 1 4.3 232.5 1.0X -date_trunc HOUR wholestage on 2284 2295 8 4.4 228.4 1.0X +date_trunc HOUR wholestage off 2194 2199 7 4.6 219.4 1.0X +date_trunc HOUR wholestage on 2160 2166 5 4.6 216.0 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc MINUTE: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc MINUTE wholestage off 407 408 0 24.5 40.7 1.0X -date_trunc MINUTE wholestage on 382 386 3 26.1 38.2 1.1X +date_trunc MINUTE wholestage off 390 396 9 25.7 39.0 1.0X +date_trunc MINUTE wholestage on 331 337 7 30.2 33.1 1.2X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc SECOND: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc SECOND wholestage off 404 404 1 24.8 40.4 1.0X -date_trunc SECOND wholestage on 386 390 4 25.9 38.6 1.0X +date_trunc SECOND wholestage off 375 381 8 26.7 37.5 1.0X +date_trunc SECOND wholestage on 332 346 14 30.1 33.2 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc WEEK: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc WEEK wholestage off 2693 2694 2 3.7 269.3 1.0X -date_trunc WEEK wholestage on 2619 2629 10 3.8 261.9 1.0X +date_trunc WEEK wholestage off 2439 2443 6 4.1 243.9 1.0X +date_trunc WEEK wholestage on 2390 2409 32 4.2 239.0 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz date_trunc QUARTER: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -date_trunc QUARTER wholestage off 3454 3466 17 2.9 345.4 1.0X -date_trunc QUARTER wholestage on 3384 3404 24 3.0 338.4 1.0X +date_trunc QUARTER wholestage off 3290 3292 4 3.0 329.0 1.0X +date_trunc QUARTER wholestage on 3214 3218 3 3.1 321.4 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc year: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc year wholestage off 339 340 1 29.5 33.9 1.0X -trunc year wholestage on 337 347 9 29.7 33.7 1.0X +trunc year wholestage off 308 310 3 32.5 30.8 1.0X +trunc year wholestage on 289 293 6 34.7 28.9 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc yyyy: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc yyyy wholestage off 347 348 2 28.8 34.7 1.0X -trunc yyyy wholestage on 334 335 2 29.9 33.4 1.0X +trunc yyyy wholestage off 309 311 3 32.4 30.9 1.0X +trunc yyyy wholestage on 289 294 7 34.6 28.9 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc yy: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc yy wholestage off 339 346 11 29.5 33.9 1.0X -trunc yy wholestage on 333 338 5 30.0 33.3 1.0X +trunc yy wholestage off 311 311 0 32.2 31.1 1.0X +trunc yy wholestage on 288 294 7 34.7 28.8 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc mon: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc mon wholestage off 339 347 11 29.5 33.9 1.0X -trunc mon wholestage on 331 336 4 30.2 33.1 1.0X +trunc mon wholestage off 313 313 0 32.0 31.3 1.0X +trunc mon wholestage on 287 290 2 34.8 28.7 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc month: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc month wholestage off 341 344 3 29.3 34.1 1.0X -trunc month wholestage on 332 338 9 30.1 33.2 1.0X +trunc month wholestage off 310 310 0 32.3 31.0 1.0X +trunc month wholestage on 287 290 2 34.8 28.7 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz trunc mm: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -trunc mm wholestage off 337 338 1 29.6 33.7 1.0X -trunc mm wholestage on 332 336 5 30.1 33.2 1.0X +trunc mm wholestage off 311 312 1 32.1 31.1 1.0X +trunc mm wholestage on 287 296 9 34.8 28.7 1.1X ================================================================================================ @@ -404,36 +404,36 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to timestamp str: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to timestamp str wholestage off 184 187 4 5.4 183.9 1.0X -to timestamp str wholestage on 159 162 2 6.3 159.4 1.2X +to timestamp str wholestage off 169 170 1 5.9 168.9 1.0X +to timestamp str wholestage on 161 168 11 6.2 161.0 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_timestamp wholestage off 1683 1689 8 0.6 1683.3 1.0X -to_timestamp wholestage on 1722 1725 4 0.6 1721.6 1.0X +to_timestamp wholestage off 1360 1361 1 0.7 1359.6 1.0X +to_timestamp wholestage on 1362 1366 6 0.7 1362.0 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_unix_timestamp: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_unix_timestamp wholestage off 1733 1736 4 0.6 1733.1 1.0X -to_unix_timestamp wholestage on 1687 1690 4 0.6 1686.6 1.0X +to_unix_timestamp wholestage off 1343 1346 4 0.7 1342.6 1.0X +to_unix_timestamp wholestage on 1356 1359 2 0.7 1356.2 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to date str: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to date str wholestage off 218 220 4 4.6 217.6 1.0X -to date str wholestage on 213 215 2 4.7 212.6 1.0X +to date str wholestage off 227 230 4 4.4 227.0 1.0X +to date str wholestage on 299 302 3 3.3 299.0 0.8X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz to_date: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -to_date wholestage off 3697 3699 2 0.3 3697.2 1.0X -to_date wholestage on 3603 3624 15 0.3 3602.7 1.0X +to_date wholestage off 3413 3440 38 0.3 3413.0 1.0X +to_date wholestage on 3392 3402 12 0.3 3392.3 1.0X ================================================================================================ @@ -444,14 +444,14 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz To/from Java's date-time: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -From java.sql.Date 432 436 7 11.6 86.4 1.0X -From java.time.LocalDate 343 347 6 14.6 68.6 1.3X -Collect java.sql.Date 1888 2453 971 2.6 377.6 0.2X -Collect java.time.LocalDate 1779 1820 42 2.8 355.7 0.2X -From java.sql.Timestamp 375 384 9 13.3 75.0 1.2X -From java.time.Instant 317 326 8 15.8 63.5 1.4X -Collect longs 1338 1428 115 3.7 267.6 0.3X -Collect java.sql.Timestamp 1716 2014 281 2.9 343.1 0.3X -Collect java.time.Instant 1832 1970 122 2.7 366.5 0.2X +From java.sql.Date 410 415 7 12.2 82.0 1.0X +From java.time.LocalDate 332 333 1 15.1 66.4 1.2X +Collect java.sql.Date 1891 2542 829 2.6 378.1 0.2X +Collect java.time.LocalDate 1630 2138 441 3.1 326.0 0.3X +From java.sql.Timestamp 254 259 6 19.7 50.9 1.6X +From java.time.Instant 302 306 4 16.6 60.3 1.4X +Collect longs 1134 1265 117 4.4 226.8 0.4X +Collect java.sql.Timestamp 1441 1458 16 3.5 288.1 0.3X +Collect java.time.Instant 1680 1928 253 3.0 336.0 0.2X From ded04e2dd98c563ad8ce001a825af940358e256d Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Mon, 4 May 2020 11:34:34 +0300 Subject: [PATCH 06/11] Make lastSwitchJulianTs public --- .../org/apache/spark/sql/catalyst/util/RebaseDateTime.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala index c58cb6a0c8b88..2d0128e57a171 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala @@ -435,7 +435,7 @@ object RebaseDateTime { // The switch time point after which all diffs between Julian and Gregorian calendars // across all time zones are zero - private final val lastSwitchJulianTs: Long = getLastSwitchTs(julianGregRebaseMap) + final val lastSwitchJulianTs: Long = getLastSwitchTs(julianGregRebaseMap) /** * An optimized version of [[rebaseJulianToGregorianMicros(ZoneId, Long)]]. This method leverages From 0c44097b899f4ed0cffd6a01e34568c1d998ccc2 Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Mon, 4 May 2020 09:09:34 +0000 Subject: [PATCH 07/11] Re-gen DateTimeRebaseBenchmark-jdk11-results.txt --- .../DateTimeRebaseBenchmark-jdk11-results.txt | 88 +++++++++---------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt b/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt index 03e0d7b8bc575..5def02e773610 100644 --- a/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt +++ b/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt @@ -6,49 +6,49 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save dates to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 20073 20073 0 5.0 200.7 1.0X -before 1582, noop 10985 10985 0 9.1 109.9 1.8X -after 1582, rebase off 32245 32245 0 3.1 322.4 0.6X -after 1582, rebase on 31434 31434 0 3.2 314.3 0.6X -before 1582, rebase off 21590 21590 0 4.6 215.9 0.9X -before 1582, rebase on 22963 22963 0 4.4 229.6 0.9X +after 1582, noop 19167 19167 0 5.2 191.7 1.0X +before 1582, noop 11034 11034 0 9.1 110.3 1.7X +after 1582, rebase off 34338 34338 0 2.9 343.4 0.6X +after 1582, rebase on 33824 33824 0 3.0 338.2 0.6X +before 1582, rebase off 21892 21892 0 4.6 218.9 0.9X +before 1582, rebase on 23184 23184 0 4.3 231.8 0.8X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load dates from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off, rebase off 12815 12858 40 7.8 128.1 1.0X -after 1582, vec off, rebase on 13030 13167 148 7.7 130.3 1.0X -after 1582, vec on, rebase off 3705 3712 6 27.0 37.1 3.5X -after 1582, vec on, rebase on 3788 3791 3 26.4 37.9 3.4X -before 1582, vec off, rebase off 12873 12943 61 7.8 128.7 1.0X -before 1582, vec off, rebase on 14072 14165 80 7.1 140.7 0.9X -before 1582, vec on, rebase off 3694 3708 15 27.1 36.9 3.5X -before 1582, vec on, rebase on 4403 4484 81 22.7 44.0 2.9X +after 1582, vec off, rebase off 12771 12971 179 7.8 127.7 1.0X +after 1582, vec off, rebase on 13057 13139 78 7.7 130.6 1.0X +after 1582, vec on, rebase off 3709 3750 70 27.0 37.1 3.4X +after 1582, vec on, rebase on 3718 3750 32 26.9 37.2 3.4X +before 1582, vec off, rebase off 12975 13025 85 7.7 129.8 1.0X +before 1582, vec off, rebase on 14098 14190 92 7.1 141.0 0.9X +before 1582, vec on, rebase off 3655 3673 16 27.4 36.5 3.5X +before 1582, vec on, rebase on 4369 4424 53 22.9 43.7 2.9X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save timestamps to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 3032 3032 0 33.0 30.3 1.0X -before 1900, noop 3043 3043 0 32.9 30.4 1.0X -after 1900, rebase off 15634 15634 0 6.4 156.3 0.2X -after 1900, rebase on 18233 18233 0 5.5 182.3 0.2X -before 1900, rebase off 15820 15820 0 6.3 158.2 0.2X -before 1900, rebase on 19921 19921 0 5.0 199.2 0.2X +after 1900, noop 2734 2734 0 36.6 27.3 1.0X +before 1900, noop 2767 2767 0 36.1 27.7 1.0X +after 1900, rebase off 15466 15466 0 6.5 154.7 0.2X +after 1900, rebase on 15842 15842 0 6.3 158.4 0.2X +before 1900, rebase off 15668 15668 0 6.4 156.7 0.2X +before 1900, rebase on 18989 18989 0 5.3 189.9 0.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load timestamps from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off, rebase off 14987 15008 18 6.7 149.9 1.0X -after 1900, vec off, rebase on 17500 17628 210 5.7 175.0 0.9X -after 1900, vec on, rebase off 5030 5036 7 19.9 50.3 3.0X -after 1900, vec on, rebase on 5066 5109 44 19.7 50.7 3.0X -before 1900, vec off, rebase off 15094 15213 121 6.6 150.9 1.0X -before 1900, vec off, rebase on 18098 18175 101 5.5 181.0 0.8X -before 1900, vec on, rebase off 5008 5012 4 20.0 50.1 3.0X -before 1900, vec on, rebase on 8803 8848 55 11.4 88.0 1.7X +after 1900, vec off, rebase off 15218 15354 147 6.6 152.2 1.0X +after 1900, vec off, rebase on 15251 15371 115 6.6 152.5 1.0X +after 1900, vec on, rebase off 4883 4922 35 20.5 48.8 3.1X +after 1900, vec on, rebase on 4909 4941 29 20.4 49.1 3.1X +before 1900, vec off, rebase off 15171 15250 95 6.6 151.7 1.0X +before 1900, vec off, rebase on 18545 18607 54 5.4 185.4 0.8X +before 1900, vec on, rebase off 4806 4902 95 20.8 48.1 3.2X +before 1900, vec on, rebase on 8352 8381 35 12.0 83.5 1.8X ================================================================================================ @@ -59,36 +59,36 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save dates to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 19593 19593 0 5.1 195.9 1.0X -before 1582, noop 10581 10581 0 9.5 105.8 1.9X -after 1582 27843 27843 0 3.6 278.4 0.7X -before 1582 19435 19435 0 5.1 194.4 1.0X +after 1582, noop 19013 19013 0 5.3 190.1 1.0X +before 1582, noop 10949 10949 0 9.1 109.5 1.7X +after 1582 27080 27080 0 3.7 270.8 0.7X +before 1582 19705 19705 0 5.1 197.1 1.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load dates from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off 10395 10507 119 9.6 103.9 1.0X -after 1582, vec on 3921 3945 22 25.5 39.2 2.7X -before 1582, vec off 10762 10860 127 9.3 107.6 1.0X -before 1582, vec on 4194 4226 41 23.8 41.9 2.5X +after 1582, vec off 10782 10795 11 9.3 107.8 1.0X +after 1582, vec on 3849 3885 54 26.0 38.5 2.8X +before 1582, vec off 11328 11330 1 8.8 113.3 1.0X +before 1582, vec on 4203 4229 36 23.8 42.0 2.6X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save timestamps to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 3003 3003 0 33.3 30.0 1.0X -before 1900, noop 3016 3016 0 33.2 30.2 1.0X -after 1900 21804 21804 0 4.6 218.0 0.1X -before 1900 23920 23920 0 4.2 239.2 0.1X +after 1900, noop 2758 2758 0 36.3 27.6 1.0X +before 1900, noop 2753 2753 0 36.3 27.5 1.0X +after 1900 17685 17685 0 5.7 176.9 0.2X +before 1900 20015 20015 0 5.0 200.2 0.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load timestamps from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off 14112 14128 17 7.1 141.1 1.0X -after 1900, vec on 7347 7459 134 13.6 73.5 1.9X -before 1900, vec off 15170 15192 27 6.6 151.7 0.9X -before 1900, vec on 8280 8312 52 12.1 82.8 1.7X +after 1900, vec off 11575 11594 32 8.6 115.7 1.0X +after 1900, vec on 5603 5640 40 17.8 56.0 2.1X +before 1900, vec off 14486 14609 115 6.9 144.9 0.8X +before 1900, vec on 8362 8373 12 12.0 83.6 1.4X From d31ec0f44ccc74151a312a0e05f0294e8a9481f9 Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Mon, 4 May 2020 10:01:50 +0000 Subject: [PATCH 08/11] Re-gen DateTimeRebaseBenchmark-results.txt --- .../DateTimeRebaseBenchmark-results.txt | 88 +++++++++---------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt b/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt index a32a1ad8af89e..85bb7ead35ad4 100644 --- a/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt +++ b/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt @@ -6,49 +6,49 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save dates to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 23088 23088 0 4.3 230.9 1.0X -before 1582, noop 10782 10782 0 9.3 107.8 2.1X -after 1582, rebase off 34821 34821 0 2.9 348.2 0.7X -after 1582, rebase on 35040 35040 0 2.9 350.4 0.7X -before 1582, rebase off 22151 22151 0 4.5 221.5 1.0X -before 1582, rebase on 24677 24677 0 4.1 246.8 0.9X +after 1582, noop 22991 22991 0 4.3 229.9 1.0X +before 1582, noop 10799 10799 0 9.3 108.0 2.1X +after 1582, rebase off 34990 34990 0 2.9 349.9 0.7X +after 1582, rebase on 35714 35714 0 2.8 357.1 0.6X +before 1582, rebase off 22621 22621 0 4.4 226.2 1.0X +before 1582, rebase on 24067 24067 0 4.2 240.7 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load dates from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off, rebase off 13559 13650 79 7.4 135.6 1.0X -after 1582, vec off, rebase on 12942 12973 28 7.7 129.4 1.0X -after 1582, vec on, rebase off 3657 3689 29 27.3 36.6 3.7X -after 1582, vec on, rebase on 3859 3902 53 25.9 38.6 3.5X -before 1582, vec off, rebase off 12588 12607 17 7.9 125.9 1.1X -before 1582, vec off, rebase on 13396 13420 25 7.5 134.0 1.0X -before 1582, vec on, rebase off 3631 3650 19 27.5 36.3 3.7X -before 1582, vec on, rebase on 4706 4755 77 21.3 47.1 2.9X +after 1582, vec off, rebase off 12556 12639 72 8.0 125.6 1.0X +after 1582, vec off, rebase on 13185 13266 118 7.6 131.8 1.0X +after 1582, vec on, rebase off 3712 3768 82 26.9 37.1 3.4X +after 1582, vec on, rebase on 3865 3940 111 25.9 38.7 3.2X +before 1582, vec off, rebase off 12882 12915 49 7.8 128.8 1.0X +before 1582, vec off, rebase on 13717 13797 107 7.3 137.2 0.9X +before 1582, vec on, rebase off 3716 3726 14 26.9 37.2 3.4X +before 1582, vec on, rebase on 4868 4876 7 20.5 48.7 2.6X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save timestamps to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2681 2681 0 37.3 26.8 1.0X -before 1900, noop 3051 3051 0 32.8 30.5 0.9X -after 1900, rebase off 16901 16901 0 5.9 169.0 0.2X -after 1900, rebase on 19725 19725 0 5.1 197.3 0.1X -before 1900, rebase off 16900 16900 0 5.9 169.0 0.2X -before 1900, rebase on 20381 20381 0 4.9 203.8 0.1X +after 1900, noop 2842 2842 0 35.2 28.4 1.0X +before 1900, noop 2841 2841 0 35.2 28.4 1.0X +after 1900, rebase off 16438 16438 0 6.1 164.4 0.2X +after 1900, rebase on 16803 16803 0 6.0 168.0 0.2X +before 1900, rebase off 16485 16485 0 6.1 164.9 0.2X +before 1900, rebase on 20317 20317 0 4.9 203.2 0.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load timestamps from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off, rebase off 15236 15291 62 6.6 152.4 1.0X -after 1900, vec off, rebase on 17832 18047 187 5.6 178.3 0.9X -after 1900, vec on, rebase off 4875 4901 31 20.5 48.7 3.1X -after 1900, vec on, rebase on 5354 5386 37 18.7 53.5 2.8X -before 1900, vec off, rebase off 15229 15338 108 6.6 152.3 1.0X -before 1900, vec off, rebase on 18626 18668 44 5.4 186.3 0.8X -before 1900, vec on, rebase off 4968 4975 6 20.1 49.7 3.1X -before 1900, vec on, rebase on 9913 9932 16 10.1 99.1 1.5X +after 1900, vec off, rebase off 15051 15096 39 6.6 150.5 1.0X +after 1900, vec off, rebase on 15149 15315 149 6.6 151.5 1.0X +after 1900, vec on, rebase off 4968 4991 24 20.1 49.7 3.0X +after 1900, vec on, rebase on 5427 5466 42 18.4 54.3 2.8X +before 1900, vec off, rebase off 15117 15168 47 6.6 151.2 1.0X +before 1900, vec off, rebase on 18814 18841 24 5.3 188.1 0.8X +before 1900, vec on, rebase off 5015 5032 17 19.9 50.1 3.0X +before 1900, vec on, rebase on 10093 10132 59 9.9 100.9 1.5X ================================================================================================ @@ -59,36 +59,36 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save dates to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 22942 22942 0 4.4 229.4 1.0X -before 1582, noop 11035 11035 0 9.1 110.4 2.1X -after 1582 31341 31341 0 3.2 313.4 0.7X -before 1582 20376 20376 0 4.9 203.8 1.1X +after 1582, noop 22866 22866 0 4.4 228.7 1.0X +before 1582, noop 11019 11019 0 9.1 110.2 2.1X +after 1582 31405 31405 0 3.2 314.1 0.7X +before 1582 20604 20604 0 4.9 206.0 1.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load dates from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off 10361 10378 29 9.7 103.6 1.0X -after 1582, vec on 3820 3828 11 26.2 38.2 2.7X -before 1582, vec off 10709 10720 13 9.3 107.1 1.0X -before 1582, vec on 4136 4153 15 24.2 41.4 2.5X +after 1582, vec off 10870 10872 2 9.2 108.7 1.0X +after 1582, vec on 3807 3835 38 26.3 38.1 2.9X +before 1582, vec off 11369 11380 12 8.8 113.7 1.0X +before 1582, vec on 4223 4276 60 23.7 42.2 2.6X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save timestamps to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2888 2888 0 34.6 28.9 1.0X -before 1900, noop 2823 2823 0 35.4 28.2 1.0X -after 1900 19790 19790 0 5.1 197.9 0.1X -before 1900 20774 20774 0 4.8 207.7 0.1X +after 1900, noop 2901 2901 0 34.5 29.0 1.0X +before 1900, noop 2984 2984 0 33.5 29.8 1.0X +after 1900 19451 19451 0 5.1 194.5 0.1X +before 1900 23156 23156 0 4.3 231.6 0.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load timestamps from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off 14649 14687 38 6.8 146.5 1.0X -after 1900, vec on 7850 7937 130 12.7 78.5 1.9X -before 1900, vec off 15354 15417 108 6.5 153.5 1.0X -before 1900, vec on 8382 8408 22 11.9 83.8 1.7X +after 1900, vec off 12363 12387 37 8.1 123.6 1.0X +after 1900, vec on 5326 5334 13 18.8 53.3 2.3X +before 1900, vec off 15831 15901 66 6.3 158.3 0.8X +before 1900, vec on 8419 8446 42 11.9 84.2 1.5X From eaca6a86eb182fabeeb5db487724646ab631568c Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Tue, 5 May 2020 09:30:10 +0300 Subject: [PATCH 09/11] Improve error message in getLastSwitchTs() --- .../org/apache/spark/sql/catalyst/util/RebaseDateTime.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala index 2d0128e57a171..a1b87e8e02351 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/RebaseDateTime.scala @@ -289,8 +289,8 @@ object RebaseDateTime { private def getLastSwitchTs(rebaseMap: AnyRefMap[String, RebaseInfo]): Long = { val latestTs = rebaseMap.values.map(_.switches.last).max require(rebaseMap.values.forall(_.diffs.last == 0), - s"Differences between Julian and Gregorian calendar after $latestTs are expected " + - "to be zero for available time zones.") + s"Differences between Julian and Gregorian calendar after ${microsToInstant(latestTs)} " + + "are expected to be zero for all available time zones.") latestTs } // The switch time point after which all diffs between Gregorian and Julian calendars From 7ef27f8d3d16d7c6704506c90407715c47f27536 Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Tue, 5 May 2020 07:34:37 +0000 Subject: [PATCH 10/11] Re-gen DateTimeRebaseBenchmark-jdk11-results.txt --- .../DateTimeRebaseBenchmark-jdk11-results.txt | 142 +++++++++--------- 1 file changed, 71 insertions(+), 71 deletions(-) diff --git a/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt b/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt index 8c07bdb245b48..5d107c1e50fd8 100644 --- a/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt +++ b/sql/core/benchmarks/DateTimeRebaseBenchmark-jdk11-results.txt @@ -6,97 +6,97 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save DATE to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 19806 19806 0 5.0 198.1 1.0X -before 1582, noop 10689 10689 0 9.4 106.9 1.9X -after 1582, rebase off 31053 31053 0 3.2 310.5 0.6X -after 1582, rebase on 32316 32316 0 3.1 323.2 0.6X -before 1582, rebase off 21765 21765 0 4.6 217.6 0.9X -before 1582, rebase on 23011 23011 0 4.3 230.1 0.9X +after 1582, noop 20802 20802 0 4.8 208.0 1.0X +before 1582, noop 10728 10728 0 9.3 107.3 1.9X +after 1582, rebase off 32924 32924 0 3.0 329.2 0.6X +after 1582, rebase on 32627 32627 0 3.1 326.3 0.6X +before 1582, rebase off 21576 21576 0 4.6 215.8 1.0X +before 1582, rebase on 23115 23115 0 4.3 231.2 0.9X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load DATE from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off, rebase off 12834 12921 140 7.8 128.3 1.0X -after 1582, vec off, rebase on 13031 13071 38 7.7 130.3 1.0X -after 1582, vec on, rebase off 3642 3679 60 27.5 36.4 3.5X -after 1582, vec on, rebase on 3747 3789 49 26.7 37.5 3.4X -before 1582, vec off, rebase off 13009 13061 72 7.7 130.1 1.0X -before 1582, vec off, rebase on 13928 13945 16 7.2 139.3 0.9X -before 1582, vec on, rebase off 3656 3665 13 27.4 36.6 3.5X -before 1582, vec on, rebase on 4361 4392 48 22.9 43.6 2.9X +after 1582, vec off, rebase off 12880 12984 178 7.8 128.8 1.0X +after 1582, vec off, rebase on 13118 13255 174 7.6 131.2 1.0X +after 1582, vec on, rebase off 3645 3698 76 27.4 36.4 3.5X +after 1582, vec on, rebase on 3709 3727 15 27.0 37.1 3.5X +before 1582, vec off, rebase off 13014 13051 36 7.7 130.1 1.0X +before 1582, vec off, rebase on 14195 14242 48 7.0 142.0 0.9X +before 1582, vec on, rebase off 3680 3773 92 27.2 36.8 3.5X +before 1582, vec on, rebase on 4310 4381 87 23.2 43.1 3.0X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save TIMESTAMP_INT96 to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2986 2986 0 33.5 29.9 1.0X +after 1900, noop 3026 3026 0 33.1 30.3 1.0X before 1900, noop 2995 2995 0 33.4 30.0 1.0X -after 1900, rebase off 31493 31493 0 3.2 314.9 0.1X -after 1900, rebase on 31052 31052 0 3.2 310.5 0.1X -before 1900, rebase off 32102 32102 0 3.1 321.0 0.1X -before 1900, rebase on 32094 32094 0 3.1 320.9 0.1X +after 1900, rebase off 24294 24294 0 4.1 242.9 0.1X +after 1900, rebase on 24480 24480 0 4.1 244.8 0.1X +before 1900, rebase off 31120 31120 0 3.2 311.2 0.1X +before 1900, rebase on 31201 31201 0 3.2 312.0 0.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load TIMESTAMP_INT96 from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off, rebase off 20404 20422 29 4.9 204.0 1.0X -after 1900, vec off, rebase on 20198 20325 116 5.0 202.0 1.0X -after 1900, vec on, rebase off 12022 12051 39 8.3 120.2 1.7X -after 1900, vec on, rebase on 12019 12042 40 8.3 120.2 1.7X -before 1900, vec off, rebase off 21220 21263 38 4.7 212.2 1.0X -before 1900, vec off, rebase on 21172 21236 91 4.7 211.7 1.0X -before 1900, vec on, rebase off 12743 12792 46 7.8 127.4 1.6X -before 1900, vec on, rebase on 12665 12761 83 7.9 126.6 1.6X +after 1900, vec off, rebase off 18283 18309 39 5.5 182.8 1.0X +after 1900, vec off, rebase on 18235 18269 53 5.5 182.4 1.0X +after 1900, vec on, rebase off 9563 9589 27 10.5 95.6 1.9X +after 1900, vec on, rebase on 9463 9554 81 10.6 94.6 1.9X +before 1900, vec off, rebase off 21377 21469 118 4.7 213.8 0.9X +before 1900, vec off, rebase on 21265 21422 156 4.7 212.7 0.9X +before 1900, vec on, rebase off 12481 12524 46 8.0 124.8 1.5X +before 1900, vec on, rebase on 12360 12482 105 8.1 123.6 1.5X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save TIMESTAMP_MICROS to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 3047 3047 0 32.8 30.5 1.0X -before 1900, noop 2973 2973 0 33.6 29.7 1.0X -after 1900, rebase off 16269 16269 0 6.1 162.7 0.2X -after 1900, rebase on 18375 18375 0 5.4 183.7 0.2X -before 1900, rebase off 16875 16875 0 5.9 168.7 0.2X -before 1900, rebase on 19574 19574 0 5.1 195.7 0.2X +after 1900, noop 2984 2984 0 33.5 29.8 1.0X +before 1900, noop 3003 3003 0 33.3 30.0 1.0X +after 1900, rebase off 15814 15814 0 6.3 158.1 0.2X +after 1900, rebase on 16250 16250 0 6.2 162.5 0.2X +before 1900, rebase off 16026 16026 0 6.2 160.3 0.2X +before 1900, rebase on 19735 19735 0 5.1 197.3 0.2X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load TIMESTAMP_MICROS from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off, rebase off 15571 15671 95 6.4 155.7 1.0X -after 1900, vec off, rebase on 18076 18139 92 5.5 180.8 0.9X -after 1900, vec on, rebase off 4853 4888 38 20.6 48.5 3.2X -after 1900, vec on, rebase on 4924 4977 45 20.3 49.2 3.2X -before 1900, vec off, rebase off 15446 15485 34 6.5 154.5 1.0X -before 1900, vec off, rebase on 18743 18871 192 5.3 187.4 0.8X -before 1900, vec on, rebase off 4931 4944 20 20.3 49.3 3.2X -before 1900, vec on, rebase on 8217 8238 19 12.2 82.2 1.9X +after 1900, vec off, rebase off 15292 15351 57 6.5 152.9 1.0X +after 1900, vec off, rebase on 15753 15886 173 6.3 157.5 1.0X +after 1900, vec on, rebase off 4879 4923 52 20.5 48.8 3.1X +after 1900, vec on, rebase on 5018 5038 18 19.9 50.2 3.0X +before 1900, vec off, rebase off 15257 15311 53 6.6 152.6 1.0X +before 1900, vec off, rebase on 18459 18537 90 5.4 184.6 0.8X +before 1900, vec on, rebase off 4929 4946 15 20.3 49.3 3.1X +before 1900, vec on, rebase on 8254 8339 93 12.1 82.5 1.9X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save TIMESTAMP_MILLIS to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2977 2977 0 33.6 29.8 1.0X -before 1900, noop 2981 2981 0 33.5 29.8 1.0X -after 1900, rebase off 15336 15336 0 6.5 153.4 0.2X -after 1900, rebase on 17932 17932 0 5.6 179.3 0.2X -before 1900, rebase off 15507 15507 0 6.4 155.1 0.2X -before 1900, rebase on 19280 19280 0 5.2 192.8 0.2X +after 1900, noop 2987 2987 0 33.5 29.9 1.0X +before 1900, noop 3002 3002 0 33.3 30.0 1.0X +after 1900, rebase off 15215 15215 0 6.6 152.1 0.2X +after 1900, rebase on 15577 15577 0 6.4 155.8 0.2X +before 1900, rebase off 15505 15505 0 6.4 155.1 0.2X +before 1900, rebase on 19143 19143 0 5.2 191.4 0.2X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load TIMESTAMP_MILLIS from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off, rebase off 15690 15838 159 6.4 156.9 1.0X -after 1900, vec off, rebase on 18019 18185 194 5.5 180.2 0.9X -after 1900, vec on, rebase off 6021 6038 16 16.6 60.2 2.6X -after 1900, vec on, rebase on 8351 8383 38 12.0 83.5 1.9X -before 1900, vec off, rebase off 15863 15909 46 6.3 158.6 1.0X -before 1900, vec off, rebase on 18810 18955 179 5.3 188.1 0.8X -before 1900, vec on, rebase off 6055 6095 41 16.5 60.5 2.6X -before 1900, vec on, rebase on 8955 9007 50 11.2 89.5 1.8X +after 1900, vec off, rebase off 15330 15436 113 6.5 153.3 1.0X +after 1900, vec off, rebase on 15515 15549 30 6.4 155.1 1.0X +after 1900, vec on, rebase off 6056 6074 19 16.5 60.6 2.5X +after 1900, vec on, rebase on 6376 6390 14 15.7 63.8 2.4X +before 1900, vec off, rebase off 15490 15523 36 6.5 154.9 1.0X +before 1900, vec off, rebase on 18613 18685 118 5.4 186.1 0.8X +before 1900, vec on, rebase off 6065 6109 41 16.5 60.6 2.5X +before 1900, vec on, rebase on 9052 9082 32 11.0 90.5 1.7X ================================================================================================ @@ -107,36 +107,36 @@ OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-106 Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save DATE to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 19561 19561 0 5.1 195.6 1.0X -before 1582, noop 10676 10676 0 9.4 106.8 1.8X -after 1582 27414 27414 0 3.6 274.1 0.7X -before 1582 19257 19257 0 5.2 192.6 1.0X +after 1582, noop 20653 20653 0 4.8 206.5 1.0X +before 1582, noop 10707 10707 0 9.3 107.1 1.9X +after 1582 28288 28288 0 3.5 282.9 0.7X +before 1582 19196 19196 0 5.2 192.0 1.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load DATE from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off 11016 11051 42 9.1 110.2 1.0X -after 1582, vec on 3960 3971 16 25.3 39.6 2.8X -before 1582, vec off 11442 11466 23 8.7 114.4 1.0X -before 1582, vec on 4269 4288 20 23.4 42.7 2.6X +after 1582, vec off 10596 10621 37 9.4 106.0 1.0X +after 1582, vec on 3886 3938 61 25.7 38.9 2.7X +before 1582, vec off 10955 10984 26 9.1 109.6 1.0X +before 1582, vec on 4236 4258 24 23.6 42.4 2.5X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save TIMESTAMP to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2980 2980 0 33.6 29.8 1.0X -before 1900, noop 2972 2972 0 33.6 29.7 1.0X -after 1900 20638 20638 0 4.8 206.4 0.1X -before 1900 22420 22420 0 4.5 224.2 0.1X +after 1900, noop 2988 2988 0 33.5 29.9 1.0X +before 1900, noop 3007 3007 0 33.3 30.1 1.0X +after 1900 18082 18082 0 5.5 180.8 0.2X +before 1900 22669 22669 0 4.4 226.7 0.1X OpenJDK 64-Bit Server VM 11.0.7+10-post-Ubuntu-2ubuntu218.04 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load TIMESTAMP from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off 14368 14449 137 7.0 143.7 1.0X -after 1900, vec on 7233 7324 146 13.8 72.3 2.0X -before 1900, vec off 14936 14951 17 6.7 149.4 1.0X -before 1900, vec on 7767 7770 3 12.9 77.7 1.8X +after 1900, vec off 12029 12035 9 8.3 120.3 1.0X +after 1900, vec on 5194 5197 3 19.3 51.9 2.3X +before 1900, vec off 14853 14875 23 6.7 148.5 0.8X +before 1900, vec on 7797 7836 60 12.8 78.0 1.5X From 2badf88a12f9aa0aecdeb0e4ec645843bc99347d Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Tue, 5 May 2020 09:19:30 +0000 Subject: [PATCH 11/11] Re-gen DateTimeRebaseBenchmark-results.txt --- .../DateTimeRebaseBenchmark-results.txt | 144 +++++++++--------- 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt b/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt index 3ce5b36c35315..f2af3cc000f04 100644 --- a/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt +++ b/sql/core/benchmarks/DateTimeRebaseBenchmark-results.txt @@ -6,97 +6,97 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save DATE to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 23101 23101 0 4.3 231.0 1.0X -before 1582, noop 10164 10164 0 9.8 101.6 2.3X -after 1582, rebase off 37390 37390 0 2.7 373.9 0.6X -after 1582, rebase on 36108 36108 0 2.8 361.1 0.6X -before 1582, rebase off 22982 22982 0 4.4 229.8 1.0X -before 1582, rebase on 23899 23899 0 4.2 239.0 1.0X +after 1582, noop 23567 23567 0 4.2 235.7 1.0X +before 1582, noop 10570 10570 0 9.5 105.7 2.2X +after 1582, rebase off 35335 35335 0 2.8 353.3 0.7X +after 1582, rebase on 35645 35645 0 2.8 356.5 0.7X +before 1582, rebase off 21824 21824 0 4.6 218.2 1.1X +before 1582, rebase on 22532 22532 0 4.4 225.3 1.0X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load DATE from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off, rebase off 12544 12579 41 8.0 125.4 1.0X -after 1582, vec off, rebase on 13127 13238 97 7.6 131.3 1.0X -after 1582, vec on, rebase off 3705 3715 8 27.0 37.1 3.4X -after 1582, vec on, rebase on 3866 3884 17 25.9 38.7 3.2X -before 1582, vec off, rebase off 12855 12862 11 7.8 128.6 1.0X -before 1582, vec off, rebase on 13723 13758 31 7.3 137.2 0.9X -before 1582, vec on, rebase off 3706 3724 25 27.0 37.1 3.4X -before 1582, vec on, rebase on 4872 4932 71 20.5 48.7 2.6X +after 1582, vec off, rebase off 13194 13266 81 7.6 131.9 1.0X +after 1582, vec off, rebase on 13402 13466 89 7.5 134.0 1.0X +after 1582, vec on, rebase off 3627 3657 29 27.6 36.3 3.6X +after 1582, vec on, rebase on 3818 3839 26 26.2 38.2 3.5X +before 1582, vec off, rebase off 13075 13146 115 7.6 130.7 1.0X +before 1582, vec off, rebase on 13794 13804 13 7.2 137.9 1.0X +before 1582, vec on, rebase off 3655 3675 21 27.4 36.6 3.6X +before 1582, vec on, rebase on 4579 4634 72 21.8 45.8 2.9X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save TIMESTAMP_INT96 to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2862 2862 0 34.9 28.6 1.0X -before 1900, noop 2838 2838 0 35.2 28.4 1.0X -after 1900, rebase off 33249 33249 0 3.0 332.5 0.1X -after 1900, rebase on 33912 33912 0 2.9 339.1 0.1X -before 1900, rebase off 36083 36083 0 2.8 360.8 0.1X -before 1900, rebase on 35901 35901 0 2.8 359.0 0.1X +after 1900, noop 2671 2671 0 37.4 26.7 1.0X +before 1900, noop 2685 2685 0 37.2 26.8 1.0X +after 1900, rebase off 23899 23899 0 4.2 239.0 0.1X +after 1900, rebase on 24030 24030 0 4.2 240.3 0.1X +before 1900, rebase off 30178 30178 0 3.3 301.8 0.1X +before 1900, rebase on 30127 30127 0 3.3 301.3 0.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load TIMESTAMP_INT96 from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off, rebase off 19452 19496 38 5.1 194.5 1.0X -after 1900, vec off, rebase on 19505 19579 65 5.1 195.0 1.0X -after 1900, vec on, rebase off 11612 11703 86 8.6 116.1 1.7X -after 1900, vec on, rebase on 11533 11642 96 8.7 115.3 1.7X -before 1900, vec off, rebase off 20312 20368 88 4.9 203.1 1.0X -before 1900, vec off, rebase on 20217 20284 63 4.9 202.2 1.0X -before 1900, vec on, rebase off 12301 12372 64 8.1 123.0 1.6X -before 1900, vec on, rebase on 12253 12354 88 8.2 122.5 1.6X +after 1900, vec off, rebase off 16613 16685 75 6.0 166.1 1.0X +after 1900, vec off, rebase on 16487 16541 47 6.1 164.9 1.0X +after 1900, vec on, rebase off 8840 8870 49 11.3 88.4 1.9X +after 1900, vec on, rebase on 8795 8813 20 11.4 87.9 1.9X +before 1900, vec off, rebase off 20400 20441 62 4.9 204.0 0.8X +before 1900, vec off, rebase on 20430 20481 60 4.9 204.3 0.8X +before 1900, vec on, rebase off 12211 12290 73 8.2 122.1 1.4X +before 1900, vec on, rebase on 12231 12321 95 8.2 122.3 1.4X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save TIMESTAMP_MICROS to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2924 2924 0 34.2 29.2 1.0X -before 1900, noop 2942 2942 0 34.0 29.4 1.0X -after 1900, rebase off 17323 17323 0 5.8 173.2 0.2X -after 1900, rebase on 20229 20229 0 4.9 202.3 0.1X -before 1900, rebase off 17166 17166 0 5.8 171.7 0.2X -before 1900, rebase on 21740 21740 0 4.6 217.4 0.1X +after 1900, noop 2836 2836 0 35.3 28.4 1.0X +before 1900, noop 2812 2812 0 35.6 28.1 1.0X +after 1900, rebase off 15976 15976 0 6.3 159.8 0.2X +after 1900, rebase on 16197 16197 0 6.2 162.0 0.2X +before 1900, rebase off 16140 16140 0 6.2 161.4 0.2X +before 1900, rebase on 20410 20410 0 4.9 204.1 0.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load TIMESTAMP_MICROS from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off, rebase off 15031 15079 74 6.7 150.3 1.0X -after 1900, vec off, rebase on 18414 18429 18 5.4 184.1 0.8X -after 1900, vec on, rebase off 5020 5031 10 19.9 50.2 3.0X -after 1900, vec on, rebase on 5489 5527 35 18.2 54.9 2.7X -before 1900, vec off, rebase off 15062 15096 39 6.6 150.6 1.0X -before 1900, vec off, rebase on 19088 19137 64 5.2 190.9 0.8X -before 1900, vec on, rebase off 5021 5025 4 19.9 50.2 3.0X -before 1900, vec on, rebase on 9880 9913 47 10.1 98.8 1.5X +after 1900, vec off, rebase off 15297 15324 40 6.5 153.0 1.0X +after 1900, vec off, rebase on 15771 15832 59 6.3 157.7 1.0X +after 1900, vec on, rebase off 4922 4949 32 20.3 49.2 3.1X +after 1900, vec on, rebase on 5392 5411 17 18.5 53.9 2.8X +before 1900, vec off, rebase off 15227 15385 141 6.6 152.3 1.0X +before 1900, vec off, rebase on 19611 19658 41 5.1 196.1 0.8X +before 1900, vec on, rebase off 4965 5013 54 20.1 49.6 3.1X +before 1900, vec on, rebase on 9847 9873 43 10.2 98.5 1.6X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save TIMESTAMP_MILLIS to parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2951 2951 0 33.9 29.5 1.0X -before 1900, noop 2999 2999 0 33.3 30.0 1.0X -after 1900, rebase off 16457 16457 0 6.1 164.6 0.2X -after 1900, rebase on 19587 19587 0 5.1 195.9 0.2X -before 1900, rebase off 16509 16509 0 6.1 165.1 0.2X -before 1900, rebase on 21375 21375 0 4.7 213.8 0.1X +after 1900, noop 2818 2818 0 35.5 28.2 1.0X +before 1900, noop 2805 2805 0 35.6 28.1 1.0X +after 1900, rebase off 15182 15182 0 6.6 151.8 0.2X +after 1900, rebase on 15614 15614 0 6.4 156.1 0.2X +before 1900, rebase off 15404 15404 0 6.5 154.0 0.2X +before 1900, rebase on 19747 19747 0 5.1 197.5 0.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load TIMESTAMP_MILLIS from parquet: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off, rebase off 15121 15250 127 6.6 151.2 1.0X -after 1900, vec off, rebase on 18436 18501 56 5.4 184.4 0.8X -after 1900, vec on, rebase off 6440 6464 21 15.5 64.4 2.3X -after 1900, vec on, rebase on 9547 9605 85 10.5 95.5 1.6X -before 1900, vec off, rebase off 15432 15467 59 6.5 154.3 1.0X -before 1900, vec off, rebase on 19236 19278 45 5.2 192.4 0.8X -before 1900, vec on, rebase off 6424 6436 15 15.6 64.2 2.4X -before 1900, vec on, rebase on 10297 10373 75 9.7 103.0 1.5X +after 1900, vec off, rebase off 15622 15649 24 6.4 156.2 1.0X +after 1900, vec off, rebase on 15572 15677 119 6.4 155.7 1.0X +after 1900, vec on, rebase off 6345 6358 15 15.8 63.5 2.5X +after 1900, vec on, rebase on 6780 6834 92 14.8 67.8 2.3X +before 1900, vec off, rebase off 15540 15584 38 6.4 155.4 1.0X +before 1900, vec off, rebase on 19590 19653 55 5.1 195.9 0.8X +before 1900, vec on, rebase off 6374 6381 10 15.7 63.7 2.5X +before 1900, vec on, rebase on 10530 10544 25 9.5 105.3 1.5X ================================================================================================ @@ -107,36 +107,36 @@ OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aw Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save DATE to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, noop 23323 23323 0 4.3 233.2 1.0X -before 1582, noop 10178 10178 0 9.8 101.8 2.3X -after 1582 31568 31568 0 3.2 315.7 0.7X -before 1582 19918 19918 0 5.0 199.2 1.2X +after 1582, noop 23825 23825 0 4.2 238.2 1.0X +before 1582, noop 10501 10501 0 9.5 105.0 2.3X +after 1582 32134 32134 0 3.1 321.3 0.7X +before 1582 19947 19947 0 5.0 199.5 1.2X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load DATE from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1582, vec off 10580 10610 39 9.5 105.8 1.0X -after 1582, vec on 3746 3765 19 26.7 37.5 2.8X -before 1582, vec off 11052 11143 124 9.0 110.5 1.0X -before 1582, vec on 4170 4187 16 24.0 41.7 2.5X +after 1582, vec off 10034 10056 22 10.0 100.3 1.0X +after 1582, vec on 3664 3698 30 27.3 36.6 2.7X +before 1582, vec off 10472 10502 30 9.5 104.7 1.0X +before 1582, vec on 4052 4098 42 24.7 40.5 2.5X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Save TIMESTAMP to ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, noop 2994 2994 0 33.4 29.9 1.0X -before 1900, noop 2986 2986 0 33.5 29.9 1.0X -after 1900 22517 22517 0 4.4 225.2 0.1X -before 1900 23253 23253 0 4.3 232.5 0.1X +after 1900, noop 2812 2812 0 35.6 28.1 1.0X +before 1900, noop 2801 2801 0 35.7 28.0 1.0X +after 1900 18290 18290 0 5.5 182.9 0.2X +before 1900 22344 22344 0 4.5 223.4 0.1X OpenJDK 64-Bit Server VM 1.8.0_252-8u252-b09-1~18.04-b09 on Linux 4.15.0-1063-aws Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz Load TIMESTAMP from ORC: Best Time(ms) Avg Time(ms) Stdev(ms) Rate(M/s) Per Row(ns) Relative ------------------------------------------------------------------------------------------------------------------------ -after 1900, vec off 14042 14199 152 7.1 140.4 1.0X -after 1900, vec on 7873 7901 25 12.7 78.7 1.8X -before 1900, vec off 14716 14768 48 6.8 147.2 1.0X -before 1900, vec on 8491 8503 10 11.8 84.9 1.7X +after 1900, vec off 11257 11279 32 8.9 112.6 1.0X +after 1900, vec on 5296 5310 15 18.9 53.0 2.1X +before 1900, vec off 14700 14758 72 6.8 147.0 0.8X +before 1900, vec on 8576 8665 150 11.7 85.8 1.3X