API in Alphabetical Order#

All functions and classes listed here are part of the Kokkos:: namespace.

Algorithms#

Name

Library

Category

Description

Rand

Algorithm

Random Number

Generator Type (12), draw options (3)

Random_XorShift64_Pool

Algorithm

Random Number

Random Number Generator, pool for threads

Random_XorShift64

Algorithm

Random Number

Random Number Generator for 12 types, plus normal distribution

init

Algorithm

Random Number

Initialize state using seed for Random_XorShift64_Pool

Random_XorShift1024_Pool

Algorithm

Random Number

Random Number Generator, 1024 bit, pool for threads

Random_XorShift1024

Algorithm

Random Number

Random Number Generator for 12 types, plus normal distribution

fill_random

Algorithm

Random Number

Create sample space to fit a (0 to) range or begin-end space

Containers#

Name

Library

Category

Description

Bitset

Containers

View

A concurrent Bitset class.

DualView

Containers

View

Host-Device Mirror of View with Host-Device Memory

DynamicView

Containers

View

A view which can change its size dynamically.

DynRankView

Containers

View

A view which can determine its rank at runtime.

ErrorReporter

Containers

View

A class supporting error recording in parallel code.

OffsetView

Containers

View

View structure supporting non-zero start indices.

ScatterView

Containers

View

View structure to transpartently support atomic and data replication strategies for scatter-reduce algorithms.

StaticCrsGraph

Containers

View

A non-resizable CRS graph structure with view semantics.

UnorderedMap

Containers

View

A map data structure optimized for concurrent inserts.

vector

Containers

View

[DEPRECATED] A class providing similar interfaces to std::vector.

Core#

Name

Library

Category

Description

abort

Core

Utilities

Causes abnormal program termination.

ALL

Core

Utilities

Selects all elements in a dimension.

atomic_exchange

Core

Atomic-Operations

Atomic operation which exchanges a value and returns the old.

atomic_compare_exchange

Core

Atomic-Operations

Atomic operation which exchanges a value only if the old value matches a comparison value and returns the old value.

atomic_compare_exchange_strong

Core

Atomic-Operations

Atomic operation which exchanges a value only if the old value matches a comparison value and returns true if the exchange is executed.

atomic_load

Core

Atomic-Operations

Atomic operation which loads a value.

atomic_[op]

Core

Atomic-Operations

Atomic operation which don’t return anything.

atomic_fetch_[op]

Core

Atomic-Operations

Various atomic operations which return the old value.

atomic_[op]_fetch

Core

Atomic-Operations

Various atomic operations which return the updated value.

atomic_store

Core

Atomic-Operations

Atomic operation which stores a value.

BAnd

Core

Atomic-Operations

Reducer for Binary ‘And’ reduction

BOr

Core

Atomic-Operations

Reducer for Binary ‘Or’ reduction

complex

Core

STL Compatibility

Complex numbers which work on host and device

(X)create_mirror

Core

View and related

Mirror Host data to Device data

(X)create_mirror_view

Core

View and related

Mirror Host data to Device data

Cuda

Core

Spaces

The CUDA Execution Space.

CudaSpace

Core

Spaces

The primary CUDA Memory Space.

CudaUVMSpace

Core

Spaces

The CUDA Memory Space providing access to unified memory page migratable allocations.

CudaHostPinnedSpace

Core

Spaces

The CUDA Memrory Space providing access to host pinned GPU-accessible host memory.

deep_copy

Core

View and related

Copy Views

ExecutionPolicy Concept

Core

Execution Policies

Concept for execution policies.

ExecutionSpace concept

Core

Spaces

Concept for execution spaces.

fence

Core

Fences execution spaces.

finalize

Core

Initialization and Finalization

function to finalize Kokkos

HostSpace

Core

Spaces

The primary Host Memory Space.

HPX

Core

Spaces

Execution space using the HPX runtime system execution mechanisms.

InitArguments

Core

Initialization and Finalization

struct to programmatically define how to initialize Kokkos (deprecated in version 3.7)

InitializationSettings

Core

Initialization and Finalization

class to programmatically define how to initialize Kokkos

initialize

Core

Initialization and Finalization

function to initialize Kokkos

is_array_layout

Core

Traits

Trait to detect types that model the Layout concept

is_execution_policy

Core

Traits

Trait to detect types that model ExecutionPolicy concept

is_execution_space

Core

Traits

Trait to detect types that model ExecutionSpace concept

is_memory_space

Core

Traits

Trait to detect types that model MemorySpace concept

