Commit e891cd16 authored by Kirill Smelkov's avatar Kirill Smelkov

X try to use double-buffereing and queue read syscall into /dev/fuse while we are handling request

It still does not help and so hanwen/go-fuse remains the best Go fuse
library from performance point of view

a3a68a84
parent 59a13571
......@@ -101,8 +101,9 @@ func (s *fileSystemServer) ServeOps(c *fuse.Connection) {
s.fs.Destroy()
}()
s.serveInFlight.Add(1)
s.serveOps(c)
s.serveInFlight.Add(4)
go s.serveOps(c)
go s.serveOps(c)
}
func (s *fileSystemServer) serveOps(c *fuse.Connection) {
......@@ -123,6 +124,8 @@ func (s *fileSystemServer) serveOps(c *fuse.Connection) {
// queue. see e.g. https://github.com/golang/go/issues/15110 for details.
//
// improving FUSE request-response latency also improves IO throughput.
//
// XXX it does not improve throughput for jacobsa/fuse.
s.serveInFlight.Add(1)
go s.serveOps(c)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment