)]}'
{
  "commit": "da030739b320c3549fadb298fc40b12bf411c0d3",
  "tree": "00a252f445683a095359ddb19e79abdc88b4f390",
  "parents": [
    "e4369610e7d7574361bfac1c460fb110f46cbc3a"
  ],
  "author": {
    "name": "Ben Vanik",
    "email": "ben.vanik@gmail.com",
    "time": "Wed Nov 09 01:03:36 2022 +0000"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Nov 09 01:03:36 2022 +0000"
  },
  "message": "Changing default bytecode dispatch away from computed goto. (#11090)\n\nIt\u0027s a fairly marginal benefit to very heavy scalar VMVX workloads\r\n(~10-20%) but adds 20-30KB to the binary size and most users care more\r\nabout that. Leaving the code path around so we can turn it back on if\r\nneeded as workloads change.\r\n\r\n```\r\nben@noxa-pc:/mnt/d/Dev/iree$ ../iree-build-wsl/runtime/src/iree/vm/bytecode_module_benchmark_switch --benchmark_min_time\u003d10\r\n2022-11-08T15:25:08-08:00\r\nRunning ../iree-build-wsl/runtime/src/iree/vm/bytecode_module_benchmark_switch\r\nRun on (64 X 3700 MHz CPU s)\r\nLoad Average: 0.52, 0.58, 0.59\r\n---------------------------------------------------------------------------------\r\nBenchmark                                       Time             CPU   Iterations\r\n---------------------------------------------------------------------------------\r\nBM_ModuleCreate                              1665 ns         1664 ns      8452830\r\nBM_ModuleCreateState                         67.7 ns         67.7 ns    206451613\r\nBM_FullModuleInit                            1698 ns         1699 ns      8296296\r\nBM_EmptyFuncReference                        1.19 ns         1.19 ns   1000000000\r\nBM_EmptyFuncBytecode                         55.2 ns         55.2 ns    256000000\r\nBM_CallInternalFuncReference                 1.53 ns         1.53 ns   1000000000\r\nBM_CallInternalFuncBytecode                  43.0 ns         43.0 ns    324637700\r\nBM_CallImportedFuncBytecode                  48.0 ns         48.0 ns    291856680\r\nBM_LoopSumReference/100000                   2.18 ns         2.19 ns   1000000000\r\nBM_LoopSumBytecode/100000                    5.27 ns         5.27 ns   1000000000\r\nBM_BufferReduceReference/100000              2.09 ns         2.09 ns   1000000000\r\nBM_BufferReduceBytecode/100000               14.2 ns         14.2 ns    984700000\r\nBM_BufferReduceBytecodeUnrolled/100000       12.6 ns         12.6 ns   1000000000\r\n```\r\n```\r\nben@noxa-pc:/mnt/d/Dev/iree$ ../iree-build-wsl/runtime/src/iree/vm/bytecode_module_benchmark_goto --benchmark_min_time\u003d10\r\n2022-11-08T15:28:05-08:00\r\nRunning ../iree-build-wsl/runtime/src/iree/vm/bytecode_module_benchmark_goto\r\nRun on (64 X 3700 MHz CPU s)\r\nLoad Average: 0.52, 0.58, 0.59\r\n---------------------------------------------------------------------------------\r\nBenchmark                                       Time             CPU   Iterations\r\n---------------------------------------------------------------------------------\r\nBM_ModuleCreate                              1638 ns         1638 ns      8615385\r\nBM_ModuleCreateState                         47.0 ns         47.0 ns    297674419\r\nBM_FullModuleInit                            1677 ns         1677 ns      8373832\r\nBM_EmptyFuncReference                        1.19 ns         1.19 ns   1000000000\r\nBM_EmptyFuncBytecode                         54.0 ns         54.0 ns    258213256\r\nBM_CallInternalFuncReference                 1.53 ns         1.53 ns   1000000000\r\nBM_CallInternalFuncBytecode                  41.9 ns         41.9 ns    334328360\r\nBM_CallImportedFuncBytecode                  48.0 ns         48.0 ns    294252880\r\nBM_LoopSumReference/100000                   2.19 ns         2.19 ns   1000000000\r\nBM_LoopSumBytecode/100000                    4.64 ns         4.64 ns   1000000000\r\nBM_BufferReduceReference/100000              2.09 ns         2.09 ns   1000000000\r\nBM_BufferReduceBytecode/100000               10.1 ns         10.1 ns   1000000000\r\nBM_BufferReduceBytecodeUnrolled/100000       10.1 ns         10.1 ns   1000000000\r\n```",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "81a64d4b434fe0010b2d9152dd5fb3dcbc370419",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/base/config.h",
      "new_id": "074a3e9831cd2b2b6d281b60361b559631f4ee0e",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/base/config.h"
    },
    {
      "type": "modify",
      "old_id": "3b073d2aef919a15d92109d3b59e8ef1d8de37df",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/vm/bytecode_dispatch_util.h",
      "new_id": "2144769f4b5aea01544ce931ac1c26a1ede56a40",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/vm/bytecode_dispatch_util.h"
    }
  ]
}
