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

Very slow using FileIO on Julia v0.6.1 #156

Closed
jaakkor2 opened this issue Nov 2, 2017 · 3 comments
Closed

Very slow using FileIO on Julia v0.6.1 #156

jaakkor2 opened this issue Nov 2, 2017 · 3 comments

Comments

@jaakkor2
Copy link

jaakkor2 commented Nov 2, 2017

With only FileIO 0.5.2 and Compat 034.0 installed, Julia v0.6.1 on Windows gives

julia> @time using FileIO
 11.261115 seconds (3.33 M allocations: 187.777 MiB, 2.70% gc time)

With v0.6.0

julia> @time using FileIO
  0.391243 seconds (134.20 k allocations: 8.279 MiB)
@SimonDanisch
Copy link
Member

I guess this is a duplication of: JuliaLang/julia#24383

@jaakkor2
Copy link
Author

jaakkor2 commented Dec 18, 2017

This is weird. Using precompiled binaries linked to https://julialang.org/downloads/
https://julialang-s3.julialang.org/bin/winnt/x64/0.6/julia-0.6.0-win64.exe
https://julialang-s3.julialang.org/bin/winnt/x64/0.6/julia-0.6.1-win64.exe
https://julialang-s3.julialang.org/bin/winnt/x64/0.6/julia-0.6.2-win64.exe
with

Package Directory: C:\temp\julia\v0.6
1 required packages:
 - FileIO                        0.6.1
1 additional packages:
 - Compat                        0.39.0

timings for using FileIO are as follows, each line is after Julia has been restarted and cache is already recompiled after switching the version

v0.6.0

julia> @time using FileIO
  0.317427 seconds (131.78 k allocations: 7.857 MiB)
julia> @time using FileIO
  0.327539 seconds (133.97 k allocations: 8.106 MiB)
julia> @time using FileIO
  0.340416 seconds (134.19 k allocations: 8.901 MiB)
julia> @time using FileIO
  0.346036 seconds (134.16 k allocations: 8.029 MiB)
julia> @time using FileIO
  0.322332 seconds (135.62 k allocations: 8.164 MiB)
julia> @time using FileIO
  0.333578 seconds (133.87 k allocations: 8.007 MiB)

v0.6.1

julia> @time using FileIO
  3.293605 seconds (1.61 M allocations: 90.356 MiB, 3.68% gc time)
julia> @time using FileIO
  4.922920 seconds (2.27 M allocations: 128.258 MiB, 2.60% gc time)
julia> @time using FileIO
  4.874179 seconds (2.27 M allocations: 128.345 MiB, 2.61% gc time)
julia> @time using FileIO
 28.846144 seconds (12.38 M allocations: 707.156 MiB, 0.66% gc time)
julia> @time using FileIO
 28.586310 seconds (12.38 M allocations: 707.191 MiB, 0.67% gc time)
julia> @time using FileIO
 15.799973 seconds (7.08 M allocations: 400.064 MiB, 1.00% gc time)

v0.6.2

julia> @time using FileIO
 41.969927 seconds (19.23 M allocations: 1.079 GiB, 0.57% gc time)
julia> @time using FileIO
 41.504833 seconds (19.23 M allocations: 1.079 GiB, 0.58% gc time)
julia> @time using FileIO
  3.367089 seconds (1.83 M allocations: 103.326 MiB, 3.72% gc time)
julia> @time using FileIO
 10.860312 seconds (6.23 M allocations: 352.241 MiB, 1.38% gc time)
julia> @time using FileIO
 11.303188 seconds (6.23 M allocations: 352.236 MiB, 1.38% gc time)
julia> @time using FileIO
  5.138920 seconds (3.28 M allocations: 185.204 MiB, 2.56% gc time)

Looks like only v0.6.0 behaves predictably and is quite fast. Timings for v0.6.1 and v0.6.2 vary quite a lot from run to run.

System load is low, power plan is balanced, network speed could be a it flaky, but should not matter.

@jaakkor2
Copy link
Author

On Julia v1.0.0, FileIO v1.01, and Windows 7 (same machine as in the original post), times are fast are reproducible, so therefore I am closing this issue.

  julia> @time using FileIO
  0.249403 seconds (242.95 k allocations: 13.776 MiB)

  julia> @time using FileIO
  0.208581 seconds (242.95 k allocations: 13.776 MiB)

  julia> @time using FileIO
  0.210918 seconds (242.95 k allocations: 13.776 MiB)

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

No branches or pull requests

2 participants