/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/docs-7.0.0/include/ck/utility/get_id.hpp Source File

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/docs-7.0.0/include/ck/utility/get_id.hpp Source File#

Composable Kernel: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/docs-7.0.0/include/ck/utility/get_id.hpp Source File
get_id.hpp
Go to the documentation of this file.
1 // SPDX-License-Identifier: MIT
2 // Copyright (c) 2018-2023, Advanced Micro Devices, Inc. All rights reserved.
3 
4 #pragma once
5 
6 #include "ck/ck.hpp"
7 
8 namespace ck {
9 
10 __host__ __device__ constexpr index_t get_warp_size()
11 {
12 #if defined(__GFX9__) || !defined(__HIP_DEVICE_COMPILE__)
13  return 64;
14 #else
15  return 32;
16 #endif
17 }
18 
19 __device__ index_t get_thread_local_1d_id() { return threadIdx.x; }
20 
21 __device__ index_t get_thread_global_1d_id() { return blockIdx.x * blockDim.x + threadIdx.x; }
22 
23 __device__ index_t get_warp_local_1d_id() { return threadIdx.x / get_warp_size(); }
24 
25 __device__ index_t get_block_1d_id() { return blockIdx.x; }
26 
27 __device__ index_t get_grid_size() { return gridDim.x; }
28 
29 __device__ index_t get_block_size() { return blockDim.x; }
30 
31 } // namespace ck
Definition: ck.hpp:269
__device__ index_t get_warp_local_1d_id()
Definition: get_id.hpp:23
__device__ index_t get_grid_size()
Definition: get_id.hpp:27
__host__ constexpr __device__ index_t get_warp_size()
Definition: get_id.hpp:10
__device__ index_t get_block_size()
Definition: get_id.hpp:29
__device__ index_t get_block_1d_id()
Definition: get_id.hpp:25
__device__ index_t get_thread_global_1d_id()
Definition: get_id.hpp:21
int32_t index_t
Definition: ck.hpp:300
__device__ index_t get_thread_local_1d_id()
Definition: get_id.hpp:19