Skip to content

Optimize copying from local cache to /dev/fuse #6135

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

Closed
jiefenghuang opened this issue May 23, 2025 · 2 comments
Closed

Optimize copying from local cache to /dev/fuse #6135

jiefenghuang opened this issue May 23, 2025 · 2 comments
Labels
kind/feature New feature or request

Comments

@jiefenghuang
Copy link
Contributor

What would you like to be added:

  • todo: return readResultFd for read request for go-fuse, and copy directly from cache file to /dev/fuse;
  • potential issue: unable to verify cache checksum

Why is this needed:

reduce memory copy and memory management overhead in user space

@jiefenghuang jiefenghuang added the kind/feature New feature or request label May 23, 2025
@polyrabbit
Copy link
Contributor

It would be great if zero copy could be achieved. In our scenario, the higher the cache hit rate, the higher the CPU consumption — sometimes reaching up to 20 cores. The main CPU overhead comes from memory copying when reading cache files, especially when read amplification is severe. This can impact normal read requests.

@davies
Copy link
Contributor

davies commented May 29, 2025

We have tried this and no much gain actually. In the best case, the overhead of moving 4k pages from page cache to FUSE is not much faster than copying, because FUSE does support huge page.

@davies davies closed this as completed May 29, 2025
@davies davies closed this as not planned Won't fix, can't repro, duplicate, stale May 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants