{"id":13672462,"url":"https://github.com/jonhoo/cliff","last_synced_at":"2025-03-22T12:31:57.742Z","repository":{"id":57605168,"uuid":"257635057","full_name":"jonhoo/cliff","owner":"jonhoo","description":"Find the load at which a benchmark falls over.","archived":false,"fork":false,"pushed_at":"2020-07-31T13:16:38.000Z","size":28,"stargazers_count":35,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-15T14:55:57.942Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jonhoo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-04-21T15:15:00.000Z","updated_at":"2024-11-18T20:03:12.000Z","dependencies_parsed_at":"2022-08-27T22:40:27.218Z","dependency_job_id":null,"html_url":"https://github.com/jonhoo/cliff","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonhoo%2Fcliff","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonhoo%2Fcliff/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonhoo%2Fcliff/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonhoo%2Fcliff/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jonhoo","download_url":"https://codeload.github.com/jonhoo/cliff/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244959444,"owners_count":20538625,"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":[],"created_at":"2024-08-02T09:01:36.345Z","updated_at":"2025-03-22T12:31:57.461Z","avatar_url":"https://github.com/jonhoo.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"[![Crates.io](https://img.shields.io/crates/v/cliff.svg)](https://crates.io/crates/cliff)\n[![Documentation](https://docs.rs/cliff/badge.svg)](https://docs.rs/cliff/)\n[![Build Status](https://dev.azure.com/jonhoo/jonhoo/_apis/build/status/cliff?branchName=master)](https://dev.azure.com/jonhoo/jonhoo/_build/latest?definitionId=24\u0026branchName=master)\n[![Codecov](https://codecov.io/github/jonhoo/cliff/coverage.svg?branch=master)](https://codecov.io/gh/jonhoo/cliff)\n\nFind the load at which a benchmark falls over.\n\nMost good benchmarks allow you to vary the offered load to the system,\nand then give you output that indicate whether the system-under-test is\nkeeping up. This could be dropped packets, latency spikes, or whatever\nelse is appropriate for the problem domain. Now, you want to find out\nhow far you can push your system until it falls over. How do you do\nthat?\n\nThis crate provides one answer: [exponential search]. The idea is\nsimple: first, you double offered load until the system falls over. As\nlong as the system keeps up, you raise the lower bound of your estimate\nfor the maximum tolerated load. When the system no longer keeps up, that\ngives you an upper limit on the throughput your system can support. At\nthat point, you perform a binary search between the upper and lower\nbounds, tightening the range until you reach the fidelity you want.\n\n  [exponential search]: https://en.wikipedia.org/wiki/Exponential_search\n\n## License\n\nLicensed under either of\n\n * Apache License, Version 2.0\n   ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)\n * MIT license\n   ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)\n\nat your option.\n\n## Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you, as defined in the Apache-2.0 license, shall be\ndual licensed as above, without any additional terms or conditions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonhoo%2Fcliff","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjonhoo%2Fcliff","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonhoo%2Fcliff/lists"}