Go to the documentation of this file.
22 #define CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index) \
23 (CUML_FIL_FOREST(variant_index) const&, \
24 postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
25 CUML_FIL_SPEC(variant_index)::threshold_type*, \
26 CUML_FIL_SPEC(variant_index)::threshold_type*, \
33 std::optional<index_type>, \
34 raft_proto::device_id<dev>, \
35 raft_proto::cuda_stream stream)
39 #define CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index) \
40 (CUML_FIL_FOREST(variant_index) const&, \
41 postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
42 CUML_FIL_SPEC(variant_index)::threshold_type*, \
43 CUML_FIL_SPEC(variant_index)::threshold_type*, \
47 CUML_FIL_SPEC(variant_index)::threshold_type*, \
50 std::optional<index_type>, \
51 raft_proto::device_id<dev>, \
52 raft_proto::cuda_stream stream)
56 #define CUML_FIL_SCALAR_NONLOCAL_ARGS(dev, variant_index) \
57 (CUML_FIL_FOREST(variant_index) const&, \
58 postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
59 CUML_FIL_SPEC(variant_index)::threshold_type*, \
60 CUML_FIL_SPEC(variant_index)::threshold_type*, \
65 CUML_FIL_SPEC(variant_index)::index_type*, \
67 std::optional<index_type>, \
68 raft_proto::device_id<dev>, \
69 raft_proto::cuda_stream stream)
73 #define CUML_FIL_VECTOR_NONLOCAL_ARGS(dev, variant_index) \
74 (CUML_FIL_FOREST(variant_index) const&, \
75 postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
76 CUML_FIL_SPEC(variant_index)::threshold_type*, \
77 CUML_FIL_SPEC(variant_index)::threshold_type*, \
81 CUML_FIL_SPEC(variant_index)::threshold_type*, \
82 CUML_FIL_SPEC(variant_index)::index_type*, \
84 std::optional<index_type>, \
85 raft_proto::device_id<dev>, \
86 raft_proto::cuda_stream stream)
90 #define CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, categorical) \
91 template_type void infer<dev, categorical, CUML_FIL_FOREST(variant_index)>
96 #define CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT(template_type, dev, variant_index) \
97 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, false) \
98 CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index);
103 #define CUML_FIL_INFER_DEV_SCALAR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
104 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
105 CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index);
110 #define CUML_FIL_INFER_DEV_SCALAR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index) \
111 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
112 CUML_FIL_SCALAR_NONLOCAL_ARGS(dev, variant_index);
117 #define CUML_FIL_INFER_DEV_VECTOR_LEAF_NO_CAT(template_type, dev, variant_index) \
118 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, false) \
119 CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index);
124 #define CUML_FIL_INFER_DEV_VECTOR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
125 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
126 CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index);
131 #define CUML_FIL_INFER_DEV_VECTOR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index) \
132 CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
133 CUML_FIL_VECTOR_NONLOCAL_ARGS(dev, variant_index);
137 #define CUML_FIL_INFER_ALL(template_type, dev, variant_index) \
138 CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT(template_type, dev, variant_index) \
139 CUML_FIL_INFER_DEV_SCALAR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
140 CUML_FIL_INFER_DEV_SCALAR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index) \
141 CUML_FIL_INFER_DEV_VECTOR_LEAF_NO_CAT(template_type, dev, variant_index) \
142 CUML_FIL_INFER_DEV_VECTOR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
143 CUML_FIL_INFER_DEV_VECTOR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index)