This release mainly stabilizes the `v0.0.0` (which is a huge refactor for code quality and extensibility from research code) and improves the usability of NNSmith.
Major enhancements
- Support IREE backend;
- Backend-oriented spec constraint patching and rewriting;
- Extensible filtering rules;
- Fuzzing loop crash safety and timeout oracle;
- Adaptive GPU allocation in TF;
- Remove default backend and model types -- specify them explicitly;
Bug fixes
- Fix (Fuzzing Loop) and enhance (others) determinism;
- Remove "ints" in `torch.mean` signature spec as it is not supported.
- Replace unstable PyTorch GEMM spec (actually `addmm`) with MatMul spec (`torch.matmul`).
- Fix `tf.Variable` device placement consistency requirement.
- Fix by adapting `torch.sum(int32) -> int64`;
- Fix time budge/constraint syntax sugar of "s/m/min/h/hr" in CLI;
Other noticeable changes
- Suppress warnings from `tvm`;
- Improve argument type checking;
- Use setuptools_scm to determine package versioning;
- Option to check input/output types during executing PyTorch SymbolNet;
- NNSmith LOGO;
Other releases
- PyPI: https://pypi.org/project/nnsmith/0.0.1/
Contributors
Co1lin ganler