MyCaffe  1.12.2.41
Deep learning software for Windows C# programmers.
MyCaffe.common.SolverInfo< T > Class Template Reference

The SolverInfo defines the user supplied arguments passed to each Worker. More...

Public Member Functions

 SolverInfo (Solver< T > rank0, long hSrcKernel, long hSrcNccl, int nSolverRank, int nIterationOverride, string strCudaPath, List< ManualResetEvent > rgGradientReadyEvents, ManualResetEvent evtAllCreated)
 The SolverInfo constructor. More...
 

Properties

Solver< T > Rank0 [get]
 Returns rank Solver that will run in the Worker. More...
 
string CudaPath [get]
 Returns the file path to the low-level CudaDnnDll.DLL file to use. Note, when null or emtpy, the path of the executing Assembly is used. More...
 
int IterationOverride [get]
 Returns the training iteration override to use. More...
 
long KernelHandle [get]
 Returns a handle to the kernel where the NCCL for this Solver was created (typically this is the kernel that also created the root Solver) More...
 
long NcclHandle [get]
 Returns the handle to the NCCL instance for this Solver (typically this is created on the kernel that also created the root Solver, and must be transferred to the kernel of the CudaDnn instance running in the Worker). More...
 
int SolverRank [get]
 Returns the rank of this Solver. More...
 
ManualResetEvent InitializedEvent [get]
 Returns the event that is set after the Worker has completed initializing. More...
 
ManualResetEvent StartedEvent [get]
 Returns the event that is set after the Worker has started running. More...
 
ManualResetEvent AllCreatedEvent [get]
 Returns the event that is set after all Workers have been created. More...
 
List< ManualResetEvent > GradientReadyEvents [get]
 Returns the event that is set after the gradients of the Solver in this Worker are ready. More...
 
Exception Error [getset]
 Returns the error (if any) that occured when running the solver thread. More...
 
AutoResetEvent ErrorEvent [get]
 Returns the event that is set when an error occurs. More...
 

Detailed Description

The SolverInfo defines the user supplied arguments passed to each Worker.

Template Parameters
TSpecifies the base type float or double. Using float is recommended to conserve GPU memory.

Definition at line 519 of file Parallel.cs.

Constructor & Destructor Documentation

◆ SolverInfo()

MyCaffe.common.SolverInfo< T >.SolverInfo ( Solver< T >  rank0,
long  hSrcKernel,
long  hSrcNccl,
int  nSolverRank,
int  nIterationOverride,
string  strCudaPath,
List< ManualResetEvent >  rgGradientReadyEvents,
ManualResetEvent  evtAllCreated 
)

The SolverInfo constructor.

Parameters
rank0Specifies rank Solver that will run in the Worker.
hSrcKernelSpecifies a handle to the kernel where the NCCL for this Solver was created (typically this is the kernel that also created the root Solver).
hSrcNcclSpecifies the handle to the NCCL instance for this Solver (typically this is created on the kernel that also created the root Solver, and must be transferred to the kernel of the CudaDnn instance running in the Worker).
nSolverRankSpecifies the rank of this Solver.
nIterationOverrideSpecifies the training iteration override to use.
strCudaPathSpecifies the file path to the low-level CudaDnnDll.DLL file to use. Note, when null or emtpy, the path of the executing Assembly is used.
rgGradientReadyEventsSpecifies the list of events used to coordinate with other Solvers.
evtAllCreatedSpecifies an event used to coordinate the creation of all participating Workers.

Definition at line 545 of file Parallel.cs.

Property Documentation

◆ AllCreatedEvent

ManualResetEvent MyCaffe.common.SolverInfo< T >.AllCreatedEvent
get

Returns the event that is set after all Workers have been created.

Definition at line 624 of file Parallel.cs.

◆ CudaPath

string MyCaffe.common.SolverInfo< T >.CudaPath
get

Returns the file path to the low-level CudaDnnDll.DLL file to use. Note, when null or emtpy, the path of the executing Assembly is used.

Definition at line 568 of file Parallel.cs.

◆ Error

Exception MyCaffe.common.SolverInfo< T >.Error
getset

Returns the error (if any) that occured when running the solver thread.

Definition at line 640 of file Parallel.cs.

◆ ErrorEvent

AutoResetEvent MyCaffe.common.SolverInfo< T >.ErrorEvent
get

Returns the event that is set when an error occurs.

Definition at line 649 of file Parallel.cs.

◆ GradientReadyEvents

List<ManualResetEvent> MyCaffe.common.SolverInfo< T >.GradientReadyEvents
get

Returns the event that is set after the gradients of the Solver in this Worker are ready.

Definition at line 632 of file Parallel.cs.

◆ InitializedEvent

ManualResetEvent MyCaffe.common.SolverInfo< T >.InitializedEvent
get

Returns the event that is set after the Worker has completed initializing.

Definition at line 608 of file Parallel.cs.

◆ IterationOverride

int MyCaffe.common.SolverInfo< T >.IterationOverride
get

Returns the training iteration override to use.

Definition at line 576 of file Parallel.cs.

◆ KernelHandle

long MyCaffe.common.SolverInfo< T >.KernelHandle
get

Returns a handle to the kernel where the NCCL for this Solver was created (typically this is the kernel that also created the root Solver)

Definition at line 584 of file Parallel.cs.

◆ NcclHandle

long MyCaffe.common.SolverInfo< T >.NcclHandle
get

Returns the handle to the NCCL instance for this Solver (typically this is created on the kernel that also created the root Solver, and must be transferred to the kernel of the CudaDnn instance running in the Worker).

Definition at line 592 of file Parallel.cs.

◆ Rank0

Solver<T> MyCaffe.common.SolverInfo< T >.Rank0
get

Returns rank Solver that will run in the Worker.

Definition at line 560 of file Parallel.cs.

◆ SolverRank

int MyCaffe.common.SolverInfo< T >.SolverRank
get

Returns the rank of this Solver.

Definition at line 600 of file Parallel.cs.

◆ StartedEvent

ManualResetEvent MyCaffe.common.SolverInfo< T >.StartedEvent
get

Returns the event that is set after the Worker has started running.

Definition at line 616 of file Parallel.cs.


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