• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2021 The Fuchsia Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef SRC_GRAPHICS_LIB_COMPUTE_RADIX_SORT_PLATFORMS_VK_TARGET_H_
6 #define SRC_GRAPHICS_LIB_COMPUTE_RADIX_SORT_PLATFORMS_VK_TARGET_H_
7 
8 //
9 //
10 //
11 
12 #include <stdint.h>
13 
14 //
15 // This structure packages target-specific configuration parameters.
16 //
17 
18 struct radix_sort_vk_target_config
19 {
20   uint32_t keyval_dwords;
21 
22   struct
23   {
24     uint32_t workgroup_size_log2;
25   } init;
26 
27   struct
28   {
29     uint32_t workgroup_size_log2;
30   } fill;
31 
32   struct
33   {
34     uint32_t workgroup_size_log2;
35     uint32_t subgroup_size_log2;
36     uint32_t block_rows;
37   } histogram;
38 
39   struct
40   {
41     uint32_t workgroup_size_log2;
42     uint32_t subgroup_size_log2;
43   } prefix;
44 
45   struct
46   {
47     uint32_t workgroup_size_log2;
48     uint32_t subgroup_size_log2;
49     uint32_t block_rows;
50   } scatter;
51 };
52 
53 //
54 //
55 //
56 
57 #endif  // SRC_GRAPHICS_LIB_COMPUTE_RADIX_SORT_PLATFORMS_VK_TARGET_H_
58