Macros
infer_macros.hpp File Reference
#include <cuml/experimental/fil/constants.hpp>
#include <cuml/experimental/fil/detail/forest.hpp>
#include <cuml/experimental/fil/detail/index_type.hpp>
#include <cuml/experimental/fil/detail/postprocessor.hpp>
#include <cuml/experimental/fil/detail/raft_proto/cuda_stream.hpp>
#include <cuml/experimental/fil/detail/raft_proto/device_id.hpp>
#include <cuml/experimental/fil/detail/raft_proto/device_type.hpp>
#include <cuml/experimental/fil/detail/specialization_types.hpp>
#include <cuml/experimental/fil/detail/specializations/forest_macros.hpp>
#include <cuml/experimental/fil/infer_kind.hpp>
#include <cstddef>
#include <variant>
Include dependency graph for infer_macros.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index)
 
#define CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index)
 
#define CUML_FIL_SCALAR_NONLOCAL_ARGS(dev, variant_index)
 
#define CUML_FIL_VECTOR_NONLOCAL_ARGS(dev, variant_index)
 
#define CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, categorical)    template_type void infer<dev, categorical, CUML_FIL_FOREST(variant_index)>
 
#define CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT(template_type, dev, variant_index)
 
#define CUML_FIL_INFER_DEV_SCALAR_LEAF_LOCAL_CAT(template_type, dev, variant_index)
 
#define CUML_FIL_INFER_DEV_SCALAR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index)
 
#define CUML_FIL_INFER_DEV_VECTOR_LEAF_NO_CAT(template_type, dev, variant_index)
 
#define CUML_FIL_INFER_DEV_VECTOR_LEAF_LOCAL_CAT(template_type, dev, variant_index)
 
#define CUML_FIL_INFER_DEV_VECTOR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index)
 
#define CUML_FIL_INFER_ALL(template_type, dev, variant_index)
 

Macro Definition Documentation

◆ CUML_FIL_INFER_ALL

#define CUML_FIL_INFER_ALL (   template_type,
  dev,
  variant_index 
)
Value:
CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT(template_type, dev, variant_index) \
CUML_FIL_INFER_DEV_SCALAR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
CUML_FIL_INFER_DEV_SCALAR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index) \
CUML_FIL_INFER_DEV_VECTOR_LEAF_NO_CAT(template_type, dev, variant_index) \
CUML_FIL_INFER_DEV_VECTOR_LEAF_LOCAL_CAT(template_type, dev, variant_index) \
CUML_FIL_INFER_DEV_VECTOR_LEAF_NONLOCAL_CAT(template_type, dev, variant_index)
#define CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT(template_type, dev, variant_index)
Definition: infer_macros.hpp:107

◆ CUML_FIL_INFER_DEV_SCALAR_LEAF_LOCAL_CAT

#define CUML_FIL_INFER_DEV_SCALAR_LEAF_LOCAL_CAT (   template_type,
  dev,
  variant_index 
)
Value:
CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index);
#define CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, categorical)
Definition: infer_macros.hpp:101

◆ CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT

#define CUML_FIL_INFER_DEV_SCALAR_LEAF_NO_CAT (   template_type,
  dev,
  variant_index 
)
Value:
CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, false) \
CUML_FIL_SCALAR_LOCAL_ARGS(dev, variant_index);

◆ CUML_FIL_INFER_DEV_SCALAR_LEAF_NONLOCAL_CAT

#define CUML_FIL_INFER_DEV_SCALAR_LEAF_NONLOCAL_CAT (   template_type,
  dev,
  variant_index 
)
Value:
CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
CUML_FIL_SCALAR_NONLOCAL_ARGS(dev, variant_index);

◆ CUML_FIL_INFER_DEV_VECTOR_LEAF_LOCAL_CAT

#define CUML_FIL_INFER_DEV_VECTOR_LEAF_LOCAL_CAT (   template_type,
  dev,
  variant_index 
)
Value:
CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index);

◆ CUML_FIL_INFER_DEV_VECTOR_LEAF_NO_CAT

#define CUML_FIL_INFER_DEV_VECTOR_LEAF_NO_CAT (   template_type,
  dev,
  variant_index 
)
Value:
CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, false) \
CUML_FIL_VECTOR_LOCAL_ARGS(dev, variant_index);

◆ CUML_FIL_INFER_DEV_VECTOR_LEAF_NONLOCAL_CAT

#define CUML_FIL_INFER_DEV_VECTOR_LEAF_NONLOCAL_CAT (   template_type,
  dev,
  variant_index 
)
Value:
CUML_FIL_INFER_TEMPLATE(template_type, dev, variant_index, true) \
CUML_FIL_VECTOR_NONLOCAL_ARGS(dev, variant_index);

◆ CUML_FIL_INFER_TEMPLATE

#define CUML_FIL_INFER_TEMPLATE (   template_type,
  dev,
  variant_index,
  categorical 
)     template_type void infer<dev, categorical, CUML_FIL_FOREST(variant_index)>

◆ CUML_FIL_SCALAR_LOCAL_ARGS

#define CUML_FIL_SCALAR_LOCAL_ARGS (   dev,
  variant_index 
)
Value:
(CUML_FIL_FOREST(variant_index) const&, \
postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
std::nullptr_t, \
std::nullptr_t, \
std::optional<index_type>, \
#define CUML_FIL_SPEC(variant_index)
Definition: forest_macros.hpp:28
#define CUML_FIL_FOREST(variant_index)
Definition: forest_macros.hpp:33
uint32_t index_type
Definition: index_type.hpp:21
infer_kind
Definition: infer_kind.hpp:20
Definition: buffer.hpp:35
int cuda_stream
Definition: cuda_stream.hpp:25
detail::device_id< D > device_id
Definition: device_id.hpp:29

◆ CUML_FIL_SCALAR_NONLOCAL_ARGS

#define CUML_FIL_SCALAR_NONLOCAL_ARGS (   dev,
  variant_index 
)
Value:
(CUML_FIL_FOREST(variant_index) const&, \
postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
std::nullptr_t, \
CUML_FIL_SPEC(variant_index)::index_type*, \
std::optional<index_type>, \

◆ CUML_FIL_VECTOR_LOCAL_ARGS

#define CUML_FIL_VECTOR_LOCAL_ARGS (   dev,
  variant_index 
)
Value:
(CUML_FIL_FOREST(variant_index) const&, \
postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
std::nullptr_t, \
std::optional<index_type>, \

◆ CUML_FIL_VECTOR_NONLOCAL_ARGS

#define CUML_FIL_VECTOR_NONLOCAL_ARGS (   dev,
  variant_index 
)
Value:
(CUML_FIL_FOREST(variant_index) const&, \
postprocessor<CUML_FIL_SPEC(variant_index)::threshold_type> const&, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
CUML_FIL_SPEC(variant_index)::threshold_type*, \
CUML_FIL_SPEC(variant_index)::index_type*, \
std::optional<index_type>, \