Skip to content

Commit 87774e2

Browse files
kavanasecw-tan
authored andcommitted
Linting
1 parent 9ed6bcb commit 87774e2

3 files changed

Lines changed: 6 additions & 3 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Most recent change on the top.
1010

1111
### Changed
1212
- `nequip-compile --device cpu` now defaults to scalar C++ codegen (Inductor's `cpp.simdlen=0`) instead of vectorized codegen, which is 1.5-2x faster for NequIP and 6-11x faster for smaller Allegro models in CPU inference, and avoids the CPU AOTInductor compilation failure on PyTorch 2.10/2.11 entirely. Controllable with `ATEN_CPU_CAPABILITY=<your ISA>` or `--inductor-configs cpp.simdlen=<width>`.
13-
- PyTorch compatibility docs: the CPU + AOTInductor compilation failure affects both PyTorch 2.10.0 and 2.11.0 (fixed upstream in 2.12), now avoided with default NequIP scalar codegen compilation
13+
- PyTorch compatibility docs: the CPU + AOTInductor compilation failure affects both PyTorch 2.10.0 and 2.11.0 (fixed upstream in 2.12), now avoided with default NequIP scalar codegen compilation.
1414

1515
### Fixed
1616
- `--inductor-configs` values were passed to `torch` as strings, so numeric options mis-compared. Values are now YAML-parsed, as for `nequip-package modify` modifier kwargs.

‎docs/guide/getting-started/workflow.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ For further speed-ups where appropriate (e.g. often permissible for MD simulatio
168168

169169
```{important}
170170
When compiling for **CPU** (`--device cpu`), `nequip-compile` turns off Inductor's vectorized C++ codegen and emits scalar code instead, by default.
171-
This is typically significantly faster for model inference. To compile with vectorization instead, give your CPU's vector width with `--inductor-configs cpp.simdlen=512` (`512` for AVX-512, `256` for AVX2, `128` for ARM NEON), or set torch's own `ATEN_CPU_CAPABILITY` to an x86 ISA name (e.g. `ATEN_CPU_CAPABILITY=avx512 nequip-compile ...`).
171+
This is typically significantly faster for model inference. To compile with vectorization instead, give your CPU's vector width with `--inductor-configs cpp.simdlen=512` (`512` for AVX-512, `256` for AVX2, `128` for ARM NEON), or set torch's own `ATEN_CPU_CAPABILITY` to an x86 ISA name (e.g. `ATEN_CPU_CAPABILITY=avx512 nequip-compile ...`).
172172
`Allegro-L` is the one NequIP/Allegro foundation model we have measured to be faster with vectorized codegen (by 1.34x), so can be worth opting in there.
173173
```
174174

‎tests/unit/scripts/test_compile_configs.py‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@
1313
"arg,expected",
1414
[
1515
("cpp.simdlen=256", {"cpp.simdlen": 256}),
16-
("cpp.simdlen=0", {"cpp.simdlen": 0}), # a bare `false` left as a string would be non-empty, i.e. truthy
16+
(
17+
"cpp.simdlen=0",
18+
{"cpp.simdlen": 0},
19+
), # a bare `false` left as a string would be non-empty, i.e. truthy
1720
("cpp.cpp_wrapper=false", {"cpp.cpp_wrapper": False}),
1821
("cpp.cpp_wrapper=true", {"cpp.cpp_wrapper": True}),
1922
# bare strings must survive YAML parsing unchanged:

0 commit comments

Comments
 (0)