Kernels
wyldecat github-actions[bot] commited on
Commit
313d56a
·
unverified ·
1 Parent(s): debafde

Revert "fix: disable CUDA graphs in Newton-Schulz for cpu_offload compatibility" (#29)

Browse files

* Revert "fix: disable CUDA graphs in Newton-Schulz for cpu_offload compatibility"

* Add built binary [skip-build]

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Files changed (46) hide show
  1. build/torch210-cxx11-cu126-x86_64-linux/_ops.py +3 -3
  2. build/torch210-cxx11-cu126-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  3. build/torch210-cxx11-cu126-x86_64-linux/newton_schulz.py +4 -0
  4. build/torch210-cxx11-cu128-x86_64-linux/_ops.py +3 -3
  5. build/torch210-cxx11-cu128-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  6. build/torch210-cxx11-cu128-x86_64-linux/newton_schulz.py +4 -0
  7. build/torch210-cxx11-cu130-x86_64-linux/_ops.py +3 -3
  8. build/torch210-cxx11-cu130-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  9. build/torch210-cxx11-cu130-x86_64-linux/newton_schulz.py +4 -0
  10. build/torch210-cxx11-rocm70-x86_64-linux/_ops.py +3 -3
  11. build/torch210-cxx11-rocm70-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  12. build/torch210-cxx11-rocm70-x86_64-linux/newton_schulz.py +4 -0
  13. build/torch210-cxx11-rocm71-x86_64-linux/_ops.py +3 -3
  14. build/torch210-cxx11-rocm71-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  15. build/torch210-cxx11-rocm71-x86_64-linux/newton_schulz.py +4 -0
  16. build/torch28-cxx11-cu126-x86_64-linux/_ops.py +3 -3
  17. build/torch28-cxx11-cu126-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  18. build/torch28-cxx11-cu126-x86_64-linux/newton_schulz.py +4 -0
  19. build/torch28-cxx11-cu128-x86_64-linux/_ops.py +3 -3
  20. build/torch28-cxx11-cu128-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  21. build/torch28-cxx11-cu128-x86_64-linux/newton_schulz.py +4 -0
  22. build/torch28-cxx11-cu129-x86_64-linux/_ops.py +3 -3
  23. build/torch28-cxx11-cu129-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  24. build/torch28-cxx11-cu129-x86_64-linux/newton_schulz.py +4 -0
  25. build/torch28-cxx11-rocm63-x86_64-linux/_ops.py +3 -3
  26. build/torch28-cxx11-rocm63-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  27. build/torch28-cxx11-rocm63-x86_64-linux/newton_schulz.py +4 -0
  28. build/torch28-cxx11-rocm64-x86_64-linux/_ops.py +3 -3
  29. build/torch28-cxx11-rocm64-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  30. build/torch28-cxx11-rocm64-x86_64-linux/newton_schulz.py +4 -0
  31. build/torch29-cxx11-cu126-x86_64-linux/_ops.py +3 -3
  32. build/torch29-cxx11-cu126-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  33. build/torch29-cxx11-cu126-x86_64-linux/newton_schulz.py +4 -0
  34. build/torch29-cxx11-cu128-x86_64-linux/_ops.py +3 -3
  35. build/torch29-cxx11-cu128-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  36. build/torch29-cxx11-cu128-x86_64-linux/newton_schulz.py +4 -0
  37. build/torch29-cxx11-cu130-x86_64-linux/_ops.py +3 -3
  38. build/torch29-cxx11-cu130-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  39. build/torch29-cxx11-cu130-x86_64-linux/newton_schulz.py +4 -0
  40. build/torch29-cxx11-rocm63-x86_64-linux/_ops.py +3 -3
  41. build/torch29-cxx11-rocm63-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  42. build/torch29-cxx11-rocm63-x86_64-linux/newton_schulz.py +4 -0
  43. build/torch29-cxx11-rocm64-x86_64-linux/_ops.py +3 -3
  44. build/torch29-cxx11-rocm64-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} +1 -1
  45. build/torch29-cxx11-rocm64-x86_64-linux/newton_schulz.py +4 -0
  46. torch-ext/optimizer/newton_schulz.py +4 -0
