![]() |
GPUart
1.01
Prototype of GPUart, an application-based limited preemptive GPU scheduler for embedded real-time systems
|
This interface provides the service-orientated init-, call-, and query-interfaces, respectively for each kernel. More...
#include "../GPUart_Common/GPUart_Common.h"

Go to the source code of this file.
Functions | |
| GPUart_Retval | gpuA_Sobel1_init (void) |
| Initialize GPU data for the Sobel1 kernel. More... | |
| GPUart_Retval | gpuA_Sobel1_call (sint32 *sob1_matrix_in_s32_swc) |
| Instantiates a Sobel1 kernel instance and updates kernel related GPU data. More... | |
| GPUart_Retval | gpuA_Sobel1_query (sint32 *sob1_matrix_out_s32_swc) |
| Query whether Sobel1 kernel instance has completed and get kernel output data. More... | |
| GPUart_Retval | gpuA_Sobel2_init (void) |
| Initialize GPU data for the Sobel2 kernel. More... | |
| GPUart_Retval | gpuA_Sobel2_call (sint32 *sob2_matrix_in_s32_swc) |
| Instantiates a Sobel2 kernel instance and updates kernel related GPU data. More... | |
| GPUart_Retval | gpuA_Sobel2_query (sint32 *sob2_matrix_out_s32_swc) |
| Query whether Sobel2 kernel instance has completed and get kernel output data. More... | |
| GPUart_Retval | gpuA_MM_init (void) |
| Initialize GPU data for the MatrMul kernel. More... | |
| GPUart_Retval | gpuA_MM_call (float32 *mm_MatrixA_f32_swc, float32 *mm_MatrixB_f32_swc) |
| Instantiates a MatrMul kernel instance and updates kernel related GPU data. More... | |
| GPUart_Retval | gpuA_MM_query (float32 *mm_MatrixC_f32_swc) |
| Query whether MatrMul kernel instance has completed and get kernel output data. More... | |
This interface provides the service-orientated init-, call-, and query-interfaces, respectively for each kernel.
All host-sided applications which must be able to trigger GPGPU kernel must include this interface. Call a kernel's init-interface to initialize kernel related GPU data. Call a kernel's call-interface to enqueue a new kernel instance in the scheduler and update GPU data. Call a kernel's query-interface to query kernel completion and to get the output of the kernel. This layer is used to achieve higher portability by abstracting the systems's heterogeneity.
| GPUart_Retval gpuA_MM_call | ( | float32 * | mm_MatrixA_f32_swc, |
| float32 * | mm_MatrixB_f32_swc | ||
| ) |
Instantiates a MatrMul kernel instance and updates kernel related GPU data.
Checks whether the scheduler is ready to enqueue a new instance of this kernel. Updates kernel related GPU data and then instantiates kernel instance.
| [in] | float32* | mm_MatrixA_f32_swc -> Input matrix A for MutrMul kernel (C = A x B). |
| [in] | float32* | mm_MatrixB_f32_swc -> Input matrix B for MutrMul kernel (C = A x B). |


| GPUart_Retval gpuA_MM_init | ( | void | ) |
Initialize GPU data for the MatrMul kernel.
All kernel related constant memory data can be initialized by calling this function. Initialize global memory data here. This function must be called before launching the first kernel instance.
| void |
| GPUart_Retval gpuA_MM_query | ( | float32 * | mm_MatrixC_f32_swc | ) |
Query whether MatrMul kernel instance has completed and get kernel output data.
Calls the scheduling layer to get the completion status of the current kernel instance and updates the output data of this kernel.
| [out] | float32* | mm_MatrixC_f32_swc -> Output matrix C of the MatrMul kernel (C = A x B). |


| GPUart_Retval gpuA_Sobel1_call | ( | sint32 * | sob1_matrix_in_s32_swc | ) |
Instantiates a Sobel1 kernel instance and updates kernel related GPU data.
Checks whether the scheduler is ready to enqueue a new instance of this kernel. Updates kernel related GPU data and then instantiates kernel instance.
| [in] | sint32* | sob1_matrix_in_s32_swc -> Sobel1 input matrix. |


| GPUart_Retval gpuA_Sobel1_init | ( | void | ) |
Initialize GPU data for the Sobel1 kernel.
All kernel related constant memory data can be initialized by calling this function. Initialize global memory data here. This function must be called before launching the first kernel instance.
| void |
| GPUart_Retval gpuA_Sobel1_query | ( | sint32 * | sob1_matrix_out_s32_swc | ) |
Query whether Sobel1 kernel instance has completed and get kernel output data.
Calls the scheduling layer to get the completion status of the current kernel instance and updates the output data of this kernel.
| [out] | sint32* | sob1_matrix_out_s32_swc -> Sobel1 output matrix. |


| GPUart_Retval gpuA_Sobel2_call | ( | sint32 * | sob2_matrix_in_s32_swc | ) |
Instantiates a Sobel2 kernel instance and updates kernel related GPU data.
Checks whether the scheduler is ready to enqueue a new instance of this kernel. Updates kernel related GPU data and then instantiates kernel instance.
| [in] | sint32* | sob2_matrix_in_s32_swc -> Sobel2 input matrix. |


| GPUart_Retval gpuA_Sobel2_init | ( | void | ) |
Initialize GPU data for the Sobel2 kernel.
All kernel related constant memory data can be initialized by calling this function. Initialize global memory data here. This function must be called before launching the first kernel instance.
| void |
| GPUart_Retval gpuA_Sobel2_query | ( | sint32 * | sob2_matrix_out_s32_swc | ) |
Query whether Sobel2 kernel instance has completed and get kernel output data.
Calls the scheduling layer to get the completion status of the current kernel instance and updates the output data of this kernel.
| [out] | sint32* | sob2_matrix_out_s32_swc -> Sobel2 output matrix. |


1.8.6