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

Retrieving information about the data distribution and scheduling tasks against distributed data. More...

#include <idistributed_data_locality.h>

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

Public Member Functions

virtual IDistributed_data_job_schedulercreate_scheduler () const =0
 Scheduler that directs distributed data jobs to nodes and GPUs for analyzing and processing large-scale datasets. More...
 
virtual IDistributed_data_localityget_data_locality (const mi::base::Uuid &class_id, IDistributed_data_locality_query_mode *query_method, mi::neuraylib::IDice_transaction *dice_transaction) const =0
 Creating a data locality for the given query method and a given distributed dataset type. More...
 
template<class T>
IDistributed_data_localityget_data_locality (IDistributed_data_locality_query_mode *query_method, mi::neuraylib::IDice_transaction *dice_transaction) const
 Convenience template functions for creating a typed data locality. More...
 
template<class T>
IDistributed_data_localityget_data_locality (mi::neuraylib::Tag_struct tag, const mi::math::Bbox_struct< mi::Float32, 3 > &query_bbox, mi::neuraylib::IDice_transaction *dice_transaction) const
 Convenience template functions for creating a typed data locality. More...
 

Detailed Description

Retrieving information about the data distribution and scheduling tasks against distributed data.

The ISession exposes access to the IData_distribution interface class. The interface class grants general overview on the data distribution, i.e., exposes the data locality for a distributed dataset or enables the application to issue distribute jobs in the cluster environment.

Note
This interface class is going to expose additional details on the data distribution in the future.

Member Function Documentation

 create_scheduler()

virtual IDistributed_data_job_scheduler * nv::index::IData_distribution::create_scheduler ( ) const
pure virtual

Scheduler that directs distributed data jobs to nodes and GPUs for analyzing and processing large-scale datasets.

Returns
Returns an instance of the job scheduler interface IDistributed_data_job_scheduler that issues distributed data analysis and processing techniques towards cluster nodes on a data subset granularity.

 get_data_locality() [1/3]

virtual IDistributed_data_locality * nv::index::IData_distribution::get_data_locality ( const mi::base::Uuid &  class_id,
IDistributed_data_locality_query_mode query_method,
mi::neuraylib::IDice_transaction *  dice_transaction 
) const
pure virtual

Creating a data locality for the given query method and a given distributed dataset type.

Query the distribution of irregular volume data in the cluster. The returned instance of the class that implements interface IDistributed_data_locality provides the cluster nodes where parts of the queried data including their respective bounding boxes (brick bounding box) are stored.

Parameters
[in]class_idIdentifier of the distributed dataset type.
[in]query_methodThe query method used for determining a data locality.
[in]dice_transactionThe DiCE transaction that the operation runs in.
Returns
Returns the data locality that corresponds to the query method.

 get_data_locality() [2/3]

template<class T>
IDistributed_data_locality * nv::index::IData_distribution::get_data_locality ( IDistributed_data_locality_query_mode query_method,
mi::neuraylib::IDice_transaction *  dice_transaction 
) const
inline

Convenience template functions for creating a typed data locality.

The template parameter T defines distributed dataset type for which the data locality shall be determined.

//
// Usage:
//
mi::base::Handle<const nv::index::IDistributed_data_locality> data_locality(
data_distribution->get_data_locality<nv::index::ISparse_volume_scene_element>(query_method, dice_transaction));
Interface for sparse volume scene elements.
Definition: isparse_volume_scene_element.h:25
Parameters
[in]query_methodThe query method used for determining a data locality.
[in]dice_transactionThe DiCE transaction that the operation runs in.
Returns
Returns a typed data locality that corresponds to the query method.

 get_data_locality() [3/3]

template<class T>
IDistributed_data_locality * nv::index::IData_distribution::get_data_locality ( mi::neuraylib::Tag_struct  tag,
const mi::math::Bbox_struct< mi::Float32, 3 > &  query_bbox,
mi::neuraylib::IDice_transaction *  dice_transaction 
) const
inline

Convenience template functions for creating a typed data locality.

Creates a data locality for a distributed dataset and a spatial query. The template parameter T defines distributed dataset type for which the data locality shall be determined.

//
// Usage:
//
mi::base::Handle<const nv::index::IDistributed_data_locality> data_locality(
data_distribution->get_data_locality<nv::index::ISparse_volume_scene_element>(tag, bbox, dice_transaction));
Parameters
[in]tagSpecifies the distributed dataset for which the data locality shall be determined.
[in]query_bboxBounding box for specifying a spatial query method for determining a data locality.
[in]dice_transactionThe DiCE transaction that the operation runs in.
Returns
Returns a typed data locality that corresponds to the query method.

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