A library for accelerating Transformer models on NVIDIA GPUs, including using 8-bit floating point (FP8) precision on Hopper and Ada GPUs, to provide better performance with lower memory utilization in both training and inference.
Lays out initial infrastructure for auto-formatting/linting the codebase. The key challenge is to find the optimal configs for linters and formatters that do not contradict each other whilst still being useful and increasing productivity. A following PR will enable pre-commit.ci and include all the formatting changes.
Type of change
[ ] Documentation change (change only to the documentation, either a fix or a new content)
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
Changes
Introduces integration with precommit.ci that autoformats the codebase on every PR.
Use clang-format for core lib, c++, and cuda files/extensions.
Use black for python files.
Change linting configs for cpplint and pylint to be compatible with formatters.
Moves some linting functionality such as readability, whitespaces, line lengths etc. from the linters to the formatters such that the 2 do not collide.
Consolidates pylint and cpplint config files to top level.
Description
Lays out initial infrastructure for auto-formatting/linting the codebase. The key challenge is to find the optimal configs for linters and formatters that do not contradict each other whilst still being useful and increasing productivity. A following PR will enable pre-commit.ci and include all the formatting changes.
Type of change
Changes
cpplint
andpylint
to be compatible with formatters.pylint
andcpplint
config files to top level.Checklist: