compute.graph · function ·
CreatePortableGraphNode
Create portable graph node from the supplied values.
Describe compute work as an explicit graph with package-owned validation and scheduling metadata.
external CreatePortableGraphNode(text name, text kind, text kernelName, list of text inputs, list of text outputs, list of text mutations, list of text dependencies, text effect, text requestedDevice, bool fallbackAllowed, bool cacheable, text fusionGroup, text specializationKey) returns portableGraphNodeStatus: source-declared
Parameters
text name- Supply name as text.
text kind- Supply kind as text.
text kernelName- Supply kernel name as text.
list of text inputs- Supply inputs as list of text.
list of text outputs- Supply outputs as list of text.
list of text mutations- Supply mutations as list of text.
list of text dependencies- Supply dependencies as list of text.
text effect- Supply effect as text.
text requestedDevice- Supply requested device as text.
bool fallbackAllowed- Supply fallback allowed as bool.
bool cacheable- Supply cacheable as bool.
text fusionGroup- Supply fusion group as text.
text specializationKey- Supply specialization key as text.
Use CreatePortableGraphNode
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.graph
// Describe compute work as an explicit graph with package-owned validation and scheduling metadata.
text name = "Nova"
text kind = "kind"
text kernelName = "kernel Name"
list of text inputs = []
list of text outputs = []
list of text mutations = []
list of text dependencies = []
text effect = "effect"
text requestedDevice = "requested Device"
bool fallbackAllowed = true
bool cacheable = true
text fusionGroup = "fusion Group"
text specializationKey = "specialization Key"
portableGraphNode result = CreatePortableGraphNode(name, kind, kernelName, inputs, outputs, mutations, dependencies, effect, requestedDevice, fallbackAllowed, cacheable, fusionGroup, specializationKey)
Console.Log("Inspect result in your debugger")
project.mech
manifestVersion = "2"
package = "api.example.compute_graph__createportablegraphnode"
version = "0.1.0"
languageEdition = "yeho-core-2026.1"
[app]
kind = "headless"
[[dependencies]]
package = "compute.buffer"
version = "0.1.0"
path = "../../../yeho/packages/compute/buffer"
[[dependencies]]
package = "compute.device"
version = "0.1.0"
path = "../../../yeho/packages/compute/device"
[[dependencies]]
package = "compute.graph"
version = "0.1.0"
path = "../../../yeho/packages/compute/graph"
[[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/graph/portable_contract.yh:581