C# Класс Encog.Neural.Networks.Training.Concurrent.ConcurrentTrainingManager

Concurrent training manager. This class allows you to queue up network training tasks to be executed either by the CPU cores or OpenCL devices. This allows the CPU/GPU to train neural networks at the same time.
Показать файл Открыть проект

Открытые методы

Метод Описание
AddPerformer ( IConcurrentTrainingPerformer performer ) : void

Add a performer.

AddTrainingJob ( TrainingJob job ) : void

Add a training job.

ClearPerformers ( ) : void

Clear all of the performers.

ClearQueue ( ) : void

Clear the workload.

DetectPerformers ( ) : void

Detect performers. Create one performer for each OpenCL device, and another for the CPU's. If there is an OpenCL device already for the CPU, do not create another CPU performer.

DetectPerformers ( bool splitCores, int forceCoreCount ) : void

Detect performers. Create one performer for each OpenCL device, and another for the CPU's. If there is an OpenCL device already for the CPU, do not create another CPU performer.

JobDone ( long time, ConcurrentTrainingPerformerCPU perf ) : void

Report that a job is done.

Join ( ) : void

Wait for all tasks to finish.

Run ( ) : void

Perform the training. Called internally.

Start ( ) : void

Start the manager.

ToString ( ) : String
WaitForFreePerformer ( TrainingJob job ) : IConcurrentTrainingPerformer

Wait for a free performer.

Приватные методы

Метод Описание
ConcurrentTrainingManager ( ) : System

Private constructor.

ReportErrors ( ) : void

If an error has been reported, then throw it as an exception.

ReportStatus ( String str ) : void

Report the status.

Описание методов

AddPerformer() публичный Метод

Add a performer.
public AddPerformer ( IConcurrentTrainingPerformer performer ) : void
performer IConcurrentTrainingPerformer The performer to add.
Результат void

AddTrainingJob() публичный Метод

Add a training job.
public AddTrainingJob ( TrainingJob job ) : void
job Encog.Neural.Networks.Training.Concurrent.Jobs.TrainingJob The training job to add.
Результат void

ClearPerformers() публичный Метод

Clear all of the performers.
public ClearPerformers ( ) : void
Результат void

ClearQueue() публичный Метод

Clear the workload.
public ClearQueue ( ) : void
Результат void

DetectPerformers() публичный Метод

Detect performers. Create one performer for each OpenCL device, and another for the CPU's. If there is an OpenCL device already for the CPU, do not create another CPU performer.
public DetectPerformers ( ) : void
Результат void

DetectPerformers() публичный Метод

Detect performers. Create one performer for each OpenCL device, and another for the CPU's. If there is an OpenCL device already for the CPU, do not create another CPU performer.
public DetectPerformers ( bool splitCores, int forceCoreCount ) : void
splitCores bool True, if a CPU performer should be created for each core.
forceCoreCount int The core count to be forced.
Результат void

JobDone() публичный Метод

Report that a job is done.
public JobDone ( long time, ConcurrentTrainingPerformerCPU perf ) : void
time long Time took by the job.
perf Encog.Neural.Networks.Training.Concurrent.Performers.ConcurrentTrainingPerformerCPU The perfofmer that did the job.
Результат void

Join() публичный Метод

Wait for all tasks to finish.
public Join ( ) : void
Результат void

Run() публичный Метод

Perform the training. Called internally.
public Run ( ) : void
Результат void

Start() публичный Метод

Start the manager.
public Start ( ) : void
Результат void

ToString() публичный Метод

public ToString ( ) : String
Результат String

WaitForFreePerformer() публичный Метод

Wait for a free performer.
public WaitForFreePerformer ( TrainingJob job ) : IConcurrentTrainingPerformer
job TrainingJob
Результат IConcurrentTrainingPerformer