Performance Analysis of the CannyFS Shim Filesystem

University essay from Uppsala universitet/Institutionen för informationsteknologi

Author: Per Alonso; [2022]

Keywords: ;

Abstract: In High Performance Computing, there is a constant effort to improve performance. One important part of performance in these systems is storage performance. This thesis investigates the performance of a shim filesystem called CannyFS that exploits ignoring certain consistency requirements of typical filesystems for gaining performance benefits. This thesis uses profiling tools to find a potential bottleneck in CannyFS. This potential bottleneck then has four candidate optimizations applied to it, and each is tested separately to determine whether it is a good optimization or not. Finally, the candidate optimizations are compared against each other in a limited set of benchmarks to determine which ones result in the best performance. This thesis shows that the function get_filedata_inner in CannyFS is a bottleneck that is best optimized by either switching out an std::set it uses to an std::unordered_set or by doing so as well as removing redundant work. These optimizations are shown to reduce end-to-end program runtime by more than 8% in certain benchmark scenarios. This work also shows that seemingly obvious optimizations may not be good optimizations, and that optimizations on sequential code may still have a significant impact in concurrent scenarios

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)