Why does DataFrames take so long to load?


#1

Is there any way to speed this up? I don’t think I’m the only one bothered by this… :slight_smile:

julia> @time using DataFrames
 28.351476 seconds (2.77 M allocations: 165.493 MiB, 2.67% gc time)

julia> versioninfo()
Julia Version 0.6.1
Commit 0d7248e (2017-10-24 22:15 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin14.5.0)
  CPU: Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, haswell)


#2

For reference, mine doesn’t take that long:

julia> @time using DataFrames
  1.138097 seconds (1.20 M allocations: 66.721 MiB, 14.38% gc time)

julia> versioninfo()
Julia Version 0.6.1-pre.0
Commit dcf39a1dda* (2017-06-19 13:06 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, skylake)

julia> Pkg.status("DataFrames")
 - DataFrames                    0.11.2

#3

Are you using Juno? On my Windows PC, timing it in Juno is 9 seconds but in Julia REPL it is 1.7 seconds.

Sometimes Juno is only 4 seconds, so a bit of variability there.

Unless it’s the first time you are doing using DataFrames after updating it or installing it for the first time.


#4

I am just using the REPL. In fact, every time I restart the REPL it takes just as long.


#5

Probably a long shot but what is your Pkg.status("DataFrames"). I suggest raising a performance bug in the DataFrames together with that information.

Perhaps you can try Pkg.checkout("DataFrames") to install the latest version of DataFrames to help rule in/out if DataFrames is the issue.


#6

Strange but it works after removing and reinstalling all packages.
Thanks for the suggestions.

julia> @time using DataFrames
  2.567160 seconds (2.89 M allocations: 164.181 MiB, 11.35% gc time)