{"id":"compute.kernels--CreatePortableKernel","name":"CreatePortableKernel","owner":"yeho","package":"compute.kernels","kind":"function","signature":"external CreatePortableKernel(text name, text operationKind, list of portableKernelArgument arguments, portableKernelWorkContract work, text effect, list of text capabilities, bool deterministic, bool eagerEquivalentRequired, text specializationKey) returns portableKernelContract","description":"Create portable kernel from the supplied values.","context":"Describe reusable compute kernels and their workload contracts.","parameters":[{"name":"name","type":"text","description":"Supply name as text."},{"name":"operationKind","type":"text","description":"Supply operation kind as text."},{"name":"arguments","type":"list of portableKernelArgument","description":"Supply arguments as list of portableKernelArgument."},{"name":"work","type":"portableKernelWorkContract","description":"Supply work as portableKernelWorkContract."},{"name":"effect","type":"text","description":"Supply effect as text."},{"name":"capabilities","type":"list of text","description":"Supply capabilities as list of text."},{"name":"deterministic","type":"bool","description":"Supply deterministic as bool."},{"name":"eagerEquivalentRequired","type":"bool","description":"Supply eager equivalent required as bool."},{"name":"specializationKey","type":"text","description":"Supply specialization key as text."}],"returns":"portableKernelContract","members":[],"tags":["compute","compute.kernels","cpu","function","kernels","source-example","yeho"],"updated":"2026-09-09","source":{"repository":"yeho","path":"packages/compute/kernels/portable_contract.yh","line":376,"sha256":"374e7fc951e82c532d89923c59e362a879757e22adbb3165c1497fd7eb1e29d9"},"status":"source-declared","notes":["Package presence and a declaration do not establish support on every host. Host services need their platform and lifecycle setup."],"examples":[{"id":"usage","title":"Use CreatePortableKernel","description":"A complete small caller. Values are illustrative; check the returned result and package requirements before connecting live resources.","code":"using compute.kernels\n\n// Describe reusable compute kernels and their workload contracts.\ntext name = \"Nova\"\ntext operationKind = \"operation Kind\"\nlist of portableKernelArgument arguments = []\nportableKernelWorkContract work = portableKernelWorkContract(1, [], [], \"bounds Policy\", 4, 1, \"barrier Policy\", \"reduction Kind\", \"reduction Order\")\ntext effect = \"effect\"\nlist of text capabilities = []\nbool deterministic = true\nbool eagerEquivalentRequired = true\ntext specializationKey = \"specialization Key\"\nportableKernelContract result = CreatePortableKernel(name, operationKind, arguments, work, effect, capabilities, deterministic, eagerEquivalentRequired, specializationKey)\nConsole.Log(\"Inspect result in your debugger\")\n","manifest":"manifestVersion = \"2\"\npackage = \"api.example.compute_kernels__createportablekernel\"\nversion = \"0.1.0\"\nlanguageEdition = \"yeho-core-2026.1\"\n\n[app]\nkind = \"headless\"\n\n[[dependencies]]\npackage = \"compute.kernels\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/compute/kernels\"\n\n[[dependencies]]\npackage = \"compute.tensor\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/compute/tensor\"\n\n[[dependencies]]\npackage = \"console\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/console\"\n\n[[dependencies]]\npackage = \"diagnostics\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/diagnostics\"\n","tags":["cpu","source-example"],"verification":"type checked","run":"cpu-oracle","sha256":"a12f8fad2d710f0fe39708e3224454b0f21be0dd2018ae1b40bcce524611a4b9","checked":"2026-09-09","diagnostic":"","observedOutput":null,"checkedBackend":null}],"searchTerms":[],"url":"https://demonhunterlabs.com/academy/api?item=compute.kernels--CreatePortableKernel","json":"https://demonhunterlabs.com/reference/items/compute.kernels--CreatePortableKernel.json","markdown":"https://demonhunterlabs.com/reference/text/compute.kernels--CreatePortableKernel.md"}