is_memory_traits

Core

Traits

Trait to detect specializations of Kokkos::MemoryTraits

is_reducer

Core

Traits

Trait to detect types that model the Reducer concept

is_space

Core

Traits

Trait to detect types that model the Space concept

LayoutLeft

Core

View and related

Memory Layout matching Fortran

LayoutRight

Core

View and related

Memory Layout matching C

LayoutStride

Core

View and related

Memory Layout for arbitrary strides

kokkos_free

Core

Memory Management

Dellocates previously allocated memory

kokkos_malloc

Core

Memory Management

Allocates memory

kokkos_realloc

Core

Memory Management

Expands previously allocated memory block

LAnd

Core

Built-in Reducers

Reducer for Logical ‘And’ reduction

LOr

Core

Built-in Reducers

Reducer for Logical ‘Or’ reduction

Max

Core

Built-in Reducers

Reducer for Maximum reduction

MaxLoc

Core

Built-in Reducers

Reducer for Reduction providing maximum and an associated index

(U)MDRangePolicy

Core

Execution Policies

Policy to iterate over a multidimensional index range.

MemorySpace concept

Core

Spaces

Concept for execution spaces.

Min

Core

Built-in Reducers

Reducer for Minimum reduction

MinLoc

Core

Built-in Reducers

Reducer for Reduction providing minimum and an associated index

MinMax

Core

Built-in Reducers

Reducer for Reduction providing both minimum and maximum

MinMaxLoc

Core

Built-in Reducers

Reducer for Reduction providing both minimum and maximum and associated indices

OpenMP

Core

Spaces

Execution space using non-target OpenMP parallel execution mechanisms.

OpenMPTarget

Core

Spaces

Execution space using targetoffload OpenMP parallel execution mechanisms.

pair

Core

STL Compatibility

Device compatible std::pair analogue

parallel_for

Core

Bulk execute of independent work items.

ParallelForTag

Core

Tag passed to team_size functions

parallel_reduce

Core

Bulk execute of independent work items, which contribute to a reduction.

ParallelReduceTag

Core

Tag passed to team_size functions

parallel_scan

Core

Bulk execute of work items, which a simple pre- or postfix scan dependency.

ParallelScanTag

Core

Tag passed to team_size functions

partition_space

Core

Spaces

Split an existing execution space instance into multiple

PerTeam

Core

Execution Policies

Policy used in single construct to indicate once per team execution.

PerThread

Core

Execution Policies

Policy used in single construct to indicate once per thread execution.

Prod

Core

Built-in Reducers

Reducer for Multiplicative reduction

RangePolicy

Core

Execution Policies

Policy to iterate over a 1D index range.

realloc

Core

View and related

Resize an existing view without maintaining the content

ReducerConcept

Core

Built-in Reducers

Provides the concept for Reducers.

resize

Core

View and related

Resize an existing view while maintaining the content

Serial

Core

Spaces

Execution space using serial execution the CPU.

ScopeGuard

Core

Initialization and Finalization

class to aggregate initializing and finalizing Kokkos

SpaceAccessibility

Core

Spaces

Facility to query accessibility rules between execution and memory spaces.

Subview

Core

View and related

Type of multi-dimensional array which is returned by the subview function

subview

Core

View and related

Crating multi-dimensional array which is a slice of a view

Sum

Core

Built-in Reducers

Reducer for Sum reduction

TeamHandle concept

Core

Execution Policies

Provides the concept for the member_type of a TeamPolicy.

(U)TeamPolicy

Core

Execution Policies

Policy to iterate over a 1D index range, assigning to each iteration a team of threads.

TeamThreadMDRange

Core

Execution Policies

Policy to iterate over a multidimensional index range with the threads of a team.

TeamThreadRange

Core

Execution Policies

Policy to iterate over a 1D index range with the threads of a team.

TeamVectorMDRange

Core

Execution Policies

Policy to iterate over a multidimensional index range with the threads and vector lanes of a team.

TeamVectorRange

Core

Execution Policies

Policy to iterate over a 1D index range with the threads and vector lanes of a team.

ThreadVectorMDRange

Core

Execution Policies

Policy to iterate over a multidimensional index range with the vector lanes of a thread.

ThreadVectorRange

Core

Execution Policies

Policy to iterate over a 1D index range with the vector lanes of a thread.

Timer

Core

Utilities

A basic timer returning seconds

View

Core

View and related

A multi-dimensional array

View-like Type Concept

Core

View and related

A set of class templates that act like a View