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

concurrent reads of the same file are slow #181

Open
tmhannes opened this issue Mar 22, 2022 · 0 comments
Open

concurrent reads of the same file are slow #181

tmhannes opened this issue Mar 22, 2022 · 0 comments

Comments

@tmhannes
Copy link

When two processes are doing sequential reads at different positions in the same file, "mount.exfat' uses a lot of CPU time and throughput is much lower than might be expected.

On my test system with an i7 CPU and an external SSD:

  • A single process can read from a file at 500MB/s, with the "mount.exfat" process using 18% of one CPU core.

  • If a second process is reading from the same file at a position 1GB from the beginning, CPU usage goes to 80%, and read speed drops to 60MB/s for both processes.

  • If the second process is reading at 30GB from the beginning, CPU usage is 100% and read speed is only 3MB/s.

I think that this happens because every second read takes this code path in exfat_advance_cluster and then walks over all clusters from the beginning of the file.

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

No branches or pull requests

2 participants