{"id":16219674,"url":"https://github.com/earlephilhower/ezfio","last_synced_at":"2025-04-10T02:23:50.012Z","repository":{"id":39175313,"uuid":"51390783","full_name":"earlephilhower/ezfio","owner":"earlephilhower","description":"Simple NVME/SAS/SATA SSD test framework for Linux and Windows","archived":false,"fork":false,"pushed_at":"2023-09-04T16:29:21.000Z","size":6371,"stargazers_count":172,"open_issues_count":6,"forks_count":52,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-04-02T18:55:20.663Z","etag":null,"topics":["benchmark","benchmarking","fio","nvme","nvmeof","nvmeoverfabrics","performance","ssd","testing"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/earlephilhower.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-02-09T18:57:23.000Z","updated_at":"2025-03-24T02:25:31.000Z","dependencies_parsed_at":"2022-08-03T06:01:20.640Z","dependency_job_id":null,"html_url":"https://github.com/earlephilhower/ezfio","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/earlephilhower%2Fezfio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/earlephilhower%2Fezfio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/earlephilhower%2Fezfio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/earlephilhower%2Fezfio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/earlephilhower","download_url":"https://codeload.github.com/earlephilhower/ezfio/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248143420,"owners_count":21054780,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["benchmark","benchmarking","fio","nvme","nvmeof","nvmeoverfabrics","performance","ssd","testing"],"created_at":"2024-10-10T11:55:21.515Z","updated_at":"2025-04-10T02:23:49.993Z","avatar_url":"https://github.com/earlephilhower.png","language":"Python","funding_links":[],"categories":["Test Tools"],"sub_categories":[],"readme":"ezFIO V1.0\r\n(C) Copyright 2015-18 HGST\r\nearle.philhower.iii@hgst.com\r\n\r\n------------------------------------------------------------------------\r\nezFIO is free software: you can redistribute it and/or modify\r\nit under the terms of the GNU General Public License as published by\r\nthe Free Software Foundation, either version 2 of the License, or\r\n(at your option) any later version.\r\n\r\nezFIO is distributed in the hope that it will be useful,\r\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\r\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r\nGNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License\r\nalong with ezFIO.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\r\n------------------------------------------------------------------------\r\n\r\nThis test script is intended to give a block-level based overview of\r\nSSD performance (SATA, SAS, and NVME) under real-world conditions by\r\nfocusing on sustained performance at different block sizes and queue\r\ndepths.  Both text-mode Linux and GUI and text-mode Windows versions\r\nare included.\r\n\r\nThe results of multiple tests are summarized into a single OpenDoc format\r\nspreadsheet, readable under OpenOffice, LibreOffice, or Microsoft Excel.\r\n\r\nFIO is required to perform the actual IO tests.  Please ensure the latest\r\nversion is installed, either from your operating system's repository or\r\nsources available at https://github.com/axboe/fio or precompiled for\r\nWindows at https://ci.appveyor.com/project/axboe/fio (for the GIT latest)\r\nor from https://www.bluestop.org/fio/ .\r\n\r\n(There seems to be an issue with FIO 3.1 under Windows that is not present\r\nunder earlier or later builds.  In a nutshell, the 1200 second sustained\r\nperformance test ends up running, under this version, for over 12 hours!\r\nWhile the final results are still good and the script continues, it does\r\nwaste a large amount of time and so I recommend avoiding the BlueStop 3.1\r\nbuild.  The CI.appveyor.com link above can be used to get current FIO\r\nhead builds instead.)\r\n\r\n\r\n------------------------------------------------------------------------\r\n\r\nA new --cluster option allows for running multiple clients in parallel,\r\nto allow testing performance of shared storage systems like SANs or\r\nAFAs.\r\n\r\nStart a \"fio --server\" job on all clients, then on one of them run\r\n./ezfio.py --cluster --drive host1:/dev/dr1,host2:/dev/dr2/... ...\r\n\r\nBasically add \"--cluster\" to the command line before the drive\r\noption, and in the drive option make a comma separated list of\r\nhostname:/path/to/storage .\r\n\r\nThe first host in the list must be the one you're currently running\r\nezfio from.  ezfio will try using the local system to collect\r\nappropriate system info on the first drive.\r\n\r\nIn the current implementation, all nodes/drives must be identical in\r\nsize.  There are no provisions for having volumes of differing sizes.\r\n\r\nAll other graphs and results should be the aggregate of the entire\r\ncluster, as reported by fio.\r\n\r\nex:\r\n\r\nStart up FIO servers on all systems to be tested\r\n(on host 1):\r\n  # fio --server \u0026\r\n(on host 2):\r\n  # fio --server \u0026\r\n(on host 3):\r\n  # fio --server \u0026\r\n\r\nRun a benchmark run:\r\n(on host 1)\r\n  # ./ezfio.py --cluster --drive host1:/dev/nvme1n1,host2:/dev/nvme1n1,host3:/dev/nvme4n1\r\n\r\n------------------------------------------------------------------------\r\n\r\nezFIO got where it is today through the help of many users who filed\r\nbugs when things didn't work, or submitted patches to support new CPUs.\r\nPlease feel free to open issues or drop me a line if you have questions.\r\n\r\nSpecial thanks to @coolrecep (Recep Baltaş) who has spent literally days\r\ntracking down Windows issues.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fearlephilhower%2Fezfio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fearlephilhower%2Fezfio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fearlephilhower%2Fezfio/lists"}