Skip to content

Performance engineering of CernVM-FS's FUSE kernel callbacks.

Notifications You must be signed in to change notification settings

cvmfs-contrib/cvmfs_fuse_perf

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alt text

Performance engineering of CernVM-FS's FUSE kernel callbacks.

Inspired from BCC tools.

About

This repository is a part of the CERN openlab summer student project called "Deep I/O performance analysis of CVMFS using modern Linux tools". The goal of the project was to be able to trace and measure latencies of FUSE functions both on the kernel and user spaces and make performance engineering of CernVM-File System.

The final outcome of the project is to have a set of tools which allows us to run benchmark and look deeper to the FUSE kernel callback latencies and number of calls.

Currently the reposiotry stores only the scripts for tracing the FUSE kernel callback functions. Code instrumentation for measuring latencies of CernVM-FS logic is already merged to the CernVM-FS devel branch.

Dependencies

  • Python
  • BCC tools

Usage

Press "CTRL + C" to stop tracing. Depending on the configurations, you may need to execute the command with root priveleges.

Measuring latencies.

[user@pc]$ python [SCRIPT_NAME]

Retrieving counters.

[user@pc]$ python [SCRIPT_NAME]

In order to get all counters, you will need to use fuse_calls_count.py.

[user@pc]$ python fuse_calls_count.py

fuse_calls_count_csv.py does the same as fuse_calls_count.py, however, it exports the output to a csv file named with the timestamp.

[user@pc]$ python fuse_calls_count_csv.py

show_diff.py utility allows to visiualize the difference between two cvs output files generated by fuse_calls_count_csv.py. The output is colored in green, blue and yellow colors depending of the difference between the counter values where yellow means the difference is high, blue - moderate, and green means acceptable.

[user@pc]$ python show_diff.py [file1] [file2]

About

Performance engineering of CernVM-FS's FUSE kernel callbacks.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 93.8%
  • Shell 3.4%
  • C 2.8%