Crate libmcl_sys

Source

Structs§

mcl_device_info
mcl_handle_struct
mcl_transfer_struct

Constants§

MCL_ARG_BUFFER
MCL_ARG_DONE
MCL_ARG_DYNAMIC
MCL_ARG_INPUT
MCL_ARG_INVALID
MCL_ARG_LOCAL
MCL_ARG_OUTPUT
MCL_ARG_RDONLY
MCL_ARG_RESIDENT
MCL_ARG_REWRITE
MCL_ARG_SCALAR
MCL_ARG_SHARED
MCL_ARG_WRONLY
MCL_DEV_ALLOCATED
MCL_DEV_DIMS
MCL_DEV_ERROR
MCL_DEV_FULL
MCL_DEV_NONE
MCL_DEV_READY
MCL_ERR_EXEC
MCL_ERR_INVARG
MCL_ERR_INVDEV
MCL_ERR_INVKER
MCL_ERR_INVPES
MCL_ERR_INVPRG
MCL_ERR_INVREQ
MCL_ERR_INVTSK
MCL_ERR_MEMALLOC
MCL_ERR_MEMCOPY
MCL_ERR_RESDATA
MCL_ERR_SRVCOMM
MCL_FLAG_NO_RES
MCL_HDL_SHARED
MCL_NULL
MCL_PRG_BIN
MCL_PRG_GRAPH
MCL_PRG_IR
MCL_PRG_MASK
MCL_PRG_NONE
MCL_PRG_SRC
MCL_REQ_ALLOCATED
MCL_REQ_COMPLETED
MCL_REQ_EXECUTING
MCL_REQ_FINISHING
MCL_REQ_INPROGRESS
MCL_REQ_PENDING
MCL_RET_ERROR
MCL_RET_SUCCESS
MCL_RET_UNDEFINED
MCL_SET_BIND_WORKERS
MCL_SHARED_MEM_DEL_OLD
MCL_SHARED_MEM_NEW
MCL_START_SCHED
MCL_STOP_SCHED
MCL_TASK_ANY
MCL_TASK_CPU
MCL_TASK_DFT_FLAGS
MCL_TASK_FPGA
MCL_TASK_GPU
MCL_TASK_NAME_LEN
MCL_TASK_NONE
MCL_TASK_TYPE_MASK
MCL_TIMEOUT

Functions§

mcl_exec
@brief Execute a specified task
mcl_exec2
mcl_exec2_with_dependencies
mcl_exec_with_dependencies
mcl_finit
@brief Uninitialize MCL. @ingroup General
mcl_get_dev
@brief Gets information about the specified device @ingroup DeviceStatus
mcl_get_ndev
@brief Gets the number of available devices @ingroup DeviceStatus
mcl_hdl_free
@brief Free MCL handle and associated task @pre Must be called after task has finished
mcl_init
@brief Initialize MCL @ingroup General
mcl_invalidate_buffer
@brief Invalidates device allocations @ingroup Args
mcl_null
@brief Complete the task without executing (i.e. trigger dependencies) @ingroup General
mcl_prg_load
@brief Load a program @ingroup General
mcl_register_buffer
@brief Register a buffer for future use with MCL resident memory @ingroup Args
mcl_task_create
@brief Create an empty MCL task @ingroup General
mcl_task_create_with_props
@brief Create an empty MCL task @ingroup General
mcl_task_init
@brief Creates a new task and initializes it with the specified kernel @ingroup General
mcl_task_set_arg
@brief Set up an argument associated with a task @ingroup Args
mcl_task_set_arg_buffer
@brief Same as mcl task set arg, particularly for buffers @ingroup Args
mcl_task_set_kernel
@brief Initialize a task to run the specified kernel @ingroup General
mcl_test
@brief Check the status of the handle
mcl_transfer_create
@brief Create a transfer task. A transfer task executes no computation, but can be used to put or remove buffers from devices (i.e. if a an address needs to be invalidated because it might be reused later in the program for a different buffer)
mcl_transfer_exec
@brief Executes a transfer. Asychronously moves data
mcl_transfer_free
@brief Frees data associated with the transfer handle
mcl_transfer_set_arg
@brief Sets up an argument for a transfer handle. Same as mcl_task_set_arg but for a transfer.
mcl_transfer_test
@brief Checks the status of a transfer
mcl_transfer_wait
@brief Waits for transfers to complete
mcl_unregister_buffer
@brief Unregisters a buffer from MCL Resident memory. @ingroup Args
mcl_wait
@brief Block until the task associated with handle has finished
mcl_wait_all
@brief Wait for all pending mcl tasks

Type Aliases§

__off_t
__uint32_t
__uint64_t
mcl_dev_info
mcl_handle
mcl_transfer
off_t
size_t