Function interops::perform_interpreter_operation

Function Documentation

void interops::perform_interpreter_operation(cudf::mutable_table_view &out_table, const cudf::table_view &table, const std::vector<column_index_type> &left_inputs, const std::vector<column_index_type> &right_inputs, const std::vector<column_index_type> &outputs, const std::vector<column_index_type> &final_output_positions, const std::vector<operator_type> &operators, const std::vector<std::unique_ptr<cudf::scalar>> &left_scalars, const std::vector<std::unique_ptr<cudf::scalar>> &right_scalars, cudf::size_type operation_num_rows = 0)

Evaluates multiple operations encoded in a GPU friendly format in a single GPU kernel call.

Parameters
  • out_table: The output table to store the results

  • table: The input table

  • left_inputs: The encoded left inputs indices from all the processed expressions

  • right_inputs: The encoded right inputs indices from all the processed expressions

  • outputs: The encoded output indices from all the processed expressions

  • final_output_positions: The encoded final output indices for all the processed expressions

  • operators: The encoded operations from all the processed expressions

  • left_scalars: The scalars used as left inputs in the operations

  • right_scalars: The scalars used as right inputs in the operations

  • operation_num_rows: The output number of rows