NVIDIA IndeX API nvidia_logo_transpbg.gif Up
nv::index::IData_subset_compute_task_processing Class Referenceabstract

Receives user-implemented compute tasks and applies them to distributed data subsets. More...

#include <idistributed_data_edit.h>

Inherits mi::base::Interface_declare< 0x27ff87c3, ... >.

Public Member Functions

virtual void execute_compute_task (const IData_subset_processing_task *compute_task, mi::neuraylib::IDice_transaction *dice_transaction) const =0
 Applies the passed user-implemented compute task to a subset of the distribute dataset. More...
 

Detailed Description

Receives user-implemented compute tasks and applies them to distributed data subsets.

The IData_subset_compute_task_processing interface class receives an user-implemented compute tasks through execute_compute_task() method and schedules its execution against a distributed data subset. Internally, the NVIDIA IndeX system makes the subset data resources available and invokes the the compute task's compute callback for processing it. Once the compute task finished the
distributed datatype specific operations, it typically signals the NVIDIA IndeX system if modifications have been applied to the subset data. If
modifications occurred then the NVIDIA IndeX system update the internal structures and resources accordingly.

The an instance of a IData_subset_compute_task_processing implementation is typically exposed through the IDistributed_data_job interface. Implemented distributed data job run against an distributed dataset that is uploaded to the GPU cluster. The job spans a thread or execution for each data subset of the dataset. Here, the subset data is either stored locally and is then processed by the method IDistributed_data_job::execute_subset or stored on a remote cluster machine and is then processed by the method IDistributed_data_job::execute_subset_remote. With either method, the job exposes an IData_subset_compute_task_processing interface so that an application can apply its specific IData_subset_processing_task implementation.

Note
The IData_subset_compute_task_processing will be extended in the future to provide additional information besides the ability to invoke user-implemented compute tasks.

Member Function Documentation

 execute_compute_task()

virtual void nv::index::IData_subset_compute_task_processing::execute_compute_task ( const IData_subset_processing_task compute_task,
mi::neuraylib::IDice_transaction *  dice_transaction 
) const
pure virtual

Applies the passed user-implemented compute task to a subset of the distribute dataset.

The execution will make the subset data available and invoke the methods of the compute task using the subset data representation as input parameter.

Parameters
[in]compute_taskThe compute task performs the editing operation and can be any user-defined technique or algorithm.
[in]dice_transactionThe DiCE transaction used for the operation.

The documentation for this class was generated from the following file: