Go to the documentation of this file.
33 #define CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index) \
34 (CUML_FIL_FOREST(variant_index) const&, \
35 postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
36 CUML_FIL_SPEC(variant_index)::threshold_type*, \
37 CUML_FIL_SPEC(variant_index)::threshold_type*, \
44 std::optional<index_type>, \
45 raft_proto::device_id<dev>, \
46 raft_proto::cuda_stream stream)
50 #define CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index) \
51 (CUML_FIL_FOREST(variant_index) const&, \
52 postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
53 CUML_FIL_SPEC(variant_index)::threshold_type*, \
54 CUML_FIL_SPEC(variant_index)::threshold_type*, \
58 CUML_FIL_SPEC(variant_index)::threshold_type*, \
61 std::optional<index_type>, \
62 raft_proto::device_id<dev>, \
63 raft_proto::cuda_stream stream)
67 #define CUML_FIL_SCALAR_NONLOCAL_ARGS(dev, variant_index) \
68 (CUML_FIL_FOREST(variant_index) const&, \
69 postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
70 CUML_FIL_SPEC(variant_index)::threshold_type*, \
71 CUML_FIL_SPEC(variant_index)::threshold_type*, \
76 CUML_FIL_SPEC(variant_index)::index_type*, \
78 std::optional<index_type>, \
79 raft_proto::device_id<dev>, \
80 raft_proto::cuda_stream stream)
84 #define CUML_FIL_VECTOR_NONLOCAL_ARGS(dev, variant_index) \
85 (CUML_FIL_FOREST(variant_index) const&, \
86 postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
87 CUML_FIL_SPEC(variant_index)::threshold_type*, \
88 CUML_FIL_SPEC(variant_index)::threshold_type*, \
92 CUML_FIL_SPEC(variant_index)::threshold_type*, \
93 CUML_FIL_SPEC(variant_index)::index_type*, \
95 std::optional<index_type>, \
96 raft_proto::device_id<dev>, \
97 raft_proto::cuda_stream stream)
101 #define CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, categorical) \
102 template_type void infer<dev, categorical, CUML_FIL_FOREST(variant_index)>
107 #define CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT(template_type, dev, variant_index) \
108 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, false) \
109 CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index);
114 #define CUML_FIL_INFER_DEV_SCALAR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
115 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
116 CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index);
121 #define CUML_FIL_INFER_DEV_SCALAR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index) \
122 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
123 CUML_FIL_SCALAR_NONLOCAL_ARGS(dev, variant_index);
128 #define CUML_FIL_INFER_DEV_VECTOR_LEAF_NO_CAT(template_type, dev, variant_index) \
129 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, false) \
130 CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index);
135 #define CUML_FIL_INFER_DEV_VECTOR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
136 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
137 CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index);
142 #define CUML_FIL_INFER_DEV_VECTOR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index) \
143 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
144 CUML_FIL_VECTOR_NONLOCAL_ARGS(dev, variant_index);
148 #define CUML_FIL_INFER_ALL(template_type, dev, variant_index) \
149 CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT(template_type, dev, variant_index) \
150 CUML_FIL_INFER_DEV_SCALAR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
151 CUML_FIL_INFER_DEV_SCALAR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index) \
152 CUML_FIL_INFER_DEV_VECTOR_LEAF_NO_CAT(template_type, dev, variant_index) \
153 CUML_FIL_INFER_DEV_VECTOR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
154 CUML_FIL_INFER_DEV_VECTOR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index)