自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

原创 以pytorch pipeline并行为例,分析各kernel的耗时占比及性能瓶颈

以下DEMO演示了,pipeline多卡并行时,如何分析各kernel的耗时占比,如果nccl kernel占比过大,说明GPU有效利用率不高,主要分为以下步骤1.nsys profile 运行4卡pipeline并行demo2.用开源的nsys2json.py将nsys的sqlite-schema转成chrome event格式3.分析chrome event格式,按设备统计各kernel的耗时占比。

2024-04-15 10:09:56 434

原创 Superset环境搭建步骤-用于pytorch算子性能监测

希望监测不同硬件平台pytorch算子随软件栈更新的变化情况,出现性能回退时,邮件告警通知。本文提供了superset详细配置步骤(只需要修改SMTP配置部分,可直接运行).提供了mysql python demo用于插入算子的性能数据.

2024-04-13 17:10:26 642 1

原创 NCCL集合通信算子DEMO及性能测试

以下代码用于测试NCCL算子的性能及正确性。

2024-04-12 20:59:26 514

原创 如何在ngc中找到跟物理机驱动版本匹配的docker镜像

下文介绍了如何在ngc中找到跟物理机驱动版本匹配的docker镜像。

2024-04-09 20:30:16 345

原创 pytorch演示pipeline并行

单卡内存不够时,可以将网络切分成几段(stage),每个GPU负责一个stage。比如GPU0计算完之后将数据发送给GPU1算后续的stage;以上的方式,会导致GPU的利用率不高,可以将输入的batch切分成多份更小的batch,陆续送给GPU0,这样GPU0处理完micro batch0之后 可以处理micro batch1.如此便能提高GPU的利用率。

2024-04-08 21:08:03 710

原创 pytorch 演示 tensor并行

本文演示了tensor并行的原理。如何将二个mlp切分到多张GPU上分别计算自己的分块,最后做一次reduce。1.为了避免中间数据产生集合通信,A矩阵只能按列切分,算出全部batch*seqlen的部分feature2.因上面的步骤每张GPU只有部分feature,B矩阵可按行切分,与之进行矩阵乘,生成部分和3.最后累加每张GPU上的部分和,即最终的结果以下demo,先运行非分块的版本,然后模拟分块,最后是分布式的实现。

2024-04-07 20:42:04 615 1

原创 Megatron-DeepSpeed-GPU-多机训练

本文演示了Megatron-DeepSpeed-GPU-多机训练的操作步骤。

2024-04-04 20:31:35 715 1

原创 deepspeed学习-多机all_reduce

本文演示了如何采用deepspeed做多机torch.distributed.all_reduce。

2024-04-04 15:51:37 612

原创 ssh通过别名免密登录指定端口的服务器

ssh通过别名免密登录指定端口的服务器

2024-04-04 09:57:46 105

原创 llama2学习-预训练+SFT指令微调(单机单卡)

本文记录了llama2从预训练到指令微调的全过程,单文件形式,供入门阶段查阅。

2024-04-03 18:29:19 482

原创 Transformer学习-最简DEMO实现字符串转置

背景:调试AI加速卡在Pytorch训练时的精度问题,搭建了一个简单的Transformer,设置随机种子,保证每次重训练loss完全一致,可以直接对比各算子的计算误差。

2024-04-02 21:26:48 599 1

原创 通过nvtx和Nsight Compute分析pytorch算子的耗时

本文演示了如何借助nvtx和Nsight Compute分析pytorch算子的耗时。

2024-03-30 15:48:05 537 1

原创 Python耗时统计-可嵌套-生成Timeline-chrome://tracing/预览

本文演示了如何用chrome://tracing查看python嵌套代码的耗时成分

2024-03-30 15:17:41 908

原创 MPI 学习-环境搭建及测试DEMO

本文演示了如何在二台物理机上通过MPI实现多机通信,为了不破坏系统环境,分别在二台物理机上运行ubuntu22.04容器。

2024-03-28 16:04:06 661 1

原创 Windows11 安装confluence 7.4.0

本文是Windows11 安装confluence 7.4.0的步骤

2024-03-24 11:09:06 870 1

原创 ffmpeg开发异步AI推理Filter

本文旨在阐述如何开发一个FFmpeg Filter,该模块利用gRPC异步通信机制调用远程视频处理服务。这一设计实现了对ffmpeg filter功能的精简化整合,仅需通过配置ffmpeg命令行参数,即可实现不同算法间的灵活切换与串联。得益于此,ffmpeg无需频繁修改,同时服务端可采用任意编程语言开发,从而显著提升了整体的开发效率和部署便利性。此方案尤其适用于帧率相对较低、推理性能瓶颈明显且对延迟要求不苛刻的应用场景。

