Giter Club home page Giter Club logo

Comments (4)

nilshg avatar nilshg commented on September 20, 2024 1

Just to add an MWE:

julia> using CSV, DataFrames

julia> df = DataFrame(rand(2_000_000, 4));

julia> CSV.write("test_out.csv", df);

julia> @time CSV.read("test_out.csv", DataFrame);
  0.569546 seconds (154.47 k allocations: 75.956 MiB, 3.24% gc time)

julia> df = DataFrame(BigFloat.(rand(2_000_000, 4)));

julia> CSV.write("test_out.csv", df);

julia> @time CSV.read("test_out.csv", DataFrame);
629.696438 seconds (6.00 G allocations: 97.848 GiB, 23.51% gc time)

(@v1.5) pkg> st CSV
Status `C:\Users\ngudat\.julia\environments\v1.5\Project.toml`
  [336ed68f] CSV v0.7.7

from parsers.jl.

quinnj avatar quinnj commented on September 20, 2024 1

Ok, merged #76 and the perf should be much much better now

from parsers.jl.

quinnj avatar quinnj commented on September 20, 2024

Looks like a Parsers.jl issue, I'll dig in to see what we can do to make it faster:

julia> @btime parse(Float64, "0.8720837370748981687285095176775939762592315673828125")
  452.393 ns (0 allocations: 0 bytes)
0.8720837370748982

julia> @btime Parsers.parse(Float64, "0.8720837370748981687285095176775939762592315673828125")
  20.607 μs (654 allocations: 13.08 KiB)
0.8720837370748982

from parsers.jl.

quinnj avatar quinnj commented on September 20, 2024

Ok, PR finally up; it was a beast of a refactor, but the performance improvements are about 20x for these large number cases. #76

from parsers.jl.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.