{"id":"compute.kernels--CreatePortableKernelWork","name":"CreatePortableKernelWork","owner":"yeho","package":"compute.kernels","kind":"function","signature":"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","description":"Create portable kernel work from the supplied values.","context":"Describe reusable compute kernels and their workload contracts.","parameters":[{"name":"rank","type":"int","description":"Supply rank as int."},{"name":"globalDimensions","type":"list of int","description":"Supply global dimensions as list of int."},{"name":"localDimensions","type":"list of int","description":"Supply local dimensions as list of int."},{"name":"boundsPolicy","type":"text","description":"Supply bounds policy as text."},{"name":"localMemoryBytes","type":"int","description":"Supply local memory bytes as int."},{"name":"barrierCount","type":"int","description":"Supply barrier count as int."},{"name":"barrierPolicy","type":"text","description":"Supply barrier policy as text."},{"name":"reductionKind","type":"text","description":"Supply reduction kind as text."},{"name":"reductionOrder","type":"text","description":"Supply reduction order as text."}],"returns":"portableKernelWorkContract","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":371,"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 CreatePortableKernelWork","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.\nint rank = 1\nlist of int globalDimensions = []\nlist of int localDimensions = []\ntext boundsPolicy = \"bounds Policy\"\nint localMemoryBytes = 4\nint barrierCount = 1\ntext barrierPolicy = \"barrier Policy\"\ntext reductionKind = \"reduction Kind\"\ntext reductionOrder = \"reduction Order\"\nportableKernelWorkContract result = CreatePortableKernelWork(rank, globalDimensions, localDimensions, boundsPolicy, localMemoryBytes, barrierCount, barrierPolicy, reductionKind, reductionOrder)\nConsole.Log(\"Inspect result in your debugger\")\n","manifest":"manifestVersion = \"2\"\npackage = \"api.example.compute_kernels__createportablekernelwork\"\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":"26b16923952585fea825c3ef1a0391d98edd430c1b80316c40f2c7e52c0be3a1","checked":"2026-09-09","diagnostic":"","observedOutput":null,"checkedBackend":null}],"searchTerms":[],"url":"https://demonhunterlabs.com/academy/api?item=compute.kernels--CreatePortableKernelWork","json":"https://demonhunterlabs.com/reference/items/compute.kernels--CreatePortableKernelWork.json","markdown":"https://demonhunterlabs.com/reference/text/compute.kernels--CreatePortableKernelWork.md"}
