RFR: 8327147: Improve performance of Math ceil, floor, and rint for x86 [v4]
Dean Long
dlong at openjdk.org
Thu Mar 7 19:32:55 UTC 2024
On Thu, 7 Mar 2024 18:25:23 GMT, Srinivas Vamsi Parasa <duke at openjdk.org> wrote:
>> The goal of this PR is to provide ~4x faster implementation of Math.ceil, Math.floor and Math.rint for x86_64 CPUs.
>>
>> Below is the performance data on an Intel Tiger Lake machine.
>>
>> <html xmlns:v="urn:schemas-microsoft-com:vml"
>> xmlns:o="urn:schemas-microsoft-com:office:office"
>> xmlns:x="urn:schemas-microsoft-com:office:excel"
>> xmlns="http://www.w3.org/TR/REC-html40">
>>
>> <head>
>>
>> <meta name=ProgId content=Excel.Sheet>
>> <meta name=Generator content="Microsoft Excel 15">
>> <link id=Main-File rel=Main-File
>> href="file:///C:/Users/sparasa/AppData/Local/Temp/msohtmlclip1/01/clip.htm">
>> <link rel=File-List
>> href="file:///C:/Users/sparasa/AppData/Local/Temp/msohtmlclip1/01/clip_filelist.xml">
>>
>>
>>
>> </head>
>>
>> <body link="#0563C1" vlink="#954F72">
>>
>>
>> Benchmark (UseAVX=3) | Stock JDK (ops/ms) | This PR (ops/ms) | Speedup
>> -- | -- | -- | --
>> MathBench.ceilDouble | 547979 | 2170198 | 3.96
>> MathBench.floorDouble | 547979 | 2167459 | 3.96
>> MathBench.rintDouble | 547962 | 2130499 | 3.89
>> MathBench.addCeilFloorDouble | 501366 | 1754260 | 3.50
>>
>>
>>
>> </body>
>>
>> </html>
>>
>> <html xmlns:v="urn:schemas-microsoft-com:vml"
>> xmlns:o="urn:schemas-microsoft-com:office:office"
>> xmlns:x="urn:schemas-microsoft-com:office:excel"
>> xmlns="http://www.w3.org/TR/REC-html40">
>>
>> <head>
>>
>> <meta name=ProgId content=Excel.Sheet>
>> <meta name=Generator content="Microsoft Excel 15">
>> <link id=Main-File rel=Main-File
>> href="file:///C:/Users/sparasa/AppData/Local/Temp/msohtmlclip1/01/clip.htm">
>> <link rel=File-List
>> href="file:///C:/Users/sparasa/AppData/Local/Temp/msohtmlclip1/01/clip_filelist.xml">
>>
>>
>>
>> </head>
>>
>> <body link="#0563C1" vlink="#954F72">
>>
>>
>> Benchmark (UseAVX=0) | Stock JDK (ops/ms) | This PR (ops/ms) | Speedup
>> -- | -- | -- | --
>> MathBench.ceilDouble | 548492 | 2193497 | 4.00
>> MathBench.floorDouble | 548485 | 2192813 | 4.00
>> MathBench.rintDouble | 548488 | 2192578 | 4.00
>> MathBench.addCeilFloorDouble | 501761 | 1644714 | 3.28
>>
>>
>>
>> </body>
>>
>> </html>
>
> Srinivas Vamsi Parasa has updated the pull request incrementally with one additional commit since the last revision:
>
> fix indendation
Marked as reviewed by dlong (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/18089#pullrequestreview-1923352759
More information about the hotspot-compiler-dev
mailing list