)]}'
{
  "log": [
    {
      "commit": "6300b8f3a8922c61ea6bb2cdfa1901a42c0cc6fc",
      "tree": "5d7da3987313a962b74ded27f69c1ff8dde472ab",
      "parents": [
        "842d388845d662147fae58ffab9a64a13764668b"
      ],
      "author": {
        "name": "Cheng-Yang Chou",
        "email": "yphbchou0911@gmail.com",
        "time": "Wed Jun 04 08:51:44 2025 +0800"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Jun 09 07:00:22 2025 -0700"
      },
      "message": "schbench: fix typo in strdup\n\nCorrect \"stdrup\" to \"strdup\".\n\nSigned-off-by: Cheng-Yang Chou \u003cyphbchou0911@gmail.com\u003e\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "842d388845d662147fae58ffab9a64a13764668b",
      "tree": "a83313e5d51ff462aae793076c09cebb39168dca",
      "parents": [
        "73ba71d870fd801b4576b1a2978902b946a0e015"
      ],
      "author": {
        "name": "Cheng-Yang Chou",
        "email": "yphbchou0911@gmail.com",
        "time": "Wed Jun 04 01:01:51 2025 +0800"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Jun 09 06:59:42 2025 -0700"
      },
      "message": "schbench: fix null check for JSON output file\n\nCommit b43ca6f744b3 (\"schbench: add a --json option\") mistakenly checked\n`json_file` instead of `outfile` after calling fopen(), which could\nresult in undetected file open failures.\n\nFix the conditional to correctly verify `outfile` for NULL.\n\nFixes: b43ca6f744b3 (\"schbench: add a --json option\")\nSigned-off-by: Cheng-Yang Chou \u003cyphbchou0911@gmail.com\u003e\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "73ba71d870fd801b4576b1a2978902b946a0e015",
      "tree": "8a4512fa101c70f9879ba3b3ce373e0974f1bec8",
      "parents": [
        "2e24a47f507987f475143d9781b1d7de28b846b0",
        "fd6fb03d875ba71f750783454c445f6564fa9f2b"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Jun 05 11:42:45 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 05 11:42:45 2025 -0700"
      },
      "message": "Merge pull request #5 from mkutsevol/main\n\n[schedbench] Handle the delta\u003d0 case in rps stats"
    },
    {
      "commit": "2e24a47f507987f475143d9781b1d7de28b846b0",
      "tree": "e73b0f8889685bf5639ceead4274ddad8cc9abe8",
      "parents": [
        "d665968c44c4eb89df02903b4a35613a2af20974"
      ],
      "author": {
        "name": "Cheng-Yang Chou",
        "email": "yphbchou0911@gmail.com",
        "time": "Tue Jun 03 20:49:57 2025 +0800"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue Jun 03 07:21:51 2025 -0700"
      },
      "message": "schbench: fix -n and -s getopt conflict\n\nCommit 7f7a0527ebcf (\"schbench: add -s for sleep_usec\") intended to\nassign -s to --sleep_usec, but mistakenly reused -n, which conflicted\nwith --operations and made -s unusable.\n\nAssign -s to --sleep_usec to fix the conflict.\n\nFixes: 7f7a0527ebcf (\"schbench: add -s for sleep_usec\")\nSigned-off-by: Cheng-Yang Chou \u003cyphbchou0911@gmail.com\u003e\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "d665968c44c4eb89df02903b4a35613a2af20974",
      "tree": "b9360299b09e0408c70c4fd6a77215243a802d87",
      "parents": [
        "5f2708821623225697013802e7893209941bc445"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Jun 02 13:05:02 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Jun 02 13:05:02 2025 -0700"
      },
      "message": "schbench: fix final sched delay collection at exit time\n\nThe message_thread_mem was being freed too soon, and we\u0027re unable to\nread /proc/[pid]/schedstat from threads that have already exited.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "5f2708821623225697013802e7893209941bc445",
      "tree": "c72d28b8ba2cbacc86d6f2df2df95f7be215181d",
      "parents": [
        "c98b4388456857ba42a1124df5d2c864fde93252"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 28 06:57:31 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 28 06:57:31 2025 -0700"
      },
      "message": "schbench: collect scheduler delays from /proc/[pid]/schedstat\n\nThis collects and prints the scheduler\u0027s stats on how long we\u0027re waiting\non the runqueue.  If that\u0027s different from the delays from our own\naccounting, it can point to other causes of delays.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "c98b4388456857ba42a1124df5d2c864fde93252",
      "tree": "990537307c2f5705e802a17758cf505d5e495b6c",
      "parents": [
        "845eae9ba8a80604843a94d9d389f5d40cc5f801"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 28 05:25:37 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 28 05:25:37 2025 -0700"
      },
      "message": "schbench: drop unused variable\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "fd6fb03d875ba71f750783454c445f6564fa9f2b",
      "tree": "c122d94cc892f9b40b5c9b8bc9fb86f9f6252854",
      "parents": [
        "845eae9ba8a80604843a94d9d389f5d40cc5f801"
      ],
      "author": {
        "name": "Maksym Kutsevol",
        "email": "mkutsevol@meta.com",
        "time": "Thu May 22 16:53:46 2025 -0400"
      },
      "committer": {
        "name": "Maksym Kutsevol",
        "email": "mkutsevol@meta.com",
        "time": "Thu May 22 16:53:46 2025 -0400"
      },
      "message": "[schedbench] Handle the delta\u003d0 case in rps stats\n"
    },
    {
      "commit": "845eae9ba8a80604843a94d9d389f5d40cc5f801",
      "tree": "be87e648a5030a63592d5780890afc14d91d6b8e",
      "parents": [
        "34620191546ccb7d764869af0be784e7e354f624",
        "390f0c11b40fbbcf404976bbb5cd5c9f53e46d5e"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu May 22 07:19:32 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 22 07:19:32 2025 -0700"
      },
      "message": "Merge pull request #4 from josefbacik/jobname\n\nschbench: add a --jobname option"
    },
    {
      "commit": "390f0c11b40fbbcf404976bbb5cd5c9f53e46d5e",
      "tree": "be87e648a5030a63592d5780890afc14d91d6b8e",
      "parents": [
        "34620191546ccb7d764869af0be784e7e354f624"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@fb.com",
        "time": "Tue May 20 14:03:12 2025 -0700"
      },
      "committer": {
        "name": "Josef Bacik",
        "email": "jbacik@fb.com",
        "time": "Tue May 20 14:03:12 2025 -0700"
      },
      "message": "schbench: add a --jobname option\n\nIn order to help group results add a --jobname option that will add a\njobname field to the JSON output.\n\nSigned-off-by: Josef Bacik \u003cjbacik@fb.com\u003e\n"
    },
    {
      "commit": "34620191546ccb7d764869af0be784e7e354f624",
      "tree": "4e85db10ed877d9147e31e660d267119bb3ee2a9",
      "parents": [
        "0afc163dea88f4bfd0dfd18a372a30ef4310b806",
        "236675c758ac3980114b68c05ea8d6e7fd06b20b"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri May 16 15:49:23 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 16 15:49:23 2025 -0400"
      },
      "message": "Merge pull request #3 from josefbacik/json-updates\n\nJson updates"
    },
    {
      "commit": "236675c758ac3980114b68c05ea8d6e7fd06b20b",
      "tree": "4e85db10ed877d9147e31e660d267119bb3ee2a9",
      "parents": [
        "73cb9192a281cdcbd21628d4867d5a846096d727"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@fb.com",
        "time": "Fri May 16 12:45:54 2025 -0700"
      },
      "committer": {
        "name": "Josef Bacik",
        "email": "jbacik@fb.com",
        "time": "Fri May 16 12:45:54 2025 -0700"
      },
      "message": "schbench: add sched_ext information\n\nIf we have sched_ext enabled grab the name of the scheduler and include\nthat in the JSON output.\n\nSigned-off-by: Josef Bacik \u003cjbacik@fb.com\u003e\n"
    },
    {
      "commit": "73cb9192a281cdcbd21628d4867d5a846096d727",
      "tree": "873b9be3d5dc22bb6cf09a460306fbadb69a5015",
      "parents": [
        "0afc163dea88f4bfd0dfd18a372a30ef4310b806"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@fb.com",
        "time": "Fri May 16 12:05:24 2025 -0700"
      },
      "committer": {
        "name": "Josef Bacik",
        "email": "jbacik@fb.com",
        "time": "Fri May 16 12:05:24 2025 -0700"
      },
      "message": "schbench: move the numeric values under \"int\"\n\nI was wrong, scuba needs me to tell it that these are int values.\n\nSigned-off-by: Josef Bacik \u003cjbacik@fb.com\u003e\n"
    },
    {
      "commit": "0afc163dea88f4bfd0dfd18a372a30ef4310b806",
      "tree": "225bf97a8bc2ef01faab8d3ad74611a761153a96",
      "parents": [
        "7f7a0527ebcfff206bbef4a7fdbf2639d4caabcc",
        "0b26515c8c6109ce08348a0b6d2f00ab8c42cd87"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri May 16 12:54:15 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 16 12:54:15 2025 -0400"
      },
      "message": "Merge pull request #2 from josefbacik/update-json\n\nschbench: update json format"
    },
    {
      "commit": "0b26515c8c6109ce08348a0b6d2f00ab8c42cd87",
      "tree": "cba7dc3f250736ee7847ab761f5bb0bb0081cc00",
      "parents": [
        "6a1286e4d5867815cd0315acf9ff2bda67e69f97"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@fb.com",
        "time": "Fri May 16 09:43:14 2025 -0700"
      },
      "committer": {
        "name": "Josef Bacik",
        "email": "jbacik@fb.com",
        "time": "Fri May 16 09:43:14 2025 -0700"
      },
      "message": "schbench: update json format\n\nscuba takes everything in a flat format under a \"normal\" component, and\na timestamp under \"int\". Adjust the json output so it can be consumed by\nscuba easily.\n\nSigned-off-by: Josef Bacik \u003cjbacik@fb.com\u003e\n"
    },
    {
      "commit": "7f7a0527ebcfff206bbef4a7fdbf2639d4caabcc",
      "tree": "f7a35d9298fe71515355c7e5078ca932502707d8",
      "parents": [
        "461f5da496b66a42d48496d7e42b0c434a2f1391"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri May 16 05:42:00 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri May 16 05:44:19 2025 -0700"
      },
      "message": "schbench: add -s for sleep_usec\n\nEach \"request\" currently includes a 100usec sleep to try and simulate a\nmixture of think time and off-cpu time as part of the request.  This\ncommit allows us to set the sleep time (in usecs) with -s.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "461f5da496b66a42d48496d7e42b0c434a2f1391",
      "tree": "1bb7cbe0881db2a36de4401ade8efcd6111648f5",
      "parents": [
        "8a9f10418fc79790b441b738b13b91ddcd326649"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 14 10:45:08 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 14 10:45:08 2025 -0700"
      },
      "message": "schbench: update schedstat.py to understand format v15,16,17\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "8a9f10418fc79790b441b738b13b91ddcd326649",
      "tree": "f303654431d76aeb672abc894e7413d28c16770c",
      "parents": [
        "bfcd0e8edc6b1eca8d73373d066b5fca72f80e15"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 07 09:55:45 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 07 09:55:45 2025 -0700"
      },
      "message": "schbench: add -M auto and -W auto\n\nThis defaults to message threads pinned to the first N cpus (one per\nthread), and the worker threads pinned to all of the remaining CPUs.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "bfcd0e8edc6b1eca8d73373d066b5fca72f80e15",
      "tree": "7c1cb40442a899ee257839a3698e4710856dfadd",
      "parents": [
        "78af837f28d8db0ad42ec9b228574d1503ca3b92"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 17:28:59 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 17:28:59 2025 -0700"
      },
      "message": "schbench: add -W to set the worker cpus\n\nThis is similar to -M, except every worker thread is allowed to run on\nany of the worker CPUs.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "78af837f28d8db0ad42ec9b228574d1503ca3b92",
      "tree": "4a2f2a360070e7bbc87ca249ae1b97babcd1610d",
      "parents": [
        "6a1286e4d5867815cd0315acf9ff2bda67e69f97"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 16:56:52 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 16:56:52 2025 -0700"
      },
      "message": "schbench: fix the auto_rps information printed after the run is over\n\nIn auto_rps mode, each message thread is printing the target RPS,\ninstead of just printing it once.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "6a1286e4d5867815cd0315acf9ff2bda67e69f97",
      "tree": "a9e1c8c37b000ba44fe6b2b0a55cbccbdfb0802c",
      "parents": [
        "cfd76f64823d831a8351db5ff41e02f0b742edf8"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 11:27:48 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 11:27:48 2025 -0700"
      },
      "message": "schbench: steal .clang-format from the kernel\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "cfd76f64823d831a8351db5ff41e02f0b742edf8",
      "tree": "26b55f6883a1e0d4b2dfa7427a7a1cd94231cb34",
      "parents": [
        "79a5f5fe77cd3e1a802028bea33dccae2777a43f"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 10:40:34 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 11:26:28 2025 -0700"
      },
      "message": "schbench: add -M a-n,m-z for pinning message threads to CPUs\n\nThis better simulates network workloads where irqs are pinned to CPUs.\n\nThe code round robins through the cpus provided, so for example:\n\nschbench -M 0-3 -m 4\n\nWe\u0027ll have a single message thread on cpu 0,1,2,3\n\nschbench -M 0-3 -m 5\n\nWe\u0027ll have two message threads on CPU 0, and then one thread on cpus\n1,2,3\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "79a5f5fe77cd3e1a802028bea33dccae2777a43f",
      "tree": "1c4f1feaacd448557e68d444c8fa366d2cedad16",
      "parents": [
        "a0ff5fa5369ea9281a9e15b64e67313e4bd156e1"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 08:25:08 2025 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 06 11:25:21 2025 -0700"
      },
      "message": "schbench: fix RPS mode to sleep less\n\nWhen running at high RPS, the batch and sleep setup was making us sleep too\noften, limiting the total RPS possible.   The old code was trying to\nmeter out the requests over a 1 second period, this changes us to a more\nbursty setup that sleeps less often.\n\nBefore, we were really just benchmarking nanosleep() at high RPS rates,\nwhere this allows us to go faster and hit more of the scheduler code.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "a0ff5fa5369ea9281a9e15b64e67313e4bd156e1",
      "tree": "9360b3d7a4d0cacaac8bf33092cd39b4c83d9fe2",
      "parents": [
        "48aed1dc08e5187aa41f2dec204c73efc1a14d1e",
        "b43ca6f744b3a03ec899539fd58600ffcb9a5113"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu May 01 16:23:44 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 01 16:23:44 2025 -0700"
      },
      "message": "Merge pull request #1 from josefbacik/json\n\nschbench: add a --json option"
    },
    {
      "commit": "b43ca6f744b3a03ec899539fd58600ffcb9a5113",
      "tree": "9360b3d7a4d0cacaac8bf33092cd39b4c83d9fe2",
      "parents": [
        "48aed1dc08e5187aa41f2dec204c73efc1a14d1e"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@toxicpanda.com",
        "time": "Thu May 01 15:54:14 2025 -0400"
      },
      "committer": {
        "name": "Josef Bacik",
        "email": "josef@toxicpanda.com",
        "time": "Thu May 01 18:57:57 2025 -0400"
      },
      "message": "schbench: add a --json option\n\nIn order to make it easier to record results with automation add a JSON\noutput option. This will add the percentile statistics, min and max, as\nwell as the runtime.\n\nSigned-off-by: Josef Bacik \u003cjosef@toxicpanda.com\u003e\n"
    },
    {
      "commit": "48aed1dc08e5187aa41f2dec204c73efc1a14d1e",
      "tree": "a5a5a6e2b9f6a693abf86bf7db1067fc13e9b5d7",
      "parents": [
        "c3d60f610700bd1f133e9f6760f4efd3ac875b83"
      ],
      "author": {
        "name": "Peter Zijlstra (Intel)",
        "email": "peterz@infradead.org",
        "time": "Fri Apr 21 07:15:27 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 21 07:15:27 2023 -0700"
      },
      "message": "schbench: fix line length and formatting in README.md\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "c3d60f610700bd1f133e9f6760f4efd3ac875b83",
      "tree": "4f1f0e9f1b6d3f24fdaa48f3ad64dfd76c126aff",
      "parents": [
        "5d6ed2d36c3abd4d59bef658577eb5c94e59be12"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 21 07:01:49 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 21 07:01:49 2023 -0700"
      },
      "message": "schbench: scale down worker threads to num_cpus by default\n\nThe default number of worker threads is just num_cpus, but the workers\nare per message thread.  So if you pass -m 2, you\u0027ll end up with 2x the\nnumber of workers, which is a surprise.\n\nThis commit changes the default to scale down the workers when -m is\nincreased.  You can still use -t to manually set the worker count.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "5d6ed2d36c3abd4d59bef658577eb5c94e59be12",
      "tree": "80b32f51ecdaad8562582214ceb208a92b7c4599",
      "parents": [
        "28d26cd291a5f58944b28011d86b2e92e5572a78"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 21 06:54:53 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 21 06:54:53 2023 -0700"
      },
      "message": "schbench: default to no warmup zeroing\n\nThe memset to zero after warmup is racey, and especially for shorter\nruntimes leads to strange stats.  Disable it by default.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "28d26cd291a5f58944b28011d86b2e92e5572a78",
      "tree": "25b40239309500aeb29e8eb875179b3c87969000",
      "parents": [
        "ab22f3f8766e1bf8a3e8f481c205c8f153dd200d"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 21 06:49:30 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 21 06:49:30 2023 -0700"
      },
      "message": "schbench: calculate RPS more often\n\nCalculating RPS every second instead of every interval gives us better\ndata.  This still prints the RPS only every interval seconds.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "ab22f3f8766e1bf8a3e8f481c205c8f153dd200d",
      "tree": "0c21474b1e028fd671741c4e66d878ca80be572b",
      "parents": [
        "d22e8e8a0c9fcd313229f5a9305436d13157844f"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 17 00:12:18 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 17 00:12:18 2023 -0700"
      },
      "message": "schbench: consistently use stderr for metric output\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "d22e8e8a0c9fcd313229f5a9305436d13157844f",
      "tree": "0d2642eb8eb09a844ace0dcbad6204e71cbea6c8",
      "parents": [
        "394be0023393d55ccb8fa064bc883b2d7ab94585"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Sat Apr 15 11:04:01 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Sat Apr 15 11:04:01 2023 -0700"
      },
      "message": "schbench: add README.md for documentation\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "394be0023393d55ccb8fa064bc883b2d7ab94585",
      "tree": "7b6de81c725dfaccac0e744c0dbfc27f9af55bf8",
      "parents": [
        "2449d446d138dc02bbd7b05740ca49fd0da481a1"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Sat Apr 15 10:38:18 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Sat Apr 15 10:38:18 2023 -0700"
      },
      "message": "schbench: fix recording oddities with small runtimes\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "2449d446d138dc02bbd7b05740ca49fd0da481a1",
      "tree": "2d92ce5beec6b95f43af522bbe5427ef0be0a299",
      "parents": [
        "d7ab55f76c0cfd67638446c69633e90ff557fff6"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 14 08:26:19 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 14 08:26:19 2023 -0700"
      },
      "message": "schbench: check for preemption after we grab the per-cpu lock\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "d7ab55f76c0cfd67638446c69633e90ff557fff6",
      "tree": "fc1ab610fc6d3ba68d2bca78a05ec556e2804dfe",
      "parents": [
        "4efcebec0c4efa31f145cce9291b9b317b110c33"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 14 08:07:41 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Apr 14 08:07:41 2023 -0700"
      },
      "message": "schbench: add -L to skip the per-cpu lock\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "4efcebec0c4efa31f145cce9291b9b317b110c33",
      "tree": "374f09f279807c6fbce48bebe39f7ac79be0f114",
      "parents": [
        "21591f881acd2ac7ce3a0979556961ec48be776b"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:47:42 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:53:25 2023 -0700"
      },
      "message": "schbench: fix pipe mode\n\nRecent changes made pipe mode do significantly more CPU work and also\nsleep in the worker thread.  This fixes things to properly focus on pipe\ntransfers.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "21591f881acd2ac7ce3a0979556961ec48be776b",
      "tree": "74b99845e28e1f4b4d9cd861840e1ef19f890895",
      "parents": [
        "5a425ee35b75f4bf001c1a16ad3fd5970f1a62a8"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:36:54 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:53:23 2023 -0700"
      },
      "message": "schbench: delete auto bench mode\n\nThis wasn\u0027t very useful, and didn\u0027t produce reliable results.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "5a425ee35b75f4bf001c1a16ad3fd5970f1a62a8",
      "tree": "5d6d3a7c8f5ae37bd70d1d96a664508cabce5d12",
      "parents": [
        "bad164cd303626007b2439010773b95ec16523c7"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue Apr 11 11:19:27 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:52:58 2023 -0700"
      },
      "message": "schbench: add per-cpu spin locking during the work\n\nReal workloads have performance impacts to scheduling the process away\nduring critical sections.  We could spend a lot of time perfecting the\nright set of cache misses to reflect those costs.\n\nOr, we could make a per-cpu spinlock that gets held while we\u0027re doing\nthe matrix math.  This is a pretty blunt hammer but it accurately\nreflects the impact of preemption on our workloads.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "bad164cd303626007b2439010773b95ec16523c7",
      "tree": "419ed0fe37c369b3baa69f774dcfed68391e58e8",
      "parents": [
        "cebdd4ed05011946e80a162fa38c52e5df5b37e4"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Apr 12 10:44:31 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:52:58 2023 -0700"
      },
      "message": "schbench: update the defaults\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "cebdd4ed05011946e80a162fa38c52e5df5b37e4",
      "tree": "6b896422fe80756de43ed3178e41f32dd0674f05",
      "parents": [
        "6809f4aea302c049062f481cd41ce641d04cbaf8"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Apr 12 09:49:36 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:52:58 2023 -0700"
      },
      "message": "schbench: add a calibration mode to help determine best parameters\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "6809f4aea302c049062f481cd41ce641d04cbaf8",
      "tree": "42bb36542a9e54b63c04ff89da4abe259745e288",
      "parents": [
        "00a252346f1656c521c8d05612abad7de0cfa8af"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue Apr 11 15:22:09 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:52:58 2023 -0700"
      },
      "message": "schbench: print different percentiles for latency vs RPS\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "00a252346f1656c521c8d05612abad7de0cfa8af",
      "tree": "2e4c78347b32c366652e01372c6a0365473bc96f",
      "parents": [
        "7c20fe7a418346c9dc139a70dd78fbbe8e423b38"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue Apr 11 14:25:46 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:52:58 2023 -0700"
      },
      "message": "schbench: record percentiles for RPS numbers\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "7c20fe7a418346c9dc139a70dd78fbbe8e423b38",
      "tree": "13104148960a82ad1e039b68b7360a775e5c2344",
      "parents": [
        "d0fbd8356c8a2a47afd806cbc2d993e5133f6de1"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 17:16:44 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:52:58 2023 -0700"
      },
      "message": "schbench: add a few sleeps to the work loop to simulate network traffic\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "d0fbd8356c8a2a47afd806cbc2d993e5133f6de1",
      "tree": "b1697d28da50934cd0451016691c14f082846f3a",
      "parents": [
        "b382a818908a6f2f140ef8d1aa027eed6931974a"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 15:45:52 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 12:52:51 2023 -0700"
      },
      "message": "schbench: get rid of the sleep time parameter\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "b382a818908a6f2f140ef8d1aa027eed6931974a",
      "tree": "916d58b9a119f6f0c9d19f63bdceae083ee8b6df",
      "parents": [
        "63d9aac6087e7ed5af0c72771acd2371daaa5713"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 15:42:29 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 11:00:03 2023 -0700"
      },
      "message": "schbench: print per-interval RPS stats\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "63d9aac6087e7ed5af0c72771acd2371daaa5713",
      "tree": "05be427361268947f3f233b8a199964fadc46a19",
      "parents": [
        "c76ad8e498fd0d5214b638ceedbfcb78b5b1068e"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 14:09:29 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 11:00:03 2023 -0700"
      },
      "message": "schbench: rework the RPS loop\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "c76ad8e498fd0d5214b638ceedbfcb78b5b1068e",
      "tree": "29e4f5df116bd54f7794e18c9c578e2c12fa88c9",
      "parents": [
        "e791e41f79579043a754e0bda175a4f606049558"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 10:13:39 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 13 10:59:56 2023 -0700"
      },
      "message": "schbench: record and print the individual request latencies\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "e791e41f79579043a754e0bda175a4f606049558",
      "tree": "489787955edb6f07b68b3affb22c92b82381b3c9",
      "parents": [
        "91ea787a2bc174cee5213934b60f9a6686fbdb4f"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 09:18:56 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 09:18:56 2023 -0700"
      },
      "message": "schbench: record and print the wakeup latencies\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "91ea787a2bc174cee5213934b60f9a6686fbdb4f",
      "tree": "c0eebe0facf241c0a68c494fd7d27b786536dded",
      "parents": [
        "2eef44790a4e1ff742db06efc5ab3f646d28b358"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 09:03:24 2023 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 10 09:03:24 2023 -0700"
      },
      "message": "schbench: get rid of the usec_spin based think time\n\nNow we\u0027re only using matrix math\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "2eef44790a4e1ff742db06efc5ab3f646d28b358",
      "tree": "6e5a5ff69b37b195dd4c1892deeb3c03eb78405f",
      "parents": [
        "ab4f089057b1c3d95ec86bb1d7e21a337fa02252"
      ],
      "author": {
        "name": "Roman Gushchin",
        "email": "guro@fb.com",
        "time": "Fri Dec 03 19:31:23 2021 -0800"
      },
      "committer": {
        "name": "Roman Gushchin",
        "email": "guro@fb.com",
        "time": "Fri Dec 03 19:35:53 2021 -0800"
      },
      "message": "schbench: record the execution time in the matrix multiplication mode\n\nIn the mode with the matrix multiplication (-n \u003cnumber\u003e) do record\nthe whole execution time, not only the wakeup latency. It should\nprovide a better idea of how good/bad are scheduling decisions in\nterms of cache locality, as well as total efficiency.\n\nSigned-off-by: Roman Gushchin \u003cguro@fb.com\u003e\n"
    },
    {
      "commit": "ab4f089057b1c3d95ec86bb1d7e21a337fa02252",
      "tree": "839f6b3818748ff18285e1a0ddb72a8eec1c52f7",
      "parents": [
        "0eda8062ee9b8129f5e18e285e3ab044a5835fb1"
      ],
      "author": {
        "name": "Roman Gushchin",
        "email": "guro@fb.com",
        "time": "Fri Dec 03 18:29:19 2021 -0800"
      },
      "committer": {
        "name": "Roman Gushchin",
        "email": "guro@fb.com",
        "time": "Fri Dec 03 19:35:53 2021 -0800"
      },
      "message": "schbench: add an option to multiply matrices instead of spinning\n\nAdd an option to emulate a cache and memory footprint by multiplying\nlarge matrices instead of busy looping. The multiplication is done\nin the most naive way to maximize the cache footprint.\n\nTwo new options are added:\n  -f: cache footprint in kB (def: 1536)\n  -n: how many times to multiply (def: 0)\n\nSigned-off-by: Roman Gushchin \u003cguro@fb.com\u003e\n"
    },
    {
      "commit": "0eda8062ee9b8129f5e18e285e3ab044a5835fb1",
      "tree": "76730e299f0195e971edb208447c9125c4a641b5",
      "parents": [
        "8ba833fa6a40bb4af2cb3f0490084e2b7834e840"
      ],
      "author": {
        "name": "Roman Gushchin",
        "email": "guro@fb.com",
        "time": "Fri Dec 03 18:33:49 2021 -0800"
      },
      "committer": {
        "name": "Roman Gushchin",
        "email": "guro@fb.com",
        "time": "Fri Dec 03 19:35:53 2021 -0800"
      },
      "message": "schbench: make percentiles printing prettier\n\nAlign numbers and highlight the 99.0%\u0027s asterisk.\n\nPrint this:\n\nLatency percentiles (usec) runtime 30 (s) (670 total samples)\n\t  50.0th: 95872      (345 samples)\n\t  75.0th: 115584     (158 samples)\n\t  90.0th: 129664     (103 samples)\n\t  95.0th: 132352     (34 samples)\n\t* 99.0th: 135424     (25 samples)\n\t  99.5th: 135936     (2 samples)\n\t  99.9th: 139008     (3 samples)\n\t  min\u003d26024, max\u003d138760\n\ninstead of:\n\nLatency percentiles (usec) runtime 30 (s) (4005 total samples)\n\t50.0th: 40 (2032 samples)\n\t75.0th: 1410 (972 samples)\n\t90.0th: 2868 (601 samples)\n\t95.0th: 4312 (229 samples)\n\t*99.0th: 12272 (131 samples)\n\t99.5th: 12944 (20 samples)\n\t99.9th: 18720 (16 samples)\n\tmin\u003d6, max\u003d23405\n\nSigned-off-by: Roman Gushchin \u003cguro@fb.com\u003e\n"
    },
    {
      "commit": "8ba833fa6a40bb4af2cb3f0490084e2b7834e840",
      "tree": "730e7e21e5cd6dbb1e4691b3d2bb920b8f33bf8f",
      "parents": [
        "e4aa540e1d709eeccbbb89686571fecca960d127"
      ],
      "author": {
        "name": "Roman Gushchin",
        "email": "guro@fb.com",
        "time": "Fri Dec 03 18:23:53 2021 -0800"
      },
      "committer": {
        "name": "Roman Gushchin",
        "email": "guro@fb.com",
        "time": "Fri Dec 03 18:24:01 2021 -0800"
      },
      "message": "schbench: fix long_options[]\n\nSome of the long_options[] elements are incorrect. Fix them.\n\nSigned-off-by: Roman Gushchin \u003cguro@fb.com\u003e\n"
    },
    {
      "commit": "e4aa540e1d709eeccbbb89686571fecca960d127",
      "tree": "b6ffa453c29d993b388e989e91c1ed217b6836ec",
      "parents": [
        "5d65fcd09f7026b2af2cacf3204b26a0b0006b9e"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Sep 09 16:08:44 2021 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Sep 09 16:08:44 2021 -0700"
      },
      "message": "Make sure rps isn\u0027t zero in auto_rps mode.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "5d65fcd09f7026b2af2cacf3204b26a0b0006b9e",
      "tree": "c7cb058e24322afb3cc74baabd33967b317190ea",
      "parents": [
        "017c516570ac0a2e02c4dfcd541f58deddc7cddb"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Apr 21 11:40:12 2021 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Apr 21 11:48:15 2021 -0700"
      },
      "message": "schbench: move the auto_rps to the sleeper thread\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "017c516570ac0a2e02c4dfcd541f58deddc7cddb",
      "tree": "fe9e7d9b4a6298122fac429b2dbb33704b979cbd",
      "parents": [
        "3dc293f780fb4b2a5216a0bf83633a050d36c8f6"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 19 15:55:34 2021 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 19 15:55:34 2021 -0700"
      },
      "message": "schbench: add jitter to CPU time with -j\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "3dc293f780fb4b2a5216a0bf83633a050d36c8f6",
      "tree": "bd03634aff8d85ccd64eaceba80d9b82ac361f8c",
      "parents": [
        "abe4f968db8b3f0884f11dcf97e06565bfac7bf5"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 19 15:44:25 2021 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 19 15:44:25 2021 -0700"
      },
      "message": "schbench: add auto_rps\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "abe4f968db8b3f0884f11dcf97e06565bfac7bf5",
      "tree": "460b8d86cdcbf784bd8614ee56943499a90a1406",
      "parents": [
        "93483e495dc6b3e2ddc735778c71823e1e8ddb13"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Oct 23 13:09:06 2020 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri Oct 23 13:09:06 2020 -0700"
      },
      "message": "schbench: add -C message_cputime\n\nThis adds some thinktime to the messegner thread.  Also fixes up\nRPS mode.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "93483e495dc6b3e2ddc735778c71823e1e8ddb13",
      "tree": "d9fabbe6a8da5b7e52431acb71be664629dd7a9d",
      "parents": [
        "0624fc7025b1edfc65f03eb8aeac56a9bee50c86"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Oct 22 13:30:19 2020 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Oct 22 13:30:19 2020 -0700"
      },
      "message": "schbench: allow -r 0 to indicate we want to run forever\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "0624fc7025b1edfc65f03eb8aeac56a9bee50c86",
      "tree": "750752b4fa2eb7b165aea0eec8a28f8389b9db13",
      "parents": [
        "4533839995412fbe454024e497678c4e4cdd827e"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Oct 22 13:25:54 2020 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Oct 22 13:25:54 2020 -0700"
      },
      "message": "schbench: add -z to zero stats after N seconds\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "4533839995412fbe454024e497678c4e4cdd827e",
      "tree": "90f03c0ba8b5d34794e44caa0b4a6807eac5ac6b",
      "parents": [
        "eb6352ac9acde14e5a944ed33c0df410a36f6086"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Oct 22 11:25:55 2020 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Oct 22 11:25:55 2020 -0700"
      },
      "message": "schedstat: fix typo timeslides\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "eb6352ac9acde14e5a944ed33c0df410a36f6086",
      "tree": "78b35641e0e7fb41ab99d732ec3e43d5e6dc5752",
      "parents": [
        "1a424054bd42a0b7486c731fe71d727e267c9f7b"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Oct 22 11:24:47 2020 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Oct 22 11:24:47 2020 -0700"
      },
      "message": "schbench: count the size of each histogram bucket\n\nprinting this makes it a little easier to understand how often the\nwakeups are happening\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "1a424054bd42a0b7486c731fe71d727e267c9f7b",
      "tree": "fbf8024581102c122eaa049f93faf8e2a3ff60b9",
      "parents": [
        "8d43844d9a9b85debf06520057eb154949cda9de"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Oct 21 10:50:55 2020 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Oct 21 10:50:55 2020 -0700"
      },
      "message": "schbench: add schedstat.py\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "8d43844d9a9b85debf06520057eb154949cda9de",
      "tree": "ce59325d5c417e7dee0a54674da952700ed9a7d2",
      "parents": [
        "99faedcfc2edee8dc17e10a94fe6d5d136dc81d5"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Oct 21 10:48:40 2020 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Oct 21 10:48:40 2020 -0700"
      },
      "message": "schbench: add warmup and print the stats every N seconds\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "99faedcfc2edee8dc17e10a94fe6d5d136dc81d5",
      "tree": "9920fb84abc9f435020d83fd9327be480828b912",
      "parents": [
        "3d16b2322fbc2eb674a60e925d29a9a13d5240c7",
        "cb1e9b9dee010bbc8f937855f15c35cc13243d11"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Jan 06 05:49:01 2020 -0800"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Jan 06 05:49:01 2020 -0800"
      },
      "message": "Merge git://github.com/kdrag0n/schbench\n\nMerge in support for arm64 and ppc64\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "cb1e9b9dee010bbc8f937855f15c35cc13243d11",
      "tree": "9920fb84abc9f435020d83fd9327be480828b912",
      "parents": [
        "8d075b39d6a4cbb362b24912eddcdd362bf09649",
        "dd2adced5e7a2f853f7ef329c8cf43b095912da2"
      ],
      "author": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Dec 17 21:07:27 2019 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 17 21:07:27 2019 -0800"
      },
      "message": "Make schbench work for powerpc64 (#1)\n\nMake schbench work for powerpc64"
    },
    {
      "commit": "dd2adced5e7a2f853f7ef329c8cf43b095912da2",
      "tree": "9920fb84abc9f435020d83fd9327be480828b912",
      "parents": [
        "8d075b39d6a4cbb362b24912eddcdd362bf09649"
      ],
      "author": {
        "name": "Srikar Dronamraju",
        "email": "srikar@linux.vnet.ibm.com",
        "time": "Fri Dec 13 09:59:02 2019 +0530"
      },
      "committer": {
        "name": "Srikar Dronamraju",
        "email": "srikar@linux.vnet.ibm.com",
        "time": "Fri Dec 13 10:03:30 2019 +0530"
      },
      "message": "Make schbench work for powerpc64\n\nAdd nop macro for powerpc64\n\nSigned-off-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "8d075b39d6a4cbb362b24912eddcdd362bf09649",
      "tree": "f7a069981f4202da84bd33a947e8e83efbf635ac",
      "parents": [
        "67f973461e4afa2fe45a9c8fcae546b65ab6df2d"
      ],
      "author": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Aug 20 14:42:43 2019 -0700"
      },
      "committer": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Aug 20 14:43:56 2019 -0700"
      },
      "message": "schbench: Fix GCC 9 warnings\n\nSigned-off-by: Danny Lin \u003cdanny@kdrag0n.dev\u003e\n"
    },
    {
      "commit": "67f973461e4afa2fe45a9c8fcae546b65ab6df2d",
      "tree": "27968dd66423f67c7df37bbd4140d9ac0b333ca8",
      "parents": [
        "3faa8b077347d597220adf73c02388c3308994c5"
      ],
      "author": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Aug 20 14:36:17 2019 -0700"
      },
      "committer": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Aug 20 14:43:56 2019 -0700"
      },
      "message": "gitignore: Ignore build artifacts\n\nSigned-off-by: Danny Lin \u003cdanny@kdrag0n.dev\u003e\n"
    },
    {
      "commit": "3faa8b077347d597220adf73c02388c3308994c5",
      "tree": "2ece2b59e556f8ce3cbc0821e53d6efced32b6f0",
      "parents": [
        "0769517adb9901f56933ba2e828c22d8364fbf50"
      ],
      "author": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Aug 20 14:30:06 2019 -0700"
      },
      "committer": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Aug 20 14:43:56 2019 -0700"
      },
      "message": "schbench: Don\u0027t print unnecessary decimal digits in percentiles\n\nThe percentiles used are 50, 75, 90, 95, 99, 99.5, and 99.9. They only\nrequire one digit of precision at most, so there\u0027s no reason to print 4\ndigits.\n\nSigned-off-by: Danny Lin \u003cdanny@kdrag0n.dev\u003e\n"
    },
    {
      "commit": "0769517adb9901f56933ba2e828c22d8364fbf50",
      "tree": "34da26d028bb3a3d5a03ee423a53b7cd4abd5a76",
      "parents": [
        "3d16b2322fbc2eb674a60e925d29a9a13d5240c7"
      ],
      "author": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Aug 20 14:29:22 2019 -0700"
      },
      "committer": {
        "name": "Danny Lin",
        "email": "danny@kdrag0n.dev",
        "time": "Tue Aug 20 14:43:56 2019 -0700"
      },
      "message": "schbench: Add support for AArch64 CPUs\n\nInstruction derived from the Linux kernel\u0027s cpu_relax() implementation\nfor arm64.\n\nSigned-off-by: Danny Lin \u003cdanny@kdrag0n.dev\u003e\n"
    },
    {
      "commit": "3d16b2322fbc2eb674a60e925d29a9a13d5240c7",
      "tree": "c5ade6da937efa9952c0ff1cf89a048ca748e534",
      "parents": [
        "3dd73fc84971debc6447d4a7ca5ba59dabe60f1c"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Tue May 24 10:38:22 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 25 07:29:22 2016 -0700"
      },
      "message": "schbench: report both p95 and p99  in rps mode\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "3dd73fc84971debc6447d4a7ca5ba59dabe60f1c",
      "tree": "08b574831d6d9ab9ac1bea431ae26fb9c191307e",
      "parents": [
        "e7de637ed464ade07a45536393d760d5d39cce54"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri May 20 09:56:19 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed May 25 07:29:22 2016 -0700"
      },
      "message": "Add RPS mode\n\nThis adds -R (--rps) to try and simulate a server thread handing out\nrequests to workers.  Instead of focusing on wakeup latency, this\ncalculates the latency from the time the request is queued up for a\nworker to the time the worker finishes the request.\n\nTo help normalize the results, we subtract the cputime (--cputime) of\neach request from the latency number, so we end up with the extra time\nwe spent waiting between when the request was queued to the time we\ncompleted it.\n\nTo normalize things a little more, a p99 summary is given where we\ndivide this extra latency by the cputime.  For example, with the default\ncputime of 30ms, if the delay is 15ms, we\u0027d print a latency of 50% of\nthe cputime.\n\nThe real advantage for -R is to use it along with --auto to process a range\nof workloads all at once.\n\nschbench -m 2 -t 23 -R 1 -a -r 10\n\nUsing -R 1 tells it to guess a good starting point, and keep bumping the\nRPS until the delay gets too long.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "e7de637ed464ade07a45536393d760d5d39cce54",
      "tree": "9def9e0dc2c5db1fb7238bf34f97d8c7a718ddab",
      "parents": [
        "449fdc94ad74674dd0a026f14dd0d03331bab198"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@fb.com",
        "time": "Fri May 06 10:24:48 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri May 06 10:24:48 2016 -0700"
      },
      "message": "schbench: get rid of latency tracking for \"over\"\n\nThis was cut and paste from fio and doesn\u0027t really belong.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "449fdc94ad74674dd0a026f14dd0d03331bab198",
      "tree": "961d75e78c9a1cda173c4db94c19f7c2fa5b0f81",
      "parents": [
        "5b436cfea2a037eb2ff44f3794245e40d2d0762c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri May 06 10:16:38 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Fri May 06 10:16:38 2016 -0700"
      },
      "message": "schbench: fix lost wakeups\n\nPeter had trouble in pipe mode with missing the final wakeup after\nsleep_for_runtime decided the run was over.  End result was stuck\nprocesses.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "5b436cfea2a037eb2ff44f3794245e40d2d0762c",
      "tree": "db6e750c43464d22113170867d43cd7d0f2d2898",
      "parents": [
        "5e047f90ba8153b9ced1483ab8f4c59a39cb5381"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 08:28:08 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 08:28:08 2016 -0700"
      },
      "message": "Force cputime/sleeptime to zero in pipe mode, unless user supplies values\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "5e047f90ba8153b9ced1483ab8f4c59a39cb5381",
      "tree": "843ba02a7f5014b24e19d59660d8dbf15dd50af0",
      "parents": [
        "903b6dd313dc236fbcdfc6109fd69229cef099bf"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 07:03:33 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 07:05:19 2016 -0700"
      },
      "message": "schbench: make -p take the size of the pipe transfer as an argument\n\nThis also fixes things to post the threads before calling pthread_join\non them, since they might have been sleeping while the global stop was\nset.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "903b6dd313dc236fbcdfc6109fd69229cef099bf",
      "tree": "d4e77cf440f30b7bd45959a649971b3133a994a5",
      "parents": [
        "9e78506eae2524b6c34861030f18076423ef00b8"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 06:25:28 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 06:25:57 2016 -0700"
      },
      "message": "Makefile: use -O2\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "9e78506eae2524b6c34861030f18076423ef00b8",
      "tree": "3cd612b6ba2aa74af5404295cece275be0d7fbb4",
      "parents": [
        "59d8aed9a4a9ee46f030b68b5c4b86e4dc6e3238"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 06:18:11 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 06:25:57 2016 -0700"
      },
      "message": "schbench: move decision to stop into main thread\n\nThe message threads were checking gtod to see if they had exceeded the\nruntime, which meant they had to use timeouts for fpost().  This changes\nthe main thread to sleep until the run time is up, and then flip the\nglobal stopping var.\n\nThis allows the mesage threads to avoid sending a timeout to fpost,\nlowering overhead.  The timeout can also hide synchronization bugs in\nthe post/wait setup, this way we\u0027ll find any problems more easily.\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "59d8aed9a4a9ee46f030b68b5c4b86e4dc6e3238",
      "tree": "27a1f6186405567c7162e0db15d2954fe39d10ee",
      "parents": [
        "3fb1b2cf4ff84e90c9d5a29b68d85abfe7005655"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 06:04:12 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 06:25:57 2016 -0700"
      },
      "message": "schbench: pretty print the transfer rate instead of using loops/sec\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "3fb1b2cf4ff84e90c9d5a29b68d85abfe7005655",
      "tree": "104590b03ff6b6184815be12763cb7ee6291ff72",
      "parents": [
        "9458e8ceb0815fe794b145f6c93ba7dbf70b078d"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Apr 06 16:10:26 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Thu Apr 07 06:25:57 2016 -0700"
      },
      "message": "scbhench: add -p for simulating a pipe between the message / worker threads\n\nThis also switches us to private futexes (much faster) and fixes -m to\nactually work\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "9458e8ceb0815fe794b145f6c93ba7dbf70b078d",
      "tree": "112a74afcf2e8e88fd975332b8907108861799cd",
      "parents": [
        "36d859a9a857ab0524dce8d4eaf8e328ef53f9c2"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Apr 06 09:43:59 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Wed Apr 06 09:43:59 2016 -0700"
      },
      "message": "Fixup defaults\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    },
    {
      "commit": "36d859a9a857ab0524dce8d4eaf8e328ef53f9c2",
      "tree": "20074e603d5ad14474a6d948b4320cd538f5e20f",
      "parents": [],
      "author": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 04 08:00:11 2016 -0700"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "clm@fb.com",
        "time": "Mon Apr 04 08:00:11 2016 -0700"
      },
      "message": "schbench: measure scheduler wakeup latencies\n\nSigned-off-by: Chris Mason \u003cclm@fb.com\u003e\n"
    }
  ]
}
