Skip to content

Commit cc274e1

Browse files
authored
[SYCLomatic] Add api query mapping for 31 cub device level api (#2910)
Signed-off-by: intwanghao <hao3.wang@intel.com>
1 parent 9b15e50 commit cc274e1

33 files changed

+749
-2
lines changed
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
struct CustomOpT {
6+
template <typename DataType>
7+
__device__ bool operator()(const DataType &lhs, const DataType &rhs) {
8+
return lhs <= rhs;
9+
}
10+
};
11+
12+
void test(int num_items, int *d_keys, CustomOpT op) {
13+
// Start
14+
void *temp_storage = nullptr;
15+
size_t temp_storage_size;
16+
cub::DeviceMergeSort::SortKeys(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, num_items/*int*/, op/*CustomOpT*/);
17+
cudaMalloc(&temp_storage, temp_storage_size);
18+
cub::DeviceMergeSort::SortKeys(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, num_items/*int*/, op/*CustomOpT*/);
19+
// End
20+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
struct CustomOpT {
6+
template <typename DataType>
7+
__device__ bool operator()(const DataType &lhs, const DataType &rhs) {
8+
return lhs <= rhs;
9+
}
10+
};
11+
12+
void test(int num_items, int *d_keys, int *d_outs, CustomOpT op) {
13+
// Start
14+
void *temp_storage = nullptr;
15+
size_t temp_storage_size;
16+
cub::DeviceMergeSort::SortKeysCopy(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, d_outs/*int **/, num_items/*int*/, op/*CustomOpT*/);
17+
cudaMalloc(&temp_storage, temp_storage_size);
18+
cub::DeviceMergeSort::SortKeysCopy(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, d_outs/*int **/, num_items/*int*/, op/*CustomOpT*/);
19+
// End
20+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
struct CustomOpT {
6+
template <typename DataType>
7+
__device__ bool operator()(const DataType &lhs, const DataType &rhs) {
8+
return lhs <= rhs;
9+
}
10+
};
11+
12+
void test(int num_items, int *d_keys, int *d_values, CustomOpT op) {
13+
// Start
14+
void *temp_storage = nullptr;
15+
size_t temp_storage_size;
16+
cub::DeviceMergeSort::SortPairs(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, d_values/*int **/, num_items/*int*/, op/*CustomOpT*/);
17+
cudaMalloc(&temp_storage, temp_storage_size);
18+
cub::DeviceMergeSort::SortPairs(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, d_values/*int **/, num_items/*int*/, op/*CustomOpT*/);
19+
// End
20+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
struct CustomOpT {
6+
template <typename DataType>
7+
__device__ bool operator()(const DataType &lhs, const DataType &rhs) {
8+
return lhs <= rhs;
9+
}
10+
};
11+
12+
void test(int num_items, int *d_keys, CustomOpT op) {
13+
// Start
14+
void *temp_storage = nullptr;
15+
size_t temp_storage_size;
16+
cub::DeviceMergeSort::StableSortKeys(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, num_items/*int*/, op/*CustomOpT*/);
17+
cudaMalloc(&temp_storage, temp_storage_size);
18+
cub::DeviceMergeSort::StableSortKeys(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, num_items/*int*/, op/*CustomOpT*/);
19+
// End
20+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
struct CustomOpT {
6+
template <typename DataType>
7+
__device__ bool operator()(const DataType &lhs, const DataType &rhs) {
8+
return lhs <= rhs;
9+
}
10+
};
11+
12+
void test(int num_items, int *d_keys, int *d_values, CustomOpT op) {
13+
// Start
14+
void *temp_storage = nullptr;
15+
size_t temp_storage_size;
16+
cub::DeviceMergeSort::StableSortPairs(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, d_values/*int **/, num_items/*int*/, op/*CustomOpT*/);
17+
cudaMalloc(&temp_storage, temp_storage_size);
18+
cub::DeviceMergeSort::StableSortPairs(temp_storage/*void **/, temp_storage_size/*size_t*/, d_keys/*int **/, d_values/*int **/, num_items/*int*/, op/*CustomOpT*/);
19+
// End
20+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
void test(int *d_in, int *d_flags, int *d_out, int *d_num_selected_out, int num_items) {
6+
// Start
7+
void *d_temp_storage = nullptr;
8+
size_t temp_storage_bytes = 0;
9+
cub::DevicePartition::Flagged(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_in/*int **/, d_flags/*int **/, d_out/*int **/, d_num_selected_out/*int **/, num_items/*int*/);
10+
cudaMalloc(&d_temp_storage, temp_storage_bytes);
11+
cub::DevicePartition::Flagged(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_in/*int **/, d_flags/*int **/, d_out/*int **/, d_num_selected_out/*int **/, num_items/*int*/);
12+
// End
13+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
struct LessThan {
6+
int compare;
7+
inline LessThan(int compare) : compare(compare) {}
8+
__device__ bool operator()(const int &a) const {
9+
return (a < compare);
10+
}
11+
};
12+
13+
void test(int *d_in, int *d_out, int *d_num_selected_out, int num_items, LessThan select_op) {
14+
// Start
15+
void *d_temp_storage = nullptr;
16+
size_t temp_storage_bytes = 0;
17+
cub::DevicePartition::If(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_in/*int **/, d_out/*int **/, d_num_selected_out/*int **/, num_items/*int*/, select_op/*SelectOp*/);
18+
cudaMalloc(&d_temp_storage, temp_storage_bytes);
19+
cub::DevicePartition::If(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_in/*int **/, d_out/*int **/, d_num_selected_out/*int **/, num_items/*int*/, select_op/*SelectOp*/);
20+
// End
21+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
void test(int n, int *d_keys_in, int *d_keys_out) {
6+
// Start
7+
void *d_temp_storage = nullptr;
8+
size_t temp_storage_bytes;
9+
cub::DeviceRadixSort::SortKeys(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_keys_in/*int **/, d_keys_out/*int **/, n/*int*/);
10+
cudaMalloc(&d_temp_storage, temp_storage_bytes);
11+
cub::DeviceRadixSort::SortKeys(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_keys_in/*int **/, d_keys_out/*int **/, n/*int*/);
12+
// End
13+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
void test(int n, int *d_keys_in, int *d_keys_out) {
6+
// Start
7+
void *d_temp_storage = nullptr;
8+
size_t temp_storage_bytes;
9+
cub::DeviceRadixSort::SortKeysDescending(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_keys_in/*int **/, d_keys_out/*int **/, n/*int*/);
10+
cudaMalloc(&d_temp_storage, temp_storage_bytes);
11+
cub::DeviceRadixSort::SortKeysDescending(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_keys_in/*int **/, d_keys_out/*int **/, n/*int*/);
12+
// End
13+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// clang-format off
2+
#include <cstddef>
3+
#include <cub/cub.cuh>
4+
5+
void test(int n, int *d_keys_in, int *d_keys_out, int *d_values_in, int *d_values_out) {
6+
// Start
7+
void *d_temp_storage = nullptr;
8+
size_t temp_storage_bytes;
9+
cub::DeviceRadixSort::SortPairs(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_keys_in/*int **/, d_keys_out/*int **/, d_values_in/*int **/, d_values_out/*int ***/, n/*int*/);
10+
cudaMalloc(&d_temp_storage, temp_storage_bytes);
11+
cub::DeviceRadixSort::SortPairs(d_temp_storage/*void **/, temp_storage_bytes/*size_t*/, d_keys_in/*int **/, d_keys_out/*int **/, d_values_in/*int **/, d_values_out/*int ***/, n/*int*/);
12+
// End
13+
}

0 commit comments

Comments
 (0)