- 博客(80)
- 资源 (1)
- 收藏
- 关注
原创 [AI 算法] PointPillar算法
pointpillar最主要的特点是检测速度和精度的平衡1. 研究出发点现有的一些研究喜欢将不规则、稀疏的点云数据按照以下两种方式进行处理,然后引入RPN层进行3D Bbox Proposal,这两种方法为:(1)将点云数据划纳入一个个体素(Voxel)中,构成规则的、密集分布的体素集。常见的有VoxelNet和SECOND,这在之前的文章中已经解析过了;(2)从俯视角度将点云数据进行处理,获得一个个伪图片的数据。常见的模型有MV3D和AVOD,这也说过了。. 主要是将点云透射到俯视图上,然后
2025-02-12 11:40:19
211
原创 [CUDA] 编译调试工具objdump使用查看某些cuda函数汇编代码
调研cublas等cuda库函数的一些底层代码实现逻辑,通过汇编逻辑来看具体实现,推断可能的耗时异常原因
2024-12-09 14:54:56
263
原创 [CUDA] cuda kernel开发记录
包括kernel的一些使用注意事项, launch_bound, __device__, debug排查技巧
2024-11-11 20:45:00
995
原创 [CUDA] 设置sync模式cudaSetDeviceFlags
可以设置cuda Stream synchorinze时是释放cpu资源还是把持cpu资源;根据官方说明默认当gpu 个数大于cpu的时候,因为cpu紧张所以会yield时间片;cuda的 synchronize等待模式分为: Yield方式, busy waiting方式(spin), blocking方式。- gpu context切换更加频繁了,应该是block阻塞导致的。- block恢复存在延迟,导致一些空白gpu时间,如下图红色框。采用blocking模式后,nsight观察的现象有几个。
2024-11-07 20:01:19
996
原创 [CUDA] 将已有的地址空间设置为pinned memory
使用cudaHostRegister将已有的地址空间设置为pinned memory。
2024-11-07 19:50:05
503
原创 [CUDA] stream使用笔记
一些cudaMemcpyAsync, 不一定是异步的,比如当host和device之间传输数据的时候,虽然使用异步copy,但是会内含同步,从而导致一些block或spin行为。
2024-11-01 16:18:54
445
原创 [C++] 程序耗时统计函数的使用指南
本文总汇了clock, clock_gettime, getimeofday, times四种时间获取方法,用于debug C++代码时使用,通过他们的特性和自己使用场景来选择
2024-09-03 17:43:25
878
原创 [C++] std::copy&std::memcpy&forloop assign的使用说明
std::copy/ std::memcpy/ for loop assign 操作使用对比和区分
2024-08-22 17:58:06
349
原创 [C++] 多线程编程-thread::yield()-sleep_for()
介绍了this_thread::yield和this_thread::sleep_for的使用场景和区别。
2024-01-23 10:27:59
1445
原创 [C++] delete关键字的妙用
==**优先使用delete函数,而不是private未定义函数**====**任何函数都可以删除,包括非成员函数和模板具现**==
2023-08-11 10:16:31
427
原创 [论文阅读] 激光时序分割-MarS3D: A Plug-and-Play Motion-Aware Model for Semantic Segmentation on Multi-Scan 3D
本文主要核心是联合两中view(BEV-based, 3D-based-输出N,C的模型,不一定是point-based)branch,来对多帧点云进行时序分割,不同于传统的是:它不是只将多帧点云拼接后进行识别,因为这样会损失时序信息;而是增加了bev branch来提升时序信息的感知
2023-08-06 12:41:25
415
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人