dopt.core

This package contains the framework for constructing and executing operation graphs.

  • dopt.core.ops provides functions for constructing nodes in the operation graph.
  • dopt.core.grads provides functions for computing the derivatives of operations.
  • dopt.core.cpu contains a backend that executes operation graphs using the CPU.
  • dopt.core.cuda contains a backend that executes operation graphs using a CUDA enabled GPU.

Modules

grads
module dopt.core.grads

Contains the automatic differentiation framework.

ops
module dopt.core.ops

This package facilitates the construction of various nodes in the operation graph.

types
module dopt.core.types
Undocumented in source.

Public Imports

dopt.core.grads
public import dopt.core.grads;
dopt.core.ops
public import dopt.core.ops;
dopt.core.types
public import dopt.core.types;

Members

Aliases

Allocator
alias Allocator = DeviceBuffer delegate(size_t numBytes)
Undocumented in source.
Compiler
alias Compiler = Plan delegate(Operation[] ops)
Undocumented in source.
Evaluator
alias Evaluator = DeviceBuffer[] delegate(Operation[] ops, DeviceBuffer[Operation] args)
Undocumented in source.

Classes

Plan
class Plan
Undocumented in source.

Functions

allocate
DeviceBuffer allocate(size_t numBytes)
Undocumented in source. Be warned that the author may not have intended to support it.
buffer
DeviceBuffer buffer(void[] vals)
Undocumented in source. Be warned that the author may not have intended to support it.
compile
Plan compile(Operation[] outputs)

Compile an Operation graph into a reusable execution plan.

defaultArgAllocator
Allocator defaultArgAllocator()
Undocumented in source. Be warned that the author may not have intended to support it.
defaultArgAllocator
void defaultArgAllocator(Allocator da)
Undocumented in source. Be warned that the author may not have intended to support it.
defaultCompiler
Compiler defaultCompiler()
Undocumented in source. Be warned that the author may not have intended to support it.
defaultCompiler
void defaultCompiler(Compiler de)
Undocumented in source. Be warned that the author may not have intended to support it.
defaultEvaluator
Evaluator defaultEvaluator()
Undocumented in source. Be warned that the author may not have intended to support it.
defaultEvaluator
void defaultEvaluator(Evaluator de)
Undocumented in source. Be warned that the author may not have intended to support it.
defaultVarAllocator
Allocator defaultVarAllocator()
Undocumented in source. Be warned that the author may not have intended to support it.
defaultVarAllocator
void defaultVarAllocator(Allocator da)
Undocumented in source. Be warned that the author may not have intended to support it.
evaluate
DeviceBuffer[] evaluate(Operation[] ops, DeviceBuffer[Operation] args)

Evaluates a several nodes from the operation graph.

evaluate
DeviceBuffer evaluate(Operation op, DeviceBuffer[Operation] args)

Evaluates an operation graph with a single root node.

Meta

Authors

Henry Gouk