build/torch210-cxx11-cu126-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch210-cxx11-cu126-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:a45eb1ca39a9122a7ec8171ecc1ed8d46b0bd6ec6fcf66e1f5635f2ba8b946ce
3
  size 1940944
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cb6163428ce86500d61c2b765eecd7eb6f31c092066278e1d1af7a0848dc5126
3
  size 1940944
build/torch210-cxx11-cu126-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch210-cxx11-cu128-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch210-cxx11-cu128-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:63fcd4e511d075431c2e7e2fefbb96dcced540e2c0ca1316faf29fdfd78e253a
3
  size 2004144
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:017323d479e8fbd3ed1f550f95fc4ba9f2e304dbe9351c0eaa75543ebe775e18
3
  size 2004144
build/torch210-cxx11-cu128-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch210-cxx11-cu130-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch210-cxx11-cu130-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:62348f4dd6a65cfc98cf101dff522ad8ae88c56ee99fb7cfed2c33b3222262d8
3
  size 2004728
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:783a161f2d28e4244226c9d6e59ac33f74f7a79aad17c06e8ce027dd6182e03c
3
  size 2004728
build/torch210-cxx11-cu130-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch210-cxx11-rocm70-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch210-cxx11-rocm70-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c9d1940e448de8c2290bb3142a1d41433731dba06c6d68738f974af26cb4f240
3
  size 1866400
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8ec2fcc8a9dc8a1e4aa4e925eaee33613177873e474e8d627bf844dae80f5f8b
3
  size 1866400
build/torch210-cxx11-rocm70-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch210-cxx11-rocm71-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch210-cxx11-rocm71-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:1eb0a09bd1b20303563fe0cb3e8e2234dae40241e3d0d56502fc5a6ae442588f
3
  size 1866112
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:18373b2e448071735ce724008122f179dd814986925c9cf0fc03f32201b2b1fa
3
  size 1866112
build/torch210-cxx11-rocm71-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch28-cxx11-cu126-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch28-cxx11-cu126-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:14140b8568b7a04120bf30a13f95a5dfa44255d7d107c0330b61ce92e79404d0
3
  size 1936664
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d2db9c7fb764a1fae1872779bc9ffac2aff18d14a238111d6b8b53b7d3dfa0d3
3
  size 1936664
build/torch28-cxx11-cu126-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch28-cxx11-cu128-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch28-cxx11-cu128-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:b8a8e75d22105a30822529b34963a13a0a60a20a862bc7da971857f54008105c
3
  size 1999872
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b1ddfe7e38a9213d5dede8052c81b78eca952aef122d4da919950ff504dc3908
3
  size 1999872
build/torch28-cxx11-cu128-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch28-cxx11-cu129-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch28-cxx11-cu129-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:69697c5e77ccd05e26a3eca114732d905f9c3b8c68d335b13f129c56a710c7a3
3
  size 1999872
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:db68ba26f1b022f56a5ab4e6e0204bf26df8922750f32f21be0ad76e2674b717
3
  size 1999872
build/torch28-cxx11-cu129-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch28-cxx11-rocm63-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch28-cxx11-rocm63-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:01a9dda5ac371798b9fd86b77b8cf7b572721a423ee69971910abe69a62d88fd
3
  size 1865080
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5a6a8788f055b22d594330fc06487ae2c6eeb2b64e0ab0132b68036a78560cf6
3
  size 1865080
build/torch28-cxx11-rocm63-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch28-cxx11-rocm64-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch28-cxx11-rocm64-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c1fb5220ced504ce27281ceb69fc21ce69de51baad5485a67973bb6be489aeb9
3
  size 1865168
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6e5e17fd042010ec06456f5885603c4e38476981d43adb1cc99ea6dbe5f57c6f
3
  size 1865168
