Executors#

Ginkgo’s executors abstract the hardware that a LinOp runs on. Every data object (matrix, vector, factorisation, solver) carries a shared pointer to an Executor; every kernel dispatches through it; copies between executors are explicit. The six classes here cover the five supported backends plus the abstract base.

For background on the executor model (when each backend is appropriate, how cross-executor copies work, allocator choices), see the Executor model concept page.

Abstract base#

  • Executor: abstract base; the interface every concrete executor implements.

Concrete backends#