)]}'
{
  "commit": "a87eeec9bff6d6f283e752cd2d41e6521b55555a",
  "tree": "8df899853d609d7ebdf9c0f072ec86f459c09c10",
  "parents": [
    "32576082765011ba65a306acd4d28d3d8c4f0142"
  ],
  "author": {
    "name": "Jie",
    "email": "jiej@nvidia.com",
    "time": "Mon Mar 04 13:02:40 2019 -0800"
  },
  "committer": {
    "name": "Facebook Github Bot",
    "email": "facebook-github-bot@users.noreply.github.com",
    "time": "Mon Mar 04 13:11:47 2019 -0800"
  },
  "message": "int32 indexing for Tensor Iterator Reduction (#17428)\n\nSummary:\n1. Enabling int32 indexing for cases where TI cannot accumulate in output due to\nincompatible data types (e.g. Welford).\n2. Updating Welford kernel to use int32 instead of int64 indexing on GPU.\n\nThis change improves performance for torch.var / torch.std\n\nImplementation:\n1. Allocated extra buffer to handle accumulation between sub Tensor Iterators.\n2. Removed int64 indexing in gpu_reduce_kernel\n3. WelfordOps now supports index type / combination typeas a template parameter.\nWhile GPU uses int32_t and float, CPU implementation uses int64_t and double.\nPull Request resolved: https://github.com/pytorch/pytorch/pull/17428\n\nDifferential Revision: D14264608\n\nPulled By: umanwizard\n\nfbshipit-source-id: 3eb54451de925b469dbc1127e5ea7443c4431036\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2cd6afd533066f687b1536fa33b0b5504a180d1e",
      "old_mode": 33188,
      "old_path": "aten/src/ATen/native/SharedReduceOps.h",
      "new_id": "ab07791196aeb3e31c25338b21bb6f12ff599b84",
      "new_mode": 33188,
      "new_path": "aten/src/ATen/native/SharedReduceOps.h"
    },
    {
      "type": "modify",
      "old_id": "56e36cdb19a2f17ac1268e848d25fbf1ae10b250",
      "old_mode": 33188,
      "old_path": "aten/src/ATen/native/cpu/ReduceOpsKernel.cpp",
      "new_id": "2f78b59b7d43f111817bf16d5afbbdc555ae9042",
      "new_mode": 33188,
      "new_path": "aten/src/ATen/native/cpu/ReduceOpsKernel.cpp"
    },
    {
      "type": "modify",
      "old_id": "891e397e969f78c15c032804c8d06104e7323f59",
      "old_mode": 33188,
      "old_path": "aten/src/ATen/native/cuda/Reduce.cuh",
      "new_id": "9f27627d9c2ef8a9e5c92a57ff0465596dc9c47b",
      "new_mode": 33188,
      "new_path": "aten/src/ATen/native/cuda/Reduce.cuh"
    },
    {
      "type": "modify",
      "old_id": "8245efe67aad2d44eea9c997e09e03cdf66c7815",
      "old_mode": 33188,
      "old_path": "aten/src/ATen/native/cuda/ReduceOpsKernel.cu",
      "new_id": "3a47902b3d73e75bd0c651cdd3360c9631a11051",
      "new_mode": 33188,
      "new_path": "aten/src/ATen/native/cuda/ReduceOpsKernel.cu"
    }
  ]
}
