- 23 Apr, 2023 1 commit
-
-
aspanday authored
* Updating BLOCK_SIZE to 1024. tests/L0/run_optimizers/test_fused_optimizer.py test passes except for bfloat16 for Adam. There seems to be a bug in this test that needs to be resolved. For now skipping test_bfloat16 for Adam in the unittest. Ran 17 other tests and ALL other tests pass! More details on the effects of these changes can be found here - https://confluence.amd.com/display/MLSE/Apex+Kernel+Optimization. This commit changes BLOCK_SIZE=1024 ONLY FOR different optimizers. L2norm kernels (part of LAMB optimizer algorithm) still maintain BLOCK_SIZE=512 otherwise Allclose fails. * Updating tests/L0/run_optimizers/test_fused_optimizer.py with @skipifRocm to skip test_bfloat16 in Adam. * Updating chunk_size to 256*32 (8K) which was previously 2048*32 (64K). In addition updating depth_to_max_blocks to 2560 (8x compared to previous 320). The performance improvement observed is upto 1.4x for large number of elements, upto 5.2x for moderate number of elements and upto 1.44x for small number of elements. This change only affects the optimizers specifically when multi_tensor_apply is emabled using --cuda_ext extension when installing apex. The set of performance along with comaprison with Torch is captured here https://amdcloud.sharepoint.com/
❌ /r/sites/MLSEPerfTeam/Shared%20Documents/Strategic%20Leadership%20Optimizations%20Team%20(SLOT)/Projects/Grid%20Optimization/Elementwise%20Kernel%20-%20Grid%20Optimization%20-%20Benchmark%20sweep.xlsx?d=wa8bacf65a2904002bf3cad4c57769eff&csf=1&web=1&e=JhLVm8 See sheet chunk_opt. * Updating all files related to L2norm since test_fuzz (test_multi_tensor_l2norm.TestMultiTensorL2Norm) failed with previous commits. changes in chunk_size seems to have effect on reduction kernels so this commit provides a provision for maintaining unoptimized conditions for L2norm and optimizations for all other kernels associated with all optimzers. The change includes introducing multi_tensor_apply_l2norm that assumes chunk_size of 64K as well as multi_tensor_apply_base.cuh specifically to be used by l2norm kernels. --------- Co-authored-by:aspanday <aspanday@amd.com>
-
- 15 Feb, 2022 1 commit
-
-
Masaki Kozuki authored
-
- 13 Dec, 2021 1 commit
-
-
Hubert Lu authored
-
- 04 Oct, 2021 1 commit
-
-
Jeff Daily authored
-
- 25 Feb, 2021 1 commit
-
-
Jeff Daily authored
This reverts commit bdd481d1.
-
- 21 Jan, 2021 1 commit
-
-
Jeff Daily authored
use __launch_bounds__(1024) for multi_tensor_apply, re-enable skipped tests
-
- 18 Jan, 2021 1 commit
-
-
Jeff Daily authored
-
- 05 Aug, 2020 1 commit
-
-
ngimel authored
* add device guards to the optimizers * add untracked file * set deviceGuard in multi_tensor_apply * address review comments; fix lamb * indent * typo
-
- 21 May, 2020 1 commit
-
-
Jeff Daily authored
-
- 12 May, 2020 1 commit
-
-
Chaitanya Sri Krishna Lolla authored
-
- 27 Feb, 2020 1 commit
-
-
mcarilli authored
* NHWC support for multi tensor apply * compilation fix for version<=1.4
-
- 06 Sep, 2019 1 commit
-
-
mcarilli authored
* Pushing for build tests * Contrib files * Removing deprecated checks
-
- 03 Jul, 2019 2 commits
-
-
Michael Carilli authored
-
Michael Carilli authored
-
- 31 May, 2019 1 commit
-
-
mcarilli authored
* Existing tests passing, still need to add per-tensor tests * Test is passing, still need to measure performance * ILP for l2norm functor
-
- 12 Mar, 2019 1 commit
-
-
Michael Carilli authored
-
- 10 Mar, 2019 1 commit
-
-
Natalia Gimelshein authored
-
- 28 Feb, 2019 1 commit
-
-
Michael Carilli authored
-
- 24 Feb, 2019 1 commit
-
-
Michael Carilli authored
-
- 22 Feb, 2019 1 commit
-
-
Michael Carilli authored
Allow multi-tensor unscale to handle FP16 output, so it can also be used for copy-scatter. Rename some options.
-
- 19 Feb, 2019 1 commit
-
-
Michael Carilli authored
-