ak.to_kernels¶
Defined in awkward.operations.convert on line 780.
-
ak.
to_kernels
(array, kernels, highlevel=True, behavior=None)¶ - Parameters
array – Data to convert to a specified
kernels
set.kernels (
"cpu"
or"cuda"
) – If"cpu"
, the array structure is recursively copied (if need be) to main memory for use with the defaultlibawkward-cpu-kernels.so
; if"cuda"
, the structure is copied to the GPU(s) for use withlibawkward-cuda-kernels.so
.highlevel (bool) – If True, return an
ak.Array
; otherwise, return a low-levelak.layout.Content
subclass.behavior (None or dict) – Custom
ak.behavior
for the output array, if high-level.
Converts an array from "cpu"
, "cuda"
, or "mixed"
kernels to "cpu"
or "cuda"
.
An array is "mixed"
if some components are set to use "cpu"
kernels and
others are set to use "cuda"
kernels. Mixed arrays can’t be used in any
operations, and two arrays set to different kernels can’t be used in the
same operation.
Any components that are already in the desired kernels library are viewed, rather than copied, so this operation can be an inexpensive way to ensure that an array is ready for a particular library.
To use "cuda"
, the package
awkward-cuda-kernels
be installed, either by
pip install awkward-cuda-kernels
or as an optional dependency with
pip install awkward[cuda] --upgrade
It is only available for Linux as a binary wheel, and only supports Nvidia GPUs (it is written in CUDA).
See ak.kernels
.