mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-06-30 03:37:38 +00:00
We used memcpy to implement a bitcast of the opaque type amdgcn_buffer_rsrc. However, hip's implementation of memcpy did not allow the compiler to infer that the result of the copy of a uniform value was also uniform. This resulted in a waterfall loop over every value that the copy could take (and a loss in performance). When we use __builtin_memcpy, the optimizer correctly handles the uniform copy. Solves SWDEV-537500
ck_tile/core
ck_tile/core contains every basic functions and structures to create a GPU kernel using ck_tile. User should only include ck_tile/core.hpp this single header to use all the functionality. Everything is under ck_tile namespace. The coding style under this folder should be similar to std (snake_case for structure/function, Camel for template types...)
algorithm/
coordinate transform and some other reusable algorithm
arch/
contains some basic device building block like mma, buffer addressing, etc...
container/
contains basic container data structure, array/sequence/tuple/...
numeric/
data type, and data type related math
tensor/
tensor descriptors and tile level API
utility/
other utility function for both host/device