![]() |
GPUart
1.01
Prototype of GPUart, an application-based limited preemptive GPU scheduler for embedded real-time systems
|
#include "../GPUart_Common/GPUart_Common.h"#include <cuda.h>#include <cuda_runtime.h>#include <cuda_profiler_api.h>

Macros | |
| #define | GPUART_SOBEL_CUH |
| #define | C_SOB_BLOCK_SIZE 512 |
| #define | C_SOB1_LOCAL_WORK_SIZE C_SOB_BLOCK_SIZE |
| #define | C_SOB1_NUMBER_OF_BLOCKS 1 |
| #define | C_SOB1_GLOBAL_WORK_SIZE C_SOB_BLOCK_SIZE * C_SOB1_NUMBER_OF_BLOCKS |
| #define | C_SOB1_WIDTH C_SOB_BLOCK_SIZE |
| #define | C_SOB1_HEIGHT 256 |
| #define | C_SOB1_MATRIX_SIZE C_SOB1_HEIGHT * C_SOB1_WIDTH |
| #define | C_SOB2_LOCAL_WORK_SIZE C_SOB_BLOCK_SIZE |
| #define | C_SOB2_NUMBER_OF_BLOCKS 2 |
| #define | C_SOB2_GLOBAL_WORK_SIZE C_SOB_BLOCK_SIZE * C_SOB2_NUMBER_OF_BLOCKS |
| #define | C_SOB2_WIDTH C_SOB_BLOCK_SIZE * 2 |
| #define | C_SOB2_HEIGHT 512 |
| #define | C_SOB2_MATRIX_SIZE C_SOB2_HEIGHT * C_SOB2_WIDTH |
| #define | C_SOB_SM_INIT (0) |
| #define | C_SOB_SM_LOOP (1) |
| #define | C_SOB_SM_FINISH (2) |
Functions | |
| __global__ void | Sobel_Kernel (sint32 *__restrict__ matrix_in_s32_g, sint32 *__restrict__ matrix_out_s32_g, uint32 heigth_u32, uint32 width_u32, volatile sint32 *__restrict__ preemption_flag_g, sint32 *__restrict__ preemption_flag_intern_g, volatile sint32 *__restrict__ preemption_sm_g, uint32 *__restrict__ sync_flags_in_u32_g, uint32 *__restrict__ sync_flags_out_u32_g, uint32 *__restrict__ buffer_loop_counter_u32_g, volatile uint32 *__restrict__ kernelRunningStatus_g) |
| #define C_SOB1_GLOBAL_WORK_SIZE C_SOB_BLOCK_SIZE * C_SOB1_NUMBER_OF_BLOCKS |
| #define C_SOB1_HEIGHT 256 |
| #define C_SOB1_LOCAL_WORK_SIZE C_SOB_BLOCK_SIZE |
| #define C_SOB1_MATRIX_SIZE C_SOB1_HEIGHT * C_SOB1_WIDTH |
| #define C_SOB1_NUMBER_OF_BLOCKS 1 |
| #define C_SOB1_WIDTH C_SOB_BLOCK_SIZE |
| #define C_SOB2_GLOBAL_WORK_SIZE C_SOB_BLOCK_SIZE * C_SOB2_NUMBER_OF_BLOCKS |
| #define C_SOB2_HEIGHT 512 |
| #define C_SOB2_LOCAL_WORK_SIZE C_SOB_BLOCK_SIZE |
| #define C_SOB2_MATRIX_SIZE C_SOB2_HEIGHT * C_SOB2_WIDTH |
| #define C_SOB2_NUMBER_OF_BLOCKS 2 |
| #define C_SOB2_WIDTH C_SOB_BLOCK_SIZE * 2 |
| #define C_SOB_BLOCK_SIZE 512 |
| #define C_SOB_SM_FINISH (2) |
| #define C_SOB_SM_INIT (0) |
| #define C_SOB_SM_LOOP (1) |
| #define GPUART_SOBEL_CUH |
| __global__ void Sobel_Kernel | ( | sint32 *__restrict__ | matrix_in_s32_g, |
| sint32 *__restrict__ | matrix_out_s32_g, | ||
| uint32 | heigth_u32, | ||
| uint32 | width_u32, | ||
| volatile sint32 *__restrict__ | preemption_flag_g, | ||
| sint32 *__restrict__ | preemption_flag_intern_g, | ||
| volatile sint32 *__restrict__ | preemption_sm_g, | ||
| uint32 *__restrict__ | sync_flags_in_u32_g, | ||
| uint32 *__restrict__ | sync_flags_out_u32_g, | ||
| uint32 *__restrict__ | buffer_loop_counter_u32_g, | ||
| volatile uint32 *__restrict__ | kernelRunningStatus_g | ||
| ) |
1.8.6