Skip to content
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

Benchmark 0.5 vs 0.6 [do not merge] #20947

Closed
wants to merge 0 commits into from
Closed

Conversation

KristofferC
Copy link
Member

@KristofferC KristofferC commented Mar 8, 2017

Thought it would be a good time to start checking the performance vs 0.5. Easiest to have this in a branch since AFAIK there is no way to run a benchmark between two commits from an issue.

vs 0.5.1:

@nanosoldier runbenchmarks(ALL, vs = "@6445c82d0060dbe82b88436f0f4371a4ee64d918")

Note to self, but [ci skip] on the commit for the rebases to come.

@KristofferC KristofferC added the potential benchmark Could make a good benchmark in BaseBenchmarks label Mar 8, 2017
@nanosoldier
Copy link
Collaborator

Your benchmark job has completed - possible performance regressions were detected. A full report can be found here. cc @jrevels

@KristofferC
Copy link
Member Author

KristofferC commented Mar 8, 2017

Not bad.

Summary of stuff that got slower:

Arrays:

  • ["array","index",("sumcolon","1.0:1.0:100000.0")]
  • ["array","index",("sumeach_view","BitArray{2}")]
  • ["array","index",("sumlinear_view","BitArray{2}")]
  • ["array","index",("sumrange","1.0:1.0:100000.0")]
  • Some of the concatenations.

Date accessors in general

For example: ["dates","accessor","millisecond"]

Fixed by #20853?

Factorizations

For example: ["linalg","factorization",("eig","Matrix",256)]

div with BigNumbers

For example: ["scalar","arithmetic",("div","BigFloat","Complex{Float32}")]

Maybe some new promotion paths that leads to multiple allocations of big numbers?

Yes, changed from:

/(a::Real, z::Complex) = a*inv(z)

to

/{R<:Real,S<:Complex}(a::R, z::S) = (T = promote_type(R,S); a*inv(T(z)))

Parallell remotecall

For example ["parallel","remotecall",("identity",2)]

Sorting in general

For example ["sort","insertionsort",("sort forwards","ascending")]

I think this happened when we upgraded LLVM

Sparse indexing

For example ["sparse","index",("spmat","col","array",10)]

Other

  • ["problem","laplacian","laplace_sparse_matvec"]
  • ["misc","bitshift",("UInt32","UInt32")]
  • ["shootout","revcomp"]

@jebej
Copy link
Contributor

jebej commented Mar 9, 2017

Is it possible to test against 0.4 as well?

@KristofferC
Copy link
Member Author

Should be, let's try it!

@KristofferC
Copy link
Member Author

vs v0.4.7:

@nanosoldier runbenchmarks(ALL, vs = "@ae26b25d43317d7dd3ca05f60b70677aab9c0e08")

@nanosoldier
Copy link
Collaborator

Something went wrong when running your job:

NanosoldierError: failed to run benchmarks against comparison commit: failed process: Process(`sudo cset shield -e su nanosoldier -- -c ./benchscript.sh`, ProcessExited(1)) [1]

Logs and partial data can be found here
cc @jrevels

@tkelman
Copy link
Contributor

tkelman commented Mar 9, 2017

probably need an older copy of the saved data for 0.4

@KristofferC
Copy link
Member Author

Eeh what? I just rebased this branch and force pushed to it...?

@yuyichao
Copy link
Contributor

There's no more commit to merge on this anymore.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants