[ARVADOS] updated: 2.1.0-2178-g0a9d4fa50

Git user git at public.arvados.org
Wed Mar 30 17:28:45 UTC 2022


Summary of changes:
 services/fuse/arvados_fuse/fusedir.py | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

       via  0a9d4fa5043bd7291611c41588bdd3f0b70ede44 (commit)
      from  d3051d45df5ee760a05a84bf4d385799c4326477 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 0a9d4fa5043bd7291611c41588bdd3f0b70ede44
Author: Peter Amstutz <peter.amstutz at curii.com>
Date:   Wed Mar 30 13:27:55 2022 -0400

    18941: Tweak the prefetch thread max to 7
    
    Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <peter.amstutz at curii.com>

diff --git a/services/fuse/arvados_fuse/fusedir.py b/services/fuse/arvados_fuse/fusedir.py
index 876825a37..f3816c0d3 100644
--- a/services/fuse/arvados_fuse/fusedir.py
+++ b/services/fuse/arvados_fuse/fusedir.py
@@ -525,9 +525,12 @@ class CollectionDirectory(CollectionDirectoryBase):
                         self.collection.update()
                         new_collection_record = self.collection.api_response()
                     else:
-                        # too much prefetch and you end up stepping on your own transfers
-                        # experimentally the optimal somewhere between 4 and 6
-                        get_threads = min(max((self.api.keep.block_cache.cache_max // (64 * 1024 * 1024)) - 1, 1), 6)
+                        # If there's too many prefetch threads and you
+                        # max out the CPU, delivering data to the FUSE
+                        # layer actually ends up being slower.
+                        # Experimentally, capping 7 threads seems to
+                        # be a sweet spot.
+                        get_threads = min(max((self.api.keep.block_cache.cache_max // (64 * 1024 * 1024)) - 1, 1), 7)
                         # Create a new collection object
                         if uuid_pattern.match(self.collection_locator):
                             coll_reader = arvados.collection.Collection(

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list