{"id":50296960,"url":"https://github.com/isusbu/filesystems-feature-study","last_synced_at":"2026-05-28T09:31:48.183Z","repository":{"id":329029015,"uuid":"1078299479","full_name":"isusbu/filesystems-feature-study","owner":"isusbu","description":"Linux file systems feature/functions study.","archived":false,"fork":false,"pushed_at":"2026-05-20T22:56:02.000Z","size":8644,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-05-21T04:48:10.409Z","etag":null,"topics":["ext4","f2fs","filesystem","linux","lttng","nfs"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/isusbu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-17T14:10:11.000Z","updated_at":"2026-05-20T22:56:05.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/isusbu/filesystems-feature-study","commit_stats":null,"previous_names":["amirhnajafiz/isusbu"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/isusbu/filesystems-feature-study","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isusbu%2Ffilesystems-feature-study","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isusbu%2Ffilesystems-feature-study/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isusbu%2Ffilesystems-feature-study/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isusbu%2Ffilesystems-feature-study/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/isusbu","download_url":"https://codeload.github.com/isusbu/filesystems-feature-study/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isusbu%2Ffilesystems-feature-study/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33603473,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-28T02:00:06.440Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ext4","f2fs","filesystem","linux","lttng","nfs"],"created_at":"2026-05-28T09:31:47.267Z","updated_at":"2026-05-28T09:31:48.159Z","avatar_url":"https://github.com/isusbu.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# File systems Feature Study\n\nOur goal is to measure file systems functions usage under various workloads.\n\n## LTTng (our tracer)\n\nTo run LTTng tracer you need to have three things:\n\n1. A place to store tracing logs (`/mnt/gpfs/fs-study` mounted with NFS).\n2. A group id to run your workloads within specific group, so that you can filter your workload logs.\n3. An LTTng user-level session.\n\nNOTE: We store our logs in a 1TB GPFS storage mounted to the VM using NFS.\n\n### session\n\nTo start a session, run the `lttng/init.sh \u003cNAME\u003e` script. This will configure an LTTng user-level session to trace all kernel functions in `kprobes.txt`. Also, it will export your tracing logs to `/mnt/gpfs/fs-study/ext4-session-\u003cNAME\u003e`. \n\n### tracer\n\nOnce you have your session (check by running `sudo lttng list`), then run `lttng/start.sh \u003cNAME\u003e` to start LTTng tracer. This will run the tracer in kernel level, so the VM might start slowing down if you let it run for too long.\n\nOnce your done running your worklaods, execute `lttng/stop.sh \u003cNAME\u003e` to stop the tracer in kernel level. After that run `lttng/cleanup.sh \u003cNAME\u003e` to cleanup and export your logs (CTF format) to `/mnt/gpfs/fs-study/ext4-session-\u003cNAME\u003e.out` in human readable format.\n\nAn example output:\n\n```txt\n[16:49:42.175248695] (+0.000002264) dhcp157.fsl.cs.sunysb.edu ext4_buffered_write_iter: { cpu_id = 0 }, { procname = \"kworker/u5:4\", gid = 0 }, { ip = 0xFFFFFFFFA0FEE730 }\n[16:49:42.175249914] (+0.000001219) dhcp157.fsl.cs.sunysb.edu ext4_generic_write_checks: { cpu_id = 0 }, { procname = \"kworker/u5:4\", gid = 0 }, { ip = 0xFFFFFFFFA0FED9A0 }\n[16:49:42.175250883] (+0.000000969) dhcp157.fsl.cs.sunysb.edu ext4_dirty_inode: { cpu_id = 0 }, { procname = \"kworker/u5:4\", gid = 0 }, { ip = 0xFFFFFFFFA1008720 }\n```\n\n## Tests\n\nRun your workloads (or tests) with `ext4_grp` (GID 1002) group, so you can set a filter on lttng logs.\n\n```sh\nubuntu@dhcp159:/$ getent group ext4_grp\next4_grp:x:1002:\n\n# running dbench for instance\nubuntu@dhcp159:/$ sudo -g ext4_grp dbench 16 -D /mnt/ext4test -t 10\n```\n\n### Loop Devices\n\nSetup a target disk for workloads test (Ext4).\n\n```bash\n# make a 2GB empty image file\ndd if=/dev/zero of=ext4_test.img bs=1M count=2048\n\n# format it as Ext4\nmkfs.ext4 ext4_test.img\n\n# make a mount point\nmkdir /mnt/ext4test\n\n# mount it using a loop device\nsudo mount -o loop ext4_test.img /mnt/ext4test\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fisusbu%2Ffilesystems-feature-study","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fisusbu%2Ffilesystems-feature-study","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fisusbu%2Ffilesystems-feature-study/lists"}