2024-03-21 10:37:21 1099 1

原创 基于gRPC实现的异步推理框架

该项目是基于gRPC实现的异步推理框架。服务端采用python实现,客户端封装了grpc,对外仅提供推理相关的三个c接口,可用于跨进程推理。

2024-03-19 16:05:14 543 1

原创 grpc python实现异步调用(不用grpc异步接口)

grpc同步调用更简单,但是在处理复杂任务时,会导致请求阻塞,影响吞吐。当然,可以采用异步的方式解决,本方采用另一种方式:服务端收到请求后放入请求队列,由独立的线程处理各个请求,之后调用客户端的服务,回复处理结果。即客户端也是服务端。

2024-03-18 22:02:18 560 1

原创 通过更新路书当前坐标下marker的icon来展示沿途的风景

本文演示了如何通过百度地图的路书功能,展示途经的风景。定时缩放,既有全局路径,又有当前位置和运动轨迹;可以显示当前坐标对应的图片。

2024-03-17 12:16:43 928 1

原创 mediapipe最小编译、插件开发及demo

我希望仅使用mediapipe框架,不要额外的功能,并将mediapipe编译成一个动态库,可以基于这个动态库开发插件和应用,下面介绍了完全的步骤。

2024-03-15 23:04:12 690 1

原创 获取微信联系人列表的一种方法

获取微信联系人列表的一种方法:截长图,模板匹配,ocr识别

2024-03-14 21:54:58 602

原创 以调试ffmpeg为例,演示gdb如何定位内存被修改

本文演示了如何使用gdb定位avformat_find_stream_info函数破坏codecpar变量的情况

2024-03-13 21:37:15 512

原创 硬件解码器封装Python api的踩坑记录

硬件解码器封装Python api的踩坑记录

2024-03-13 19:50:09 373

原创 linux进程disk sleep状态的定位方法

在调试设备驱动时,可能会遇到进程阻塞,kill不掉,查看进程状态为disk sleep,本文演示了如何定位原因。

2024-03-13 19:29:00 506

原创 SSD固态硬盘通过USB3.0接入超聚变2288H V6,拷贝数据时掉盘

将一款SSD固态硬盘通过USB3.0转接盒连到2288H V6,拷贝大量数据时出现掉盘。换另一款SSD固态盘正常。怀疑是供电问题,做此实验,以证实。

2024-03-11 11:04:18 405

原创 封装SDK时如何隐藏内部符号

在封装SDK,对外提供API时。希望不暴露内部符号,免得产生冲突,给集成带来麻烦.本文演示了二种方法。

2024-03-11 09:13:56 420

原创 yolov5训练coco数据集的部分类别

在测试yolov5系列不同类别的模型在各种加速卡上的精度和性能时,我们希望得到一个准确的评估结果。因此,本文从一个COCO数据集中创建一个子集,该子集仅包含特定的类别。具体来说,它首先从源数据集中读取JSON文件,然后过滤出所需的类别,并将它们保存到新的JSON文件中。接下来,它将所需的图像和标签复制到新的目标目录中。最后,它创建一个包含所有图像文件路径的文本文件,并更新数据集的YAML配置文件。以此为数据集,训练并测试模型,从而得到准确的评估结果。

2024-03-09 21:10:05 755 1

原创 整站下载保存为mhtml

MHTML格式具有独特的优点,它可以完整保留原始网页的所有布局元素以及嵌入图片,无需外部依赖即可呈现原始网页内容,增强了可读性和便捷性。下文将展示如何运用自动化技术,从一个网站的首页出发,采用递归爬取的方式遍历整个站点,并将抓取到的各个页面悉数保存为MHTML格式,同时按照URL的层级结构,将这些页面对应地存储到相应的目录层级中。

2024-03-08 20:36:59 981

原创 streamlit学习-如何修改css样式

streamlit默认的样式有时并不符合自己的要求。比如手机上的布局太浪费空间,我们希望一屏能放下所有的元素,本文演示了如何操作。

2024-03-07 12:14:02 585 1

原创 PCIE-X16如何变成PCIE-X8

用胶带(比如透明胶带)粘住这些pin脚以外的pin脚。注意别数漏了(没有金手指的地方得算进去)

2024-03-07 08:22:41 376

原创 streamlit学习-如何播放HLS视频(streamlit嵌入html)

本文演示了streamlit如何实现hls直播(streamlit中嵌入html)

2024-03-06 20:46:12 941 1

原创 EXCEL计算时间差(单位毫秒)

EXCEL计算时间差(单位毫秒)

