-
Notifications
You must be signed in to change notification settings - Fork 355
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[JAX] Unifying GeLU and GeGLU in LayerNorm MLP #765
Conversation
Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com>
test_layer.py, and test_praxis_layer.py Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com>
Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com>
/te-ci jax |
Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
@phu0ngng Also please fix the linting errors here before the CI. Thanks!
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Kindly remove the unnessary comment in tests/jax/test_custom_call_compute.py#332
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Kindly remove the unnessary comment in tests/jax/test_custom_call_compute.py#332
/te-ci jax |
Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com>
Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com>
Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com>
Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com>
/te-ci jax |
Hi @denera, @mingxu1067, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Congratulations on your first pull request! @phu0ngng |
* combined layernorm_geglu with layernorm_gelu into fused_layernorm Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * fixes to pass all unit tests in test_custom_call_compute.py, test_layer.py, and test_praxis_layer.py Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * cleaning and formatting Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * renaming based on reviewers suggestions Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * implemented partial fused layernorm Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * geglu + bias passed tests Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * added partial fused calculation for dbias_1 Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * clean up Co-authored-by: Alp Dener <adener@nvidia.com> Signed-off-by: Phuong Nguyen <36155692+phu0ngng@users.noreply.github.com> --------- Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> Signed-off-by: Phuong Nguyen <36155692+phu0ngng@users.noreply.github.com> Co-authored-by: Alp Dener <adener@nvidia.com> Signed-off-by: Pawel Gadzinski <pgadzinski@nvidia.com>
* combined layernorm_geglu with layernorm_gelu into fused_layernorm Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * fixes to pass all unit tests in test_custom_call_compute.py, test_layer.py, and test_praxis_layer.py Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * cleaning and formatting Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * renaming based on reviewers suggestions Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * implemented partial fused layernorm Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * geglu + bias passed tests Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * added partial fused calculation for dbias_1 Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * clean up Co-authored-by: Alp Dener <adener@nvidia.com> Signed-off-by: Phuong Nguyen <36155692+phu0ngng@users.noreply.github.com> --------- Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> Signed-off-by: Phuong Nguyen <36155692+phu0ngng@users.noreply.github.com> Co-authored-by: Alp Dener <adener@nvidia.com> Signed-off-by: Pawel Gadzinski <pgadzinski@nvidia.com>
* combined layernorm_geglu with layernorm_gelu into fused_layernorm Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * fixes to pass all unit tests in test_custom_call_compute.py, test_layer.py, and test_praxis_layer.py Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * cleaning and formatting Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * renaming based on reviewers suggestions Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * implemented partial fused layernorm Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * geglu + bias passed tests Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * added partial fused calculation for dbias_1 Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> * clean up Co-authored-by: Alp Dener <adener@nvidia.com> Signed-off-by: Phuong Nguyen <36155692+phu0ngng@users.noreply.github.com> --------- Signed-off-by: Phuong Nguyen <phuonguyen@nvidia.com> Signed-off-by: Phuong Nguyen <36155692+phu0ngng@users.noreply.github.com> Co-authored-by: Alp Dener <adener@nvidia.com> Signed-off-by: Pawel Gadzinski <pgadzinski@nvidia.com>
This PR unifies the GeLU and GEGLU implementations in
LayerNormMLP
via a generalizedfused_layernorm_fp8_mlp
. Previously, there were two separate APIs for the two mentioned activations. The new routine takesactivation_type: Tuple
anduse_bias: bool
as two additional arguments, compared to old routines.This is a preparation step for adding more activations (i.e.
swiglu
) later.