v4.3 update. (#2709)
* v4.3 update. * Update the cute_dsl_api changelog's doc link * Update version to 4.3.0 * Update the example link * Update doc to encourage user to install DSL from requirements.txt --------- Co-authored-by: Larry Wu <larwu@nvidia.com>
This commit is contained in:
@@ -2,7 +2,32 @@
|
||||
Changelog for CuTe DSL API changes
|
||||
======================================
|
||||
|
||||
`4.2.0 <https://github.com/NVIDIA/cutlass/releases/tag/v4.2.0>`_ (2025-09-15)
|
||||
`4.3.0 <https://github.com/NVIDIA/cutlass/releases/tree/main>`_ (2025-10-07)
|
||||
==============================================================================
|
||||
|
||||
* Debuggability improvements:
|
||||
- Supported source location tracking for DSL APIs
|
||||
- Supported dumping PTX and SASS code
|
||||
* Remove deprecated ``cutlass.<arch>_utils.SMEM_CAPACITY["<arch_str>"]`` and ``cutlass.utils.ampere_helpers``
|
||||
* Support calling nested functions without capturing variables inside dynamic control flow
|
||||
* Replace usage of ``cute.arch.barrier`` in examples with corresponding APIs in ``pipeline``
|
||||
- Use ``pipeline.sync`` for simple cases like synchronizing the whole CTA
|
||||
- Use ``pipeline.NamedBarrier`` to customize barriers with different participating threads and barrier id
|
||||
* Added new APIs ``repeat`` and ``repeat_as_tuple``
|
||||
* Added new APIs ``make_rmem_tensor`` to replace ``make_fragment`` with better naming
|
||||
* Added new APIs ``make_rmem_tensor_like`` which create rmem tensor from a tensor using the same shape with compact col-major strides
|
||||
* Added ``TmemAllocator`` for allocating tensor memory
|
||||
* Updated ``SmemAllocator.allocate`` to support allocation of a single scalar value
|
||||
* Fixed ``TensorSSA.reduce`` to support static value as initial value
|
||||
* Updated docstring for following APIs to be more concise and easier to understand:
|
||||
- ``make_layout_tv``
|
||||
- ``is_static``
|
||||
- ``PipelineAsync``
|
||||
- ``SmemAllocator``
|
||||
* Fixed documentation for ``pipeline``, ``utils`` and ``cute.math``
|
||||
|
||||
|
||||
`4.2.0 <https://github.com/NVIDIA/cutlass/releases/tag/v4.2.0>`_ (2025-09-10)
|
||||
==============================================================================
|
||||
|
||||
* Added back ``cute.make_tiled_copy`` per the request from community
|
||||
@@ -40,7 +65,7 @@ Changelog for CuTe DSL API changes
|
||||
- Introduce S2T CopyOps in `tcgen05/copy.py <https://github.com/NVIDIA/cutlass/blob/main/python/CuTeDSL/cutlass/cute/nvgpu/tcgen05/copy.py>`_.
|
||||
- Introduce BlockScaled layout utilities in `blockscaled_layout.py <https://github.com/NVIDIA/cutlass/blob/main/python/CuTeDSL/cutlass/utils/blockscaled_layout.py>`_ for creating the required scale factor layouts in global memory, shared memory and tensor memory.
|
||||
|
||||
* ``cutlass.cute.compile`` now supports compilation options. Refer to `JIT compilation options <https://docs.nvidia.com/cutlass/media/docs/pythonDSL/cute_dsl_general/dsl_jit_compilation_options.html>`_ for more details.
|
||||
* ``cutlass.cute.compile`` now supports compilation options. Refer to `JIT compilation options <https://docs.nvidia.com/cutlass/latest/media/docs/pythonDSL/cute_dsl_general/dsl_jit_compilation_options.html>`_ for more details.
|
||||
* ``cutlass.cute.testing.assert_`` now works for device JIT function. Specify ``--enable-device-assertions`` as compilation option to enable.
|
||||
* ``cutlass.cute.make_tiled_copy`` is now deprecated. Please use ``cutlass.cute.make_tiled_copy_tv`` instead.
|
||||
* Shared memory capacity query
|
||||
|
||||
@@ -9,3 +9,9 @@ cutlass.cute
|
||||
:show-inheritance:
|
||||
:special-members: __init__
|
||||
:private-members:
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
:hidden:
|
||||
|
||||
cute_arch
|
||||
|
||||
@@ -1,17 +1,18 @@
|
||||
.. _cute_arch:
|
||||
|
||||
cutlass.cute.arch
|
||||
=================
|
||||
arch
|
||||
====
|
||||
|
||||
The ``cute.arch`` module contains wrappers around NVVM-level MLIR Op builders that seamlessly
|
||||
inter-operate with the Python types used in CUTLASS Python. Another benefit of wrapping these Op
|
||||
builders is that the source location can be tracked with the ``@dsl_user_op`` decorator. Available
|
||||
functions include
|
||||
The ``cute.arch`` module provides lightweight wrappers for NVVM Operation builders which implement CUDA built-in
|
||||
device functions such as ``thread_idx``. It integrates seamlessly with CuTe DSL types.
|
||||
|
||||
- basic API like ``thr_idx``;
|
||||
- functions related to the direct management of mbarriers;
|
||||
- low-level SMEM management (prefer using the ``SmemAllocator`` class);
|
||||
- TMEM management.
|
||||
These wrappers enable source location tracking through the ``@dsl_user_op``
|
||||
decorator. The module includes the following functionality:
|
||||
|
||||
- Core CUDA built-in functions such as ``thread_idx``, ``warp_idx``, ``block_dim``, ``grid_dim``, ``cluster_dim``, and related functions
|
||||
- Memory barrier management functions including ``mbarrier_init``, ``mbarrier_arrive``, ``mbarrier_wait``, and associated operations
|
||||
- Low-level shared memory (SMEM) management capabilities, with ``SmemAllocator`` as the recommended interface
|
||||
- Low-level tensor memory (TMEM) management capabilities, with ``TmemAllocator`` as the recommended interface
|
||||
|
||||
API documentation
|
||||
-----------------
|
||||
|
||||
9
media/docs/pythonDSL/cute_dsl_api/pipeline.rst
Normal file
9
media/docs/pythonDSL/cute_dsl_api/pipeline.rst
Normal file
@@ -0,0 +1,9 @@
|
||||
cutlass.pipeline
|
||||
================
|
||||
|
||||
.. automodule:: cutlass.pipeline
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
:special-members: __init__
|
||||
:private-members:
|
||||
@@ -1,9 +1,19 @@
|
||||
cutlass.utils
|
||||
=============
|
||||
|
||||
The ``cutlass.utils`` module contains utilities for developing kernels with CuTe DSL.
|
||||
|
||||
.. automodule:: cutlass.utils
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
:special-members: __init__
|
||||
:private-members:
|
||||
:exclude-members: sm90_make_smem_layout_a, sm90_make_smem_layout_b, sm90_make_smem_layout_epi
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
:hidden:
|
||||
|
||||
utils_sm90
|
||||
utils_sm100
|
||||
|
||||
10
media/docs/pythonDSL/cute_dsl_api/utils_sm100.rst
Normal file
10
media/docs/pythonDSL/cute_dsl_api/utils_sm100.rst
Normal file
@@ -0,0 +1,10 @@
|
||||
.. _utils_sm100:
|
||||
|
||||
Utilities for SM100
|
||||
===================
|
||||
|
||||
.. automodule:: cutlass.utils.sm100
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
:special-members: __init__
|
||||
10
media/docs/pythonDSL/cute_dsl_api/utils_sm90.rst
Normal file
10
media/docs/pythonDSL/cute_dsl_api/utils_sm90.rst
Normal file
@@ -0,0 +1,10 @@
|
||||
.. _utils_sm90:
|
||||
|
||||
Utilities for SM90
|
||||
==================
|
||||
|
||||
.. automodule:: cutlass.utils.sm90
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
:special-members: __init__
|
||||
Reference in New Issue
Block a user