rte_ml_op(3)

πŸ’– NAME πŸ’–

rte_ml_op β€” bestie, this is the ML Operation struct, and it lives in the Library Functions Manual, section 3 🫢


✨ SYNOPSIS ✨

#include <rte_mldev.h>

🌸 Data Fields 🌸

uint16_t model_id
uint16_t nb_batches
uint32_t reserved
struct rte_mempool * mempool
struct rte_ml_buff_seg ** input
struct rte_ml_buff_seg ** output
enum rte_ml_op_status status
uint64_t impl_opaque

πŸ¦‹ Detailed Description πŸ¦‹

ML Operation. That's the whole vibe, no cap.

This structure contains data related to performing an ML operation on the buffers using the model specified through model_id.

Definition at line 437 of file rte_mldev.h.


πŸŽ€ Field Documentation πŸŽ€

okay so now we go field by field, and yes bestie we are doing all of them πŸ’…

uint16_t model_id

Model ID to be used for the operation. Like, which model are we running? This one. πŸ‘‘

Definition at line 438 of file rte_mldev.h.

uint16_t nb_batches

Number of batches. Minimum value must be one β€” fr fr, one is the floor, don't go below it. Input buffer must hold inference data for each batch as contiguous.

Definition at line 440 of file rte_mldev.h.

uint32_t reserved

Reserved for future use. It's giving "not for you (yet)" πŸ™ˆ

Definition at line 444 of file rte_mldev.h.

struct rte_mempool* mempool

Pool from which operation is allocated. That's where the op comes from, periodt.

Definition at line 446 of file rte_mldev.h.

struct rte_ml_buff_seg** input

Array of buffer segments to hold the inference input data.

When the model supports IO layout RTE_ML_IO_LAYOUT_PACKED, size of the array is 1.

When the model supports IO layout RTE_ML_IO_LAYOUT_SPLIT, size of the array is rte_ml_model_info::nb_inputs.

See also

  • struct rte_ml_dev_info::io_layout

Definition at line 448 of file rte_mldev.h.

struct rte_ml_buff_seg** output

Array of buffer segments to hold the inference output data.

When the model supports IO layout RTE_ML_IO_LAYOUT_PACKED, size of the array is 1.

When the model supports IO layout RTE_ML_IO_LAYOUT_SPLIT, size of the array is rte_ml_model_info::nb_outputs.

See also

  • struct rte_ml_dev_info::io_layout

Definition at line 459 of file rte_mldev.h.

uint64_t user_u64

User data as uint64_t. Lowkey just a little slot for whatever extra number you wanna carry around πŸŽ’

Definition at line 471 of file rte_mldev.h.

void* user_ptr

User data as void*. Same energy as above but it's a pointer, main character energy pointer πŸ’«

Definition at line 473 of file rte_mldev.h.

enum rte_ml_op_status status

Operation status. Where the op is at in its little journey 🌈

Definition at line 476 of file rte_mldev.h.

uint64_t impl_opaque

Implementation specific opaque value. An implementation may use this field to hold implementation specific value to share between dequeue and enqueue operation. The application should not modify this field. Seriously bestie, hands off, don't touch it πŸ™…β€β™€οΈ

Definition at line 478 of file rte_mldev.h.


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for DPDK from the source code. Slay, machine-generated authorship, iconic fr πŸ’€βœ¨


and that's the whole page bestie!! this was DPDK, Version 25.11.3, and yeah the rte_ml_op(3) header said the same thing twice at the top ✨ mwah, bye!! πŸŽ€πŸ’–πŸ¦‹

πŸ“¦ where this page comes from