1f604 / liburing_b3sum Goto Github PK
View Code? Open in Web Editor NEWFastest possible b3sum using io_uring, slightly faster than cat to /dev/null
Fastest possible b3sum using io_uring, slightly faster than cat to /dev/null
Currently the consumer thread spins on an atomic (and likewise the producer thread is also effectively a busy wait).
This may be wasteful of CPU. We could perhaps reduce CPU usage by switching to cv.wait.
This may require splitting up the producer thread into 2 new threads: one that issues requests in a loop and one that checks for completions in a loop. We need to investigate whether this is okay to do (i.e. does io_uring allow it?).
If there is enough demand for this then I can implement it, but currently since nobody has complained about it I'm going to assume that it's not a problem.
Currently, the program just hashes a single file.
However, we could make the program hash multiple files.
This could potentially bring some performance benefits since we can avoid the overhead of setting up the io_uring and the ring buffer for each file, and possibly open the next file before we have finished processing the current file, and send the request for the next file before we're done reading the current file - I'm pretty sure this will result in some amount of performance gain, but I don't know how much - need to benchmark it.
If there is enough demand for this then I will implement it. Since nobody has complained about this I'm going to assume that it's a non-issue.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.