)]}'
{
  "commit": "2dda92ff6f9f07eeb110ecbf0fc2d7a0ddd27f9d",
  "tree": "360ba410092470d549d245a35c825069816e8cda",
  "parents": [
    "301f6c8019bea813b039c3d376a6464a0e117dce"
  ],
  "author": {
    "name": "Keith Randall",
    "email": "khr@golang.org",
    "time": "Tue Sep 07 09:44:29 2021 -0700"
  },
  "committer": {
    "name": "Keith Randall",
    "email": "khr@golang.org",
    "time": "Mon Sep 27 20:53:51 2021 +0000"
  },
  "message": "runtime: make slice growth formula a bit smoother\n\nInstead of growing 2x for \u003c 1024 elements and 1.25x for \u003e\u003d 1024 elements,\nuse a somewhat smoother formula for the growth factor. Start reducing\nthe growth factor after 256 elements, but slowly.\n\nstarting cap    growth factor\n256             2.0\n512             1.63\n1024            1.44\n2048            1.35\n4096            1.30\n\n(Note that the real growth factor, both before and now, is somewhat\nlarger because we round up to the next size class.)\n\nThis CL also makes the growth monotonic (larger initial capacities\nmake larger final capacities, which was not true before). See discussion\nat https://groups.google.com/g/golang-nuts/c/UaVlMQ8Nz3o\n\n256 was chosen as the threshold to roughly match the total number of\nreallocations when appending to eventually make a very large\nslice. (We allocate smaller when appending to capacities [256,1024]\nand larger with capacities [1024,...]).\n\nChange-Id: I876df09fdc9ae911bb94e41cb62675229cb10512\nReviewed-on: https://go-review.googlesource.com/c/go/+/347917\nTrust: Keith Randall \u003ckhr@golang.org\u003e\nTrust: Martin Möhrmann \u003cmartin@golang.org\u003e\nRun-TryBot: Keith Randall \u003ckhr@golang.org\u003e\nTryBot-Result: Go Bot \u003cgobot@golang.org\u003e\nReviewed-by: Martin Möhrmann \u003cmartin@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "33b81d72092e19c1020893fb00b7baa8020f07be",
      "old_mode": 33188,
      "old_path": "src/reflect/value.go",
      "new_id": "786c494166d09a046fcb0c626a8fab6a0ade9a40",
      "new_mode": 33188,
      "new_path": "src/reflect/value.go"
    },
    {
      "type": "modify",
      "old_id": "e8267be885df1670ed24265c8e5a890709f72a3b",
      "old_mode": 33188,
      "old_path": "src/runtime/slice.go",
      "new_id": "cfa862e047b05ccd7486f5c62cc8031bfcf1764d",
      "new_mode": 33188,
      "new_path": "src/runtime/slice.go"
    }
  ]
}
