compute.kernels · function ·

CreatePortableKernelWork

Create portable kernel work from the supplied values.

computecompute.kernelscpufunctionkernelssource-exampleyeho

Describe reusable compute kernels and their workload contracts.

external CreatePortableKernelWork(int rank, list of int globalDimensions, list of int localDimensions, text boundsPolicy, int localMemoryBytes, int barrierCount, text barrierPolicy, text reductionKind, text reductionOrder) returns portableKernelWorkContract

Status: source-declared

Parameters

int rank
Supply rank as int.
list of int globalDimensions
Supply global dimensions as list of int.
list of int localDimensions
Supply local dimensions as list of int.
text boundsPolicy
Supply bounds policy as text.
int localMemoryBytes
Supply local memory bytes as int.
int barrierCount
Supply barrier count as int.
text barrierPolicy
Supply barrier policy as text.
text reductionKind
Supply reduction kind as text.
text reductionOrder
Supply reduction order as text.

Use CreatePortableKernelWork

A complete small caller. Values are illustrative; check the returned result and package requirements before connecting live resources.

cpu · source-example · type checked

using compute.kernels

// Describe reusable compute kernels and their workload contracts.
int rank = 1
list of int globalDimensions = []
list of int localDimensions = []
text boundsPolicy = "bounds Policy"
int localMemoryBytes = 4
int barrierCount = 1
text barrierPolicy = "barrier Policy"
text reductionKind = "reduction Kind"
text reductionOrder = "reduction Order"
portableKernelWorkContract result = CreatePortableKernelWork(rank, globalDimensions, localDimensions, boundsPolicy, localMemoryBytes, barrierCount, barrierPolicy, reductionKind, reductionOrder)
Console.Log("Inspect result in your debugger")
project.mech
manifestVersion = "2"
package = "api.example.compute_kernels__createportablekernelwork"
version = "0.1.0"
languageEdition = "yeho-core-2026.1"

[app]
kind = "headless"

[[dependencies]]
package = "compute.kernels"
version = "0.1.0"
path = "../../../yeho/packages/compute/kernels"

[[dependencies]]
package = "compute.tensor"
version = "0.1.0"
path = "../../../yeho/packages/compute/tensor"

[[dependencies]]
package = "console"
version = "0.1.0"
path = "../../../yeho/packages/console"

[[dependencies]]
package = "diagnostics"
version = "0.1.0"
path = "../../../yeho/packages/diagnostics"
Notes and source

Package presence and a declaration do not establish support on every host. Host services need their platform and lifecycle setup.

yeho/packages/compute/kernels/portable_contract.yh:371