NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
DOCA UROM (Unified Resource and Offload Manager)
Collaboration diagram for DOCA UROM (Unified Resource and Offload Manager):

Modules

 DOCA UROM Services
 
 DOCA UROM Environment Variables
 
 DOCA UROM Workers
 
 DOCA UROM Worker Tasks
 
 DOCA UROM Domains
 
 DOCA UROM Plugins
 

Data Structures

struct  doca_urom_domain_oob_coll
 Out-of-band communication descriptor for Domain creation. More...
 

Functions

DOCA_EXPERIMENTAL doca_error_t doca_urom_service_get_workers_by_gid_task_allocate (struct doca_urom_service *service_ctx, struct doca_urom_service_get_workers_by_gid_task **task)
 Allocate Service get workers by gid task. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_urom_service_get_workers_by_gid_task_allocate_init (struct doca_urom_service *service_ctx, uint32_t gid, doca_urom_service_get_workers_by_gid_task_completion_cb_t cb, struct doca_urom_service_get_workers_by_gid_task **task)
 Allocate Service get workers by gid task and set task attributes. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_urom_service_get_workers_by_gid_task_release (struct doca_urom_service_get_workers_by_gid_task *task)
 Release Service get workers by gid task. More...
 
DOCA_EXPERIMENTAL void doca_urom_service_get_workers_by_gid_task_set_gid (struct doca_urom_service_get_workers_by_gid_task *task, uint32_t gid)
 Set Service get workers task group id. More...
 
DOCA_EXPERIMENTAL void doca_urom_service_get_workers_by_gid_task_set_cb (struct doca_urom_service_get_workers_by_gid_task *task, doca_urom_service_get_workers_by_gid_task_completion_cb_t cb)
 Set Service get workers task completion callback. More...
 
DOCA_EXPERIMENTAL struct doca_task * doca_urom_service_get_workers_by_gid_task_as_task (struct doca_urom_service_get_workers_by_gid_task *task)
 This method converts a service get workers task to doca_task. More...
 
DOCA_EXPERIMENTAL size_t doca_urom_service_get_workers_by_gid_task_get_workers_count (struct doca_urom_service_get_workers_by_gid_task *task)
 Get the number of workers returned for the requested gid. More...
 
DOCA_EXPERIMENTAL const uint64_t * doca_urom_service_get_workers_by_gid_task_get_worker_ids (struct doca_urom_service_get_workers_by_gid_task *task)
 Get Service get workers task ids array. More...
 
DOCA_EXPERIMENTAL struct doca_task * doca_urom_worker_cmd_task_as_task (struct doca_urom_worker_cmd_task *task)
 This method converts a worker cmd task to doca_task. More...
 

Detailed Description

DOCA Unified Resource and Offload Manager (UROM) offers a framework for offloading a portion of parallel computing tasks, such as those related to HPC or AI workloads and frameworks, from the host to the NVIDIA DPUs. Please follow the programmer guide for usage instructions.

Function Documentation

◆ doca_urom_service_get_workers_by_gid_task_allocate()

DOCA_EXPERIMENTAL doca_error_t doca_urom_service_get_workers_by_gid_task_allocate ( struct doca_urom_service *  service_ctx,
struct doca_urom_service_get_workers_by_gid_task **  task 
)

Allocate Service get workers by gid task.

Parameters
[in]service_ctxThe service is used for the task.
[out]taskThe new task.
Returns
DOCA_SUCCESS - in case of success. doca_error code - in case of failure:
  • DOCA_ERROR_NO_MEMORY - Failed to allocate task.

◆ doca_urom_service_get_workers_by_gid_task_allocate_init()

DOCA_EXPERIMENTAL doca_error_t doca_urom_service_get_workers_by_gid_task_allocate_init ( struct doca_urom_service *  service_ctx,
uint32_t  gid,
doca_urom_service_get_workers_by_gid_task_completion_cb_t  cb,
struct doca_urom_service_get_workers_by_gid_task **  task 
)

Allocate Service get workers by gid task and set task attributes.

Parameters
[in]service_ctxThe service is used for the task.
[in]gidWorker group id to set
[in]cbTask completion callback to set
[out]taskThe new task.
Returns
DOCA_SUCCESS - in case of success. doca_error code - in case of failure:
  • DOCA_ERROR_NO_MEMORY - Failed to allocate task.

◆ doca_urom_service_get_workers_by_gid_task_as_task()

DOCA_EXPERIMENTAL struct doca_task* doca_urom_service_get_workers_by_gid_task_as_task ( struct doca_urom_service_get_workers_by_gid_task *  task)

This method converts a service get workers task to doca_task.

Parameters
[in]taskdoca_urom_service_get_workers_by_gid_task task
Returns
doca_task

◆ doca_urom_service_get_workers_by_gid_task_get_worker_ids()

DOCA_EXPERIMENTAL const uint64_t* doca_urom_service_get_workers_by_gid_task_get_worker_ids ( struct doca_urom_service_get_workers_by_gid_task *  task)

Get Service get workers task ids array.

Parameters
[in]taskThe task to return a worker ids array.
Returns
The worker ids array

◆ doca_urom_service_get_workers_by_gid_task_get_workers_count()

DOCA_EXPERIMENTAL size_t doca_urom_service_get_workers_by_gid_task_get_workers_count ( struct doca_urom_service_get_workers_by_gid_task *  task)

Get the number of workers returned for the requested gid.

Parameters
[in]taskThe task to return a worker count.
Returns
The workers counts

◆ doca_urom_service_get_workers_by_gid_task_release()

DOCA_EXPERIMENTAL doca_error_t doca_urom_service_get_workers_by_gid_task_release ( struct doca_urom_service_get_workers_by_gid_task *  task)

Release Service get workers by gid task.

Parameters
[in]taskThe task to release
Returns
DOCA_SUCCESS - in case of success. doca_error code - in case of failure:
  • DOCA_ERROR_NOT_PERMITTED - Task resources still in use.

◆ doca_urom_service_get_workers_by_gid_task_set_cb()

DOCA_EXPERIMENTAL void doca_urom_service_get_workers_by_gid_task_set_cb ( struct doca_urom_service_get_workers_by_gid_task *  task,
doca_urom_service_get_workers_by_gid_task_completion_cb_t  cb 
)

Set Service get workers task completion callback.

Parameters
[in]taskThe task used to set the plugin on.
[in]cbThe task completion callback

◆ doca_urom_service_get_workers_by_gid_task_set_gid()

DOCA_EXPERIMENTAL void doca_urom_service_get_workers_by_gid_task_set_gid ( struct doca_urom_service_get_workers_by_gid_task *  task,
uint32_t  gid 
)

Set Service get workers task group id.

Parameters
[in]taskThe task used to set the gid on.
[in]gidThe task group id to get workers by.

◆ doca_urom_worker_cmd_task_as_task()

DOCA_EXPERIMENTAL struct doca_task* doca_urom_worker_cmd_task_as_task ( struct doca_urom_worker_cmd_task *  task)

This method converts a worker cmd task to doca_task.

Parameters
[in]taskdoca_urom_worker_cmd_task task
Returns
doca_task