Accelerated Computation Engine
Public Member Functions | Static Protected Member Functions | List of all members
EAbstractAnalytic::OpenCL::Worker Class Referenceabstract

#include <eabstractanalytic_opencl_worker.h>

Inheritance diagram for EAbstractAnalytic::OpenCL::Worker:

Public Member Functions

virtual std::unique_ptr< EAbstractAnalytic::Blockexecute (const EAbstractAnalytic::Block *block)=0
 

Static Protected Member Functions

static int threadSize ()
 

Detailed Description

This represents a single OpenCL worker for an analytic type that processes work blocks and returns result blocks using OpenCL acceleration. Multiple instances of this class are used in parallel on separate threads so thread safety must always be considered for any code used by the the methods of any implementation of this class.

Member Function Documentation

◆ execute()

virtual std::unique_ptr<EAbstractAnalytic::Block> EAbstractAnalytic::OpenCL::Worker::execute ( const EAbstractAnalytic::Block block)
pure virtual

This interface reads in the given work block, executes the algorithms necessary to produce its results using OpenCL acceleration, and saves those results in a new results block whose pointer is returned.

Parameters
block
Returns
Pointer to results block produced from the given work block.

◆ threadSize()

int EAbstractAnalytic::OpenCL::Worker::threadSize ( )
staticprotected

Returns the total number of threads ACE uses to run OpenCL workers in parallel.

Returns
Total number of OpenCL worker threads.

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