build/torch28-cxx11-rocm64-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch29-cxx11-cu126-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch29-cxx11-cu126-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:930e785c6e2e19242fca7a43c1384693552777d4e0d07ba52558d1212bc158fd
3
  size 1936664
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f6b4b64b9e80383e0e1e9d5482f39dc28256bf901211d60deda16d905f198e70
3
  size 1936664
build/torch29-cxx11-cu126-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch29-cxx11-cu128-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch29-cxx11-cu128-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:b49a73f9b90d9962a9bf859d85678dfd4f042762a561287098c30af2786779fd
3
  size 1999872
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:52bc357d5a5d09094e142d1bf87e9a2ba819a6770b8b34ab9469ceb2414ad29e
3
  size 1999872
build/torch29-cxx11-cu128-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch29-cxx11-cu130-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch29-cxx11-cu130-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:818efe7b03956810294c938e701163f7c06285e72631a5fb78b4f82eba72d8a6
3
  size 2000456
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:faa0fc60fea48f7ba85933fb35d3c96afb6f5b357d4e28565e8112848fed890a
3
  size 2000456
build/torch29-cxx11-cu130-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch29-cxx11-rocm63-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch29-cxx11-rocm63-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:51e9488c2003b603f0c9f09c03e7ddfb576074f2fdc6d94363e7dfd07f5a7111
3
  size 1865112
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d8cf990229d1c3dc8378e74487af28ab48ffb91ec12869ddb0839d3b4cddc03e
3
  size 1865112
build/torch29-cxx11-rocm63-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
build/torch29-cxx11-rocm64-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _optimizer_2dce952_dirty
3
- ops = torch.ops._optimizer_2dce952_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_optimizer_2dce952_dirty::{op_name}"
 
1
  import torch
2
+ from . import _optimizer_38f9b8e_dirty
3
+ ops = torch.ops._optimizer_38f9b8e_dirty
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_optimizer_38f9b8e_dirty::{op_name}"
build/torch29-cxx11-rocm64-x86_64-linux/{_optimizer_2dce952_dirty.abi3.so → _optimizer_38f9b8e_dirty.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:887bca38f051d28d35af84921d78943d2eff7a3d86a48c0f29f0e908ae577d0c
3
  size 1865232
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fbdc2be035c0380bdd9ea10a0f913ecf5b6be29d4d7d74e1bd4056143393f28d
3
  size 1865232
build/torch29-cxx11-rocm64-x86_64-linux/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()
torch-ext/optimizer/newton_schulz.py CHANGED
@@ -213,8 +213,10 @@ def zeropower_via_newtonschulz5(G, steps=5):
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
 
216
  "shape_padding": False
217
  })
 
218
  return _ns_per_shape[key](G, steps).clone()
219
 
220
 
@@ -227,6 +229,8 @@ def zeropower_via_newtonschulz5_batched(G, steps=5):
227
  _ns_per_shape[key] = torch.compile(
228
  _zeropower_via_newtonschulz5_batched,
229
  options={
 
230
  "shape_padding": False
231
  })
 
232
  return _ns_per_shape[key](G, steps).clone()
 
213
  if key not in _ns_per_shape:
214
  _ns_per_shape[key] = torch.compile(_zeropower_via_newtonschulz5,
215
  options={
216
+ "triton.cudagraphs": True,
217
  "shape_padding": False
218
  })
219
+ torch.compiler.cudagraph_mark_step_begin()
220
  return _ns_per_shape[key](G, steps).clone()
221
 
222
 
 
229
  _ns_per_shape[key] = torch.compile(
230
  _zeropower_via_newtonschulz5_batched,
231
  options={
232
+ "triton.cudagraphs": True,
233
  "shape_padding": False
234
  })
235
+ torch.compiler.cudagraph_mark_step_begin()
236
  return _ns_per_shape[key](G, steps).clone()