2024-03-06 19:28:12 477

原创 streamlit初学-用streamlit实现云台控制界面

本文演示了,如何用streamlit做一个云台控制界面。功能包括:用户登录,事件的处理,图片的更新。

2024-03-05 20:17:12 794 6

原创 redroid实现微信视频号自动截图和点赞

如果想了解视频号最新的八卦,又不想浪费时间。可以通过adb模拟按键的方式,实现自动抓图和点赞。以下是步骤

2024-03-04 20:49:38 382 1

原创 PCIE设备外接供电步骤

当PCIE设备需要独立供电,但服务器或PC没有富余的电源,可以采用外接电源的方式。

2024-03-04 16:23:15 422

原创 python实现海康球机预置点的切换并抓图

本文演示了如何通过ISAPI协议切换球机的预置点,并且通过rtsp抓取图片.

2024-03-03 12:24:58 424 1

原创 rtsp拉流并推送到rtmp服务器且循环录像

本文演示了如何从rtsp源拉取视频,推送到rtmp服务器,同时将视频保存为mp4到本地,5分钟一段

2024-03-03 11:20:58 665

原创 收盘价时空模式挖掘与多股票走势聚类分析:探索市场行为共性

​ 基于探究潜在关联性的初衷,我们旨在探讨是否存在某种显著的共性驱动特定类别股票表现出趋同的市场走势。本文系统地阐述了如何自深圳证券交易所、上海证券交易所、科创板以及北京证券交易所获取各上市公司的历史交易数据,并通过标准化处理各股票的收盘价序列,进而绘制其归一化曲线并转化为图像形式予以保存。随后,我们运用变分自编码器(VAE)模型对选取的部分代表性图像进行了深度学习建模,籍此提取每一张股票价格曲线图像的内在特征向量。

2024-02-29 18:13:03 972 1

原创 服务器部署测试环境回顾与改进建议

原计划在2小时内完成的任务,由于遇到一系列挑战,最终耗时1.5天。任务目标是在无外网环境的服务器上建立测试环境,涉及将SSD硬盘数据迁移至服务器、SSH连接、运行测试程序并监控服务器功耗。

2024-02-29 08:21:50 593

原创 基于RabbitMQ的RPC通信

当需要调用局域网中的服务时,可以用frp进行穿透,也可以在公网搭建RabbitMQ服务器做消息中转,本文演示了这个步骤。

2024-02-28 19:59:36 811

ffmpeg 异步推理filter源码

本文旨在阐述如何通过FFmpeg开发一个创新的滤镜模块,该模块利用gRPC异步通信机制调用远程视频处理服务。这一设计实现了对ffmpeg滤镜功能的精简化整合,仅需通过配置ffmpeg命令行参数,即可实现不同算法间的灵活切换与串联。得益于此,原始ffmpeg无需进行任何内部修改,同时支持服务端采用任意编程语言进行开发,从而显著提升了整体的开发效率和部署便利性。 此方案尤其适用于帧率相对较低、推理性能瓶颈明显且对延迟要求不苛刻的应用场景。在面对复杂的推理流水线时,若单台服务器资源足以应对计算需求,则可借助MediaPipe构建高效处理管道;而当需要扩展至多台服务器以提升并行处理能力时,则推荐采用Seldon框架部署微服务架构,确保系统的可扩展性和弹性伸缩能力。

2024-03-21

基于gRPC实现的异步推理框架

该项目是基于gRPC实现的异步推理框架。服务端采用python实现,客户端封装了grpc,对外仅提供推理相关的三个c接口,可用于跨进程推理。

2024-03-19

grpc v1.62.0

git clone --recurse-submodules -b v1.62.0 --depth 1 --shallow-submodules https://github.com/grpc/grpc

2024-03-19

百度地图路书功能演示DEMO

百度地图路书功能演示DEMO

2024-03-17

自动生成C结构体到json的序列化、反序列化代码的方法

自动生成C结构体到json的序列化、反序列化代码的方法

2024-02-24

C#实现的键盘记录后台程序,可运行在win10/win11系统.能记录各种键盘按键,并将字符保存到文件中

本文在https://github.com/lambdacasserole/silence 的基础上进行了兼容性调试,可以记录键盘按下的各种字符,并保存到文件中 主要修改点: 1.删除不需要的功能 2.隐藏窗口且不在任务栏显示 3.通过taskkill /im 结束进程 使用方法 1.使能Caps Lock(大写状态) 2.运行KMon.exe,点击隐藏按钮 3.所有的键盘按键都会记录在KMon.log文件里 4.执行taskkill /im KMon.exe关闭后台监控程序

2024-02-20

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除