You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am having some performance problems that appear to be caused by my slowness to handle getattr() requests. I am reformatting data on the fly, so determining the size of a reformatted file is a relatively expensive operation. (NFS seems to be aggressive with sending getattr() also )
But what also seems to be happening in my scenario is that the request dispatch stalls when I handling getattr() - so I get starvation when handling read() requests. ( I.e. no request will be handed to the thread pool while the main thread is busy processing its own requests )
I am think that a better solution would be to have a dedicated dispatch thread, 1 main thread for handling requests that should be handled synchronously, and use the theeadpool for requests that can be handled asynchronously. This way the dispatch won't block,
The text was updated successfully, but these errors were encountered:
I am having some performance problems that appear to be caused by my slowness to handle getattr() requests. I am reformatting data on the fly, so determining the size of a reformatted file is a relatively expensive operation. (NFS seems to be aggressive with sending getattr() also )
But what also seems to be happening in my scenario is that the request dispatch stalls when I handling getattr() - so I get starvation when handling read() requests. ( I.e. no request will be handed to the thread pool while the main thread is busy processing its own requests )
I am think that a better solution would be to have a dedicated dispatch thread, 1 main thread for handling requests that should be handled synchronously, and use the theeadpool for requests that can be handled asynchronously. This way the dispatch won't block,
The text was updated successfully, but these errors were encountered: