Skip to content

Conversation

@weizzh
Copy link
Collaborator

@weizzh weizzh commented Dec 14, 2025

Three intrinsics related to DMA operations have been added: dma_load(), dma_store(), and create_dma_descriptor().
The relevant files are language/dma.py, src/op/builtin_dma.cc, and src/op/builtin_dma.h. This update did not modify the original Tilelang's files.
There are also two test files, examples/mytest/testDMAOp.py and examples/mytest/testDMDDescriptor.py, to test whether the registration of the three intrinsics is successful.
All files were compiled successfully.

xiaoyao-NKU and others added 6 commits December 9, 2025 15:39
add mesh_tensor functions: annotate_mesh_tensor_info, mesh_tensor_copy
For many NMP, memory is often distributed. To support distributed memory, we add a set of helper functions for working with mesh-distributed tensors. With this, we can let users to control the layout of tiles over distributed memory (cores) and add annotations for the compiling passes about the layout. Then, compiler can optimize the computing performance by utilizing the distributed properties of memory and the layout tiles.
…), dma_store(), and create_dma_descriptor(). The relevant files are language/dma.py, src/op/builtin_dma.cc, and src/op/builtin_dma.h. There are also two test files, examples/mytest/testDMAOp.py and examples/mytest/testDMDDescriptor.py, to test whether the registration of the three intrinsics is successful.
@JiaqiGuoSunlune JiaqiGuoSunlune self-requested a review December 17, 2025 09:49
Copy link
Collaborator

@JiaqiGuoSunlune JiaqiGuoSunlune left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. As discussed on Monday, we may better move test cases to folder "testing/python"
  2. Please also enable pre-commit by 1) pip install pre-commit 2) pre-commit install . It will automatically correct the coding format for us.
  3. If possible, please add testing oracle (expect) to the test cases (Here is an example from tilelang https://github.com/tile-ai/tilelang/blob/6aaf3c7ae25ebbd8c5f6ad1f45081289234a7943/testing/python/transform/test_tilelang_transform_let_inline.py#L16)
  4. If I understand the usage correctly, in tilelang DSL, developers can directly use T.dma_load , after lowering to TIR, an dma descriptor will be created automatically?

@weizzh
Copy link
Collaborator Author

weizzh commented Jan 4, 2026

  1. If I understand the usage correctly, in tilelang DSL, developers can directly use T.dma_load , after lowering to TIR, an dma descriptor will be created automatically?

yes. since our DMA related ops haven't been implemented, wo can refer to the lower function in the original copy.cc file.
copy.cc:1455 TMADesc desc;
and after the DMA descriptor is created, the lower function populates each member of the structure one by one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants