Apollo  6.0
Open source self driving car software
Namespaces | Macros | Functions
kernels.h File Reference
#include <iostream>
#include "modules/perception/base/common.h"
Include dependency graph for kernels.h:

Go to the source code of this file.

Namespaces

 apollo
 PlanningContext is the runtime context in planning. It is persistent across multiple frames.
 
 apollo::perception
 apollo::perception
 
 apollo::perception::inference
 

Macros

#define NUM_2D_BOX_CORNERS_MACRO   4
 
#define NUM_THREADS_MACRO   64
 
#define CUDA_KERNEL_LOOP(i, n)
 
#define DIVUP(m, n)   ((m) / (n) + ((m) % (n) > 0))
 

Functions

void apollo::perception::inference::bbox_transform_inv_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *boxes, const float *deltas, const int num_box, const int num_channel, float *out_boxes)
 
void apollo::perception::inference::clip_boxes_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, float *boxes, const float height, const float width)
 
void apollo::perception::inference::filter_boxes_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *boxes, const float *scores, const float *all_probs, const int num_box, const int num_channel, const int num_class, const int num_prob, const int filter_channel, const int filter_class, const int min_size_mode, const float min_size_h, const float min_size_w, const float threshold_score, float *filtered_boxes, float *filtered_scores, float *filtered_all_probs, int *filtered_count)
 
void apollo::perception::inference::keep_topN_boxes_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *boxes, const float *scores, const float *all_probs, const int *indexes, const int *count, const bool keep_score, const int num_box, const int num_prob, const int topN, float *out_boxes, float *out_scores, float *out_all_probs)
 
void apollo::perception::inference::repeatedly_add_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *in_data, float *out_data, const float *add_vec, int add_vec_size)
 
void apollo::perception::inference::repeatedly_mul_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *in_data, float *out_data, const float *mul_vec, int mul_vec_size)
 
void apollo::perception::inference::slice2d_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *in_data, float *out_data, const int *slice_axises, int slice_axis_num, int input_axis_size)
 
void apollo::perception::inference::NmsForward (bool rpn_proposal_output_score, int host_filter_count, int num_box_corners, float nms_overlap_threshold, int num_candidate, int top_n, int batch_id, int num_prob, float *dev_sorted_box_for_nms, float *scores, float *all_probs, float *out_boxes, int *acc_box_num, cudaStream_t stream)
 GPU Non-Maximum Suppresion for network output. More...
 

Macro Definition Documentation

◆ CUDA_KERNEL_LOOP

#define CUDA_KERNEL_LOOP (   i,
 
)
Value:
for (int i = blockIdx.x * blockDim.x + threadIdx.x; i < (n); \
i += blockDim.x * gridDim.x)

◆ DIVUP

#define DIVUP (   m,
 
)    ((m) / (n) + ((m) % (n) > 0))

◆ NUM_2D_BOX_CORNERS_MACRO

#define NUM_2D_BOX_CORNERS_MACRO   4

◆ NUM_THREADS_MACRO

#define NUM_THREADS_MACRO   64