Uh oh!
There was an error while loading. Please reload this page.
Flash attn gqa - #365
Conversation
Signed-off-by: Przemek Tredak <ptredak@nvidia.com>
Signed-off-by: Przemek Tredak <ptredak@nvidia.com>
fix checkpoint loading bug for FAR Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Przemek Tredak <ptredak@nvidia.com>
Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
add 3rd party acknowledgements Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* fix qkv weight unfused path Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix non FA non interleaved case Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* ignore self attention mask for causal type Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * further relax checks to run FA, update docs Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix pytorch softmax path Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fixes Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * minimum ampere requirement for fa Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Przemek Tredak <ptredak@nvidia.com>
Signed-off-by: Przemek Tredak <ptredak@nvidia.com>
FA doesn't support compute 8.6 with head_dim>64 Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* fix usage of return_bias argument Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * review comments Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* Remove zombie process from querying TE install path Co-authored-by: Naman Goyal <naman@fb.com> Signed-off-by: Tim Moon <tmoon@nvidia.com> * Fix FA version checking Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix unused import error Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix lint warning Signed-off-by: Tim Moon <tmoon@nvidia.com> --------- Signed-off-by: Tim Moon <tmoon@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Co-authored-by: Naman Goyal <naman@fb.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* refactor JAX examples Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * fix doc-string Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * add dp example Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * refactor Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * fix params_axes_pspec Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * Add model parallel example and refactor Update readme Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * align code and readme Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * update verification Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * add mask Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * num_gpu is configurable Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * update readme Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * update readme Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * solvepylint issue Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * ignore markdown and txt file from license check Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * Update README.md Signed-off-by: Ryan Jeng <rjeng@nvidia.com> * add flax into requirements.txt Signed-off-by: Ryan Jeng <rjeng@nvidia.com> --------- Signed-off-by: Ryan Jeng <rjeng@nvidia.com>
* Support transpose_bs when decoded=True Signed-off-by: Ming-Xu Huang <mingh@nvidia.com> Signed-off-by: Ming Huang <mingh@nvidia.com> * Fix Bugs, 1. Fix missing dropout_dims in LayerNormMLP. 2. Fix broadcast issues in decoded. Signed-off-by: Ming-Xu Huang <mingh@nvidia.com> Signed-off-by: Ming Huang <mingh@nvidia.com> * Fix wrong masks in decoded. Signed-off-by: Ming-Xu Huang <mingh@nvidia.com> Signed-off-by: Ming Huang <mingh@nvidia.com> * Fixed wrong assert condition in TransformerLayer Signed-off-by: Ming Huang <mingh@nvidia.com> * Fix amax is not set as 0 in each step. Signed-off-by: Ming Huang <mingh@nvidia.com> * Enhance rules conflict checking and docs. Signed-off-by: Ming Huang <mingh@nvidia.com> * fix code formatting. Signed-off-by: Ming Huang <mingh@nvidia.com> --------- Signed-off-by: Ming-Xu Huang <mingh@nvidia.com> Signed-off-by: Ming Huang <mingh@nvidia.com>
* Change FP8 recipe defaults Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Increase default amax history length Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Always check history size Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * no amax history for onnx export Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * revert onnx export test changes Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix indices in onnx test Co-authored-by: Neta Zmora <nzmora@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Co-authored-by: Neta Zmora <nzmora@nvidia.com>
* Add FP8 support for Ada Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fixes Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * better message Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * lint fixes Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Address review comments Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * better message for no fp8 Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * same thing for onnx test Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix CI and review Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
…VIDIA#117) * Update installation instructio for JAX and add some depenencies. Signed-off-by: Frederic Bastien <fbastien@nvidia.com> * Bring back support for none pip installed pybind11. Signed-off-by: Frederic Bastien <fbastien@nvidia.com> * Apply suggestions from code review Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: Frédéric Bastien <frederic.bastien@gmail.com> * Changes following review. Signed-off-by: Frederic Bastien <fbastien@nvidia.com> * Change order to make it more clear. Signed-off-by: Frederic Bastien <fbastien@nvidia.com> * Add other reviers suggestion. Signed-off-by: Frederic Bastien <fbastien@nvidia.com> * pybind11 is needed for all FW. Signed-off-by: Frederic Bastien <fbastien@nvidia.com> * Add flax as a dep Signed-off-by: Frederic Bastien <fbastien@nvidia.com> * Update README.rst Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: Frédéric Bastien <frederic.bastien@gmail.com> --------- Signed-off-by: Frederic Bastien <fbastien@nvidia.com> Signed-off-by: Frédéric Bastien <frederic.bastien@gmail.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Przemek Tredak <ptredak@nvidia.com>
* amax reduction internval Signed-off-by: Sangkug Lym <slym@nvidia.com> Skip TP-domain only AMAX reduction when TP-group is not initialized Signed-off-by: Sangkug Lym <slym@nvidia.com> * Update transformer_engine/pytorch/fp8.py Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: Sangkug Lym <slym@nvidia.com> * check TP group initialized Signed-off-by: Sangkug Lym <slym@nvidia.com> fix Signed-off-by: Sangkug Lym <slym@nvidia.com> --------- Signed-off-by: Sangkug Lym <slym@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* Port initial changes Co-authored-by: Sangkug Lym <slym@nvidia.com> Co-authored-by: Vasudevan Rengasamy <vrengasamy@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * readd FA include for PyTorch Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Re-enable sm_70 + cleanup Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * LICENSE, cleanup header Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * 5k -> 173 errors Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * license and fixes in userbuffers-host Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * next round fixes Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * final cpp cleanup Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * pylinting Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix from linting Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Turn off default async amax reduction (NVIDIA#148) Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * remove unused code path Signed-off-by: Sangkug Lym <slym@nvidia.com> * cleanup Macros Signed-off-by: Sangkug Lym <slym@nvidia.com> * fix conflict resolution bug Signed-off-by: Sangkug Lym <slym@nvidia.com> * Fix gencode flags in setup (NVIDIA#145) * Fix gencode flags based on cuda version Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * review suggestions Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * revert append_nvcc_threads change Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Change overlap config dict error message Signed-off-by: Sangkug Lym <slym@nvidia.com> * simplify ub initialization Signed-off-by: Sangkug Lym <slym@nvidia.com> * lint Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix sanity imports Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * cpplint Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix TensorFlow build Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix TE macros in public header Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix lint Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * More fixes Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * compiles with and w/o MPI Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fixes for python side annotations for conditional compile Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * link gdrAPI only when MPI found Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix comments for dummy var Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix linking Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Review comments Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * load MPI before TE Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Add Py side argument checks Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * remove unused code and catch silent failures Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix cpp tests Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix find_lib path for tests Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: Sangkug Lym <slym@nvidia.com> Co-authored-by: Sangkug Lym <slym@nvidia.com> Co-authored-by: Vasudevan Rengasamy <vrengasamy@nvidia.com>
* Initial refactor; linker error Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix linking issue and make mpi conditional Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix TF/JAX build Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Use max SMs at the last RS chunk in pipelined overlap Co-authored-by: Sangkug Lym <slym@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * lint Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Make userbuffers support opt-in Decouple userbuffers from MPI. Refactor MPI handling in build system. Standardize names to "userbuffers". Signed-off-by: Tim Moon <tmoon@nvidia.com> * Lint Signed-off-by: Tim Moon <tmoon@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: Tim Moon <tmoon@nvidia.com> Co-authored-by: Sangkug Lym <slym@nvidia.com> Co-authored-by: Tim Moon <tmoon@nvidia.com>
* Add FP8 fused attention to TE for PyTorch Signed-off-by: Charlene Yang <charleney@nvidia.com> * add license for cudnn-frontend, modify installation requirements, and refactor some headers for aesthetics Signed-off-by: Charlene Yang <charleney@nvidia.com> * add c api docs for fused attention Signed-off-by: Charlene Yang <charleney@nvidia.com> * add exception for unsupported precision/sequence length combinations Signed-off-by: Charlene Yang <charleney@nvidia.com> * fix installation requirement for non fused attn use cases Signed-off-by: Charlene Yang <charleney@nvidia.com> * fix docs for fused-attn Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * prefix enums with NVTE_ and replace old MHA_Matrix with NVTE_QKV_Matrix Signed-off-by: Charlene Yang <charleney@nvidia.com> * minor fixes based on PR comments Signed-off-by: Charlene Yang <charleney@nvidia.com> * fix description for kvpacked fwd Signed-off-by: Charlene Yang <charleney@nvidia.com> * fix description of Bias in C api Signed-off-by: Charlene Yang <charleney@nvidia.com> * minor fixes for cudnn requirement and description for QKV tensors Signed-off-by: Charlene Yang <charleney@nvidia.com> * fix QKV layout description and support matrix for C api Signed-off-by: Charlene Yang <charleney@nvidia.com> * add asserts to cpp_extensions for qkv layout/bias type/attn mask type Signed-off-by: Charlene Yang <charleney@nvidia.com> * fix typo precision Signed-off-by: Charlene Yang <charleney@nvidia.com> --------- Signed-off-by: Charlene Yang <charleney@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Co-authored-by: Charlene Yang <charleney@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Sangkug Lym <slym@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* Faster split of QKV for FlashAttention Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * CI fixes Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Fix Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * review comments Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Message with assert Co-authored-by: Przemyslaw Tredak <ptredak@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Review comments Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * review Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix misalignment error Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * make clarifying comment and check strides Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Przemek Tredak <ptredak@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
…VIDIA#181) * Remove the nonexistent parameter from fused attention documentation Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Remove the second instance Signed-off-by: Przemek Tredak <ptredak@nvidia.com> --------- Signed-off-by: Przemek Tredak <ptredak@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* Adjust Module Structure. 1. Collect Flax related modules to a sub-folder, flax. 2. Add a function to unify scale_init for zero-centered-gamma LN. Signed-off-by: Ming Huang <mingh@nvidia.com> * Make changes be compatible to previous versions. Signed-off-by: Ming Huang <mingh@nvidia.com> * Adapt jax/examples to the new module structure. Signed-off-by: Ming Huang <mingh@nvidia.com> * Update jax/docs and Add deprecated warning. Signed-off-by: Ming Huang <mingh@nvidia.com> * Update README Signed-off-by: Ming Huang <mingh@nvidia.com> * Adding deprecated_wrapper Signed-off-by: Ming Huang <mingh@nvidia.com> * Adding deprecated warning to flax modules which imported via transformer_engine.jax Signed-off-by: Ming Huang <mingh@nvidia.com> * Fix CI errors and update docs. Signed-off-by: Ming Huang <mingh@nvidia.com> * Removing unnecessary deprecated warning in docs. Signed-off-by: Ming Huang <mingh@nvidia.com> * Implementing __iter__ to DeprecatedEnum. Signed-off-by: Ming Huang <mingh@nvidia.com> --------- Signed-off-by: Ming Huang <mingh@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
correct cuDNN version requirement Signed-off-by: Charlene Yang <charleney@nvidia.com>
…VIDIA#188) * using different strems for pushsend and pushrecv Signed-off-by: Sangkug Lym <slym@nvidia.com> * fix stream dependency Signed-off-by: Sangkug Lym <slym@nvidia.com> * add wait from main_stream to memcpy stream Signed-off-by: Sangkug Lym <slym@nvidia.com> --------- Signed-off-by: Sangkug Lym <slym@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
userbuffer pushsend/recv fix with atomicAdd_system Signed-off-by: Sangkug Lym <slym@nvidia.com> Co-authored-by: Sangkug Lym <slym@nvidia.com>
Signed-off-by: Przemek Tredak <ptredak@nvidia.com>
* relax attn mask type checks for FlashAttention Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * disable flash attn if mask tensor is not None Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix the logic for flash attn Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * minor fix for lint Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> --------- Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com>
* Unfused scale+softmax if bias is present Signed-off-by: Reese Wang <rewang@nvidia.com> * WAR a causal masking + no_bias bug and add the unittests Signed-off-by: Reese Wang <rewang@nvidia.com> * Fix the optional args (bias) sharding Signed-off-by: Reese Wang <rewang@nvidia.com> * Disable fused attn in JAX by default, enable it with NVTE_USE_FUSED_ATTN Signed-off-by: Reese Wang <rewang@nvidia.com> * Add thread local for the plan cache Signed-off-by: Reese Wang <rewang@nvidia.com> * Rename dbeta to dbias for the readability Signed-off-by: Reese Wang <rewang@nvidia.com> * Add scaled softmax with dropout test cases Signed-off-by: Reese Wang <rewang@nvidia.com> * Updated NVTE_FUSED_ATTN variable name Signed-off-by: Reese Wang <rewang@nvidia.com> --------- Signed-off-by: Reese Wang <rewang@nvidia.com>
Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* Add self_attn_mask_type and replace attn_type Signed-off-by: Reese Wang <rewang@nvidia.com> * Refine the keyword style for the better readability Signed-off-by: Reese Wang <rewang@nvidia.com> * Replace attn_type with attn_mask_type in praxis transformer Signed-off-by: Reese Wang <rewang@nvidia.com> * Fix typos Signed-off-by: Reese Wang <rewang@nvidia.com> --------- Signed-off-by: Reese Wang <rewang@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
…A#227) * Enable fused attention dropout Signed-off-by: Reese Wang <rewang@nvidia.com> * Cast the uint32 key/counter to int64 Signed-off-by: Reese Wang <rewang@nvidia.com> * Update dropout support in fused attention docs Signed-off-by: Reese Wang <rewang@nvidia.com> * Revise devPtrCuSeqlen* to align the naming Signed-off-by: Reese Wang <rewang@nvidia.com> * Support different Jax PRNG impls Signed-off-by: Reese Wang <rewang@nvidia.com> * Revert CastAsync since it is not used Signed-off-by: Reese Wang <rewang@nvidia.com> * Implement is_training for 16-bit fused attn Signed-off-by: Reese Wang <rewang@nvidia.com> * Add fused attn with dropout sanity unit tests Signed-off-by: Reese Wang <rewang@nvidia.com> * Enhance the comments readability and rng_state checker Signed-off-by: Reese Wang <rewang@nvidia.com> * Change the attention dropout shape to align other frameworks Signed-off-by: Reese Wang <rewang@nvidia.com> * Make encoder tests deterministic Signed-off-by: Reese Wang <rewang@nvidia.com> * Change the default seed for the jax encoder tests Signed-off-by: Reese Wang <rewang@nvidia.com> * Maintain offset in TE Signed-off-by: Reese Wang <rewang@nvidia.com> * Enhance the resource safety Signed-off-by: Reese Wang <rewang@nvidia.com> * Revert rng_state type to allow only i64 Signed-off-by: Reese Wang <rewang@nvidia.com> * Handle the corner case for elts_per_threads calculation Signed-off-by: Reese Wang <rewang@nvidia.com> * Populate rng state by kernels Signed-off-by: Reese Wang <rewang@nvidia.com> * Rename rng_state as seed in cpp_extensions Signed-off-by: Reese Wang <rewang@nvidia.com> * Update the attention dropout comment Signed-off-by: Reese Wang <rewang@nvidia.com> --------- Signed-off-by: Reese Wang <rewang@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* add long sequence support and unify three backends for fused attention Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * update cudnn-frontend to v0.9.1 Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * replace cpu_float2half_rn with __float2half_rn Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix backend selection and NVTEDType Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * minor fixes Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix ci Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * make cudnn plan caches thread_local Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix CI Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * replace cuDNN throw with NVTE_CHECK Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix replacement of cuDNN throw with NVTE_CHECK Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * force dropout probablity to 0 in inference mode Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * change negInfinity to be consistent with m512 fused attn Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * remove float2half conversion for scale_dropout Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * add back runtime api for sm detection Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * add gemm3 to enums FP8Fwd/BwdTensors Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * change dropout from no to yes for fmha_v1 Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * remove output_rng_state in m512 kernels Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix elts_per_thread calculation in kvpacked fwd Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * remove dropout=0.0 restriction for m512 fused attn Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * remove output_rng_state completely from m512 kernels Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> --------- Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
…#290) Signed-off-by: Asfiya Baig <asfiyab@nvidia.com>
* Fix ONNX export of layer_norm ONNX has a spec bug: ConstantOfShape supports all dtypes except for BF16. To WAR we use dtype FP32 and then cast to BF16. Will also issue a PR to the ONNX sig committee to change the spec in opset 20. Signed-off-by: Neta Zmora <nzmora@nvidia.com> * fix lint Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Neta Zmora <nzmora@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
…causal' (NVIDIA#324) * Fully remove attn_type and set self_attn_mask_type default to 'causal' Signed-off-by: Reese Wang <rewang@nvidia.com> * Fix tests with new arguments Signed-off-by: Reese Wang <rewang@nvidia.com> * Explicit self_attn_mask_type for examples Signed-off-by: Reese Wang <rewang@nvidia.com> * Update transformer_engine/jax/flax/transformer.py Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: zlsh80826 <rewang@nvidia.com> * Update transformer_engine/jax/flax/transformer.py Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Signed-off-by: zlsh80826 <rewang@nvidia.com> --------- Signed-off-by: Reese Wang <rewang@nvidia.com> Signed-off-by: zlsh80826 <rewang@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* FA does not support head_dim > 64 on Ada Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Add cc8.7 to no FA list Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* FA v2.0 support Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * fix typo Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* Exposing RMSNorm in pyTorch extensions Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * First pass at the Python API Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Small fixes Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Added numerics tests and fixed issues Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Lint fixes Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Added RMSNorm to LayerNormMLP Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Added ONNX export and tests for RMSNorm Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Fix python lint Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Fix BERT case Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Added normalization option to the TransformerLayer Added tests Fixed test failures Signed-off-by: Przemek Tredak <ptredak@nvidia.com> * Fix documentation Co-authored-by: Przemyslaw Tredak <ptrendx@gmail.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix kwarg bug Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix IMA and invalid type error Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Increase RMSNorm threshold for bf16 case Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix ONNX tests Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> --------- Signed-off-by: Przemek Tredak <ptredak@nvidia.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
* add support for multi-query/grouped-query attention Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix lint Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * revert to flash-attn 1.0.6 and build 2.0.0.post1 manually in CI Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * add keyword name for DPA input Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix fused attn tests Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * fix skipif for pytest Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * Update transformer_engine/pytorch/attention.py Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Update tests/pytorch/test_fused_attn.py Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * Fix TP and SP case Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> * add skipifs for pytest Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> * remove higher limit for flash-attn version Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> --------- Signed-off-by: Charlene Yang <8636796+cyanguwa@users.noreply.github.com> Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Add compilation warning for FA 2.0 Signed-off-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Replace deprecated sharding API Signed-off-by: Tim Moon <tmoon@nvidia.com> Co-authored-by: Kirthi Shankar Sivamani <ksivamani@nvidia.com>
Signed-off-by: Hongbin Liu <hongbinl@nvidia.com>
ksivaman
commented
Aug 8, 2023
@lhb8125 Could you rebase your changes with main and also sign-off your commit? |
lhb8125
commented
Aug 9, 2023
lhb8125
commented
Aug 9, 2023
ksivaman
commented
Aug 9, 2023
Closing in favor of #367 |
Fix bug when using GQA, where the shape of query layer is different from key/value layer.