-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
optimizer: fully support inlining of union-split, partially constant-prop' callsite #43347
Conversation
@nanosoldier |
Does this need TTFP benchmarking or is it good to merge? |
I'm happy to do the backporting, but I also would like to run nanosolider before merging in order to assert this commit isn't introducing another performance regression as I did in #42841. |
Instead of TTFP, I'd propose we should switch to using JuliaCI/BaseBenchmarks.jl#288 in order to track latency regressions. |
@nanosoldier |
bump; will this be included in Julia 1.7.1? |
…prop' callsite Makes full use of constant-propagation, by addressing this [TODO](https://github.com/JuliaLang/julia/blob/00734c5fd045316a00d287ca2c0ec1a2eef6e4d1/base/compiler/ssair/inlining.jl#L1212). Here is a performance improvement from #43287: ```julia ulia> using BenchmarkTools julia> X = rand(ComplexF32, 64, 64); julia> dst = reinterpret(reshape, Float32, X); julia> src = copy(dst); julia> @Btime copyto!($dst, $src); 50.819 μs (1 allocation: 32 bytes) # v1.6.4 41.081 μs (0 allocations: 0 bytes) # this commit ``` fixes #43287
@nanosoldier |
Your benchmark job has completed - possible performance regressions were detected. A full report can be found here. |
The benchmark result looks good. I'm also running another benchmark on mit cluster now and would like to get this merged once I confirm there is no obvious regressions in that result tool. |
@nanosoldier |
On
Benchmark ReportJob PropertiesCommits: https://github.com/JuliaLang/julia@a79e40d61d4d0861c8fcbf15709588fe18ee8f74 vs https://github.com/JuliaLang/julia@85a6990a9c1d49dd5aeaffeb4b38f881dc120823 Comparison Diff: link Triggered By: link Tag Predicate: ResultsNote: If Chrome is your browser, I strongly recommend installing the Wide GitHub Below is a table of this job's results, obtained by running the benchmarks found in The percentages accompanying time and memory values in the below table are noise tolerances. The "true" A ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Version InfoPrimary Build
Comparison Build
Benchmark ReportJob PropertiesCommits: https://github.com/JuliaLang/julia@a79e40d61d4d0861c8fcbf15709588fe18ee8f74 vs https://github.com/JuliaLang/julia@85a6990a9c1d49dd5aeaffeb4b38f881dc120823 Comparison Diff: link Triggered By: link Tag Predicate: ResultsNote: If Chrome is your browser, I strongly recommend installing the Wide GitHub Below is a table of this job's results, obtained by running the benchmarks found in The percentages accompanying time and memory values in the below table are noise tolerances. The "true" A ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Version InfoPrimary Build
Comparison Build
|
Your benchmark job has completed - no performance regressions were detected. A full report can be found here. |
…prop' callsite (#43347) Makes full use of constant-propagation, by addressing this [TODO](https://github.com/JuliaLang/julia/blob/00734c5fd045316a00d287ca2c0ec1a2eef6e4d1/base/compiler/ssair/inlining.jl#L1212). Here is a performance improvement from #43287: ```julia ulia> using BenchmarkTools julia> X = rand(ComplexF32, 64, 64); julia> dst = reinterpret(reshape, Float32, X); julia> src = copy(dst); julia> @Btime copyto!($dst, $src); 50.819 μs (1 allocation: 32 bytes) # v1.6.4 41.081 μs (0 allocations: 0 bytes) # this commit ``` fixes #43287
…prop' callsite (#43347) Makes full use of constant-propagation, by addressing this [TODO](https://github.com/JuliaLang/julia/blob/00734c5fd045316a00d287ca2c0ec1a2eef6e4d1/base/compiler/ssair/inlining.jl#L1212). Here is a performance improvement from #43287: ```julia ulia> using BenchmarkTools julia> X = rand(ComplexF32, 64, 64); julia> dst = reinterpret(reshape, Float32, X); julia> src = copy(dst); julia> @Btime copyto!($dst, $src); 50.819 μs (1 allocation: 32 bytes) # v1.6.4 41.081 μs (0 allocations: 0 bytes) # this commit ``` fixes #43287
…prop' callsite (#43347) Makes full use of constant-propagation, by addressing this [TODO](https://github.com/JuliaLang/julia/blob/00734c5fd045316a00d287ca2c0ec1a2eef6e4d1/base/compiler/ssair/inlining.jl#L1212). Here is a performance improvement from #43287: ```julia ulia> using BenchmarkTools julia> X = rand(ComplexF32, 64, 64); julia> dst = reinterpret(reshape, Float32, X); julia> src = copy(dst); julia> @Btime copyto!($dst, $src); 50.819 μs (1 allocation: 32 bytes) # v1.6.4 41.081 μs (0 allocations: 0 bytes) # this commit ``` fixes #43287
…prop' callsite (JuliaLang#43347) Makes full use of constant-propagation, by addressing this [TODO](https://github.com/JuliaLang/julia/blob/00734c5fd045316a00d287ca2c0ec1a2eef6e4d1/base/compiler/ssair/inlining.jl#L1212). Here is a performance improvement from JuliaLang#43287: ```julia ulia> using BenchmarkTools julia> X = rand(ComplexF32, 64, 64); julia> dst = reinterpret(reshape, Float32, X); julia> src = copy(dst); julia> @Btime copyto!($dst, $src); 50.819 μs (1 allocation: 32 bytes) # v1.6.4 41.081 μs (0 allocations: 0 bytes) # this commit ``` fixes JuliaLang#43287
…prop' callsite (JuliaLang#43347) Makes full use of constant-propagation, by addressing this [TODO](https://github.com/JuliaLang/julia/blob/00734c5fd045316a00d287ca2c0ec1a2eef6e4d1/base/compiler/ssair/inlining.jl#L1212). Here is a performance improvement from JuliaLang#43287: ```julia ulia> using BenchmarkTools julia> X = rand(ComplexF32, 64, 64); julia> dst = reinterpret(reshape, Float32, X); julia> src = copy(dst); julia> @Btime copyto!($dst, $src); 50.819 μs (1 allocation: 32 bytes) # v1.6.4 41.081 μs (0 allocations: 0 bytes) # this commit ``` fixes JuliaLang#43287
Makes full use of constant-propagation, by addressing this TODO.
Here is a performance improvement from #43287:
fixes #43287