- 博客(21)
- 收藏
- 关注
原创 torch分布式训练笔记
这里假设模型只有四个参数,分成两个 bucket,反向传播时,bucket0中的两个参数的梯度信息完成更新后,两个进程就可以分别调用 allreduce 操作,完成梯度信息的通信和同步。最基础的想法是,所有的卡都完成了整个模型的反向传播和梯度更新后,开始通信。但实际上每张卡可能效率不同,有的卡完成了全部梯度的更新,有的还没有。其他:关于 forward 和 backwark 中更多细节,比如通信具体是如何触发的, hook 的实现,这些后续阅读代码细节时再做介绍。DDP的构造函数中把上面说的流程都做了。
2023-07-12 11:30:58
352
原创 Transformer and Self-attention
一谈到 NLP,大家都听说过 Transformer, Self-attention 这些词汇,以及 Attension is all you need 这篇论文。 大家可能多多少少看过这类博客,对这些概念有一些了解,什么 QKV呀, encoder, decoder呀。我也看过,但是对 multiHeadAttention 一直以来都是迷迷糊糊的,主要是一些 shape 的变换把人搞懵了。本博客站在大家的肩膀上整理了下,描述这些概念的同时,加上 shape 的说明,让这些概念更清晰。最后用代码复现论文中的
2023-04-20 13:26:57
559
原创 【cuda基础】1 cuda 编程简介
简介这是这个系列的第一篇入门文章,这个系列的博客不会讲解太多的东西,毕竟官方文档就是最好的教程,这个系列的博客主要是写一些 cuda 代码跑起来试试,记录下自己的学习收获。官方文档就是最好最权威的学习资源CUDA Toolkit Documentation v11.7.0此外作为入门,个人觉得这篇文章是很不错的 ,强烈建议先看完下面这篇文章。CUDA编程入门极简教程它主要是翻译自这篇文章even-easier-introduction-cudaGPU简介简而言之,GPU加速就是利用
2022-05-20 14:55:36
658
1
原创 TensorRT 初探(3)—— explicit_batch vs implicit_batch
TensorRT系列——explicit batch 和 implicit batch
2022-05-10 16:43:36
2073
原创 VS code 安装后gdb调试无法显示STL内容的问题
参考这篇文章,其中svn的安装方式为:apt-get install subversionVS code 安装后gdb调试无法显示STL内容的问题
2021-07-08 20:17:59
1182
原创 vscode配置开发环境
vscode配置开发环境简单来说,vscode类似一款文本编辑器,不是IDE,想要运行C/C++代码,得配置一下,配置文件有三个,关于一些插件的安装,这里不在叙述,可以直接百度,本文主要说明配置文件。1.在你写代码的地方新建一个文件夹,并命名为“.vscode”。然后再在“.vscode”文件夹下新建三个文件,分别为:(或者当你新建一个工作空间时,会自动生成.vscode文件) 1. tasks.json 2. launch.json 3. c_cpp_properties.json
2020-07-07 19:58:30
1432
原创 docker 常用设置(vscode 远程连接服务器docker 容器)
docker 常用命令拉取镜像运行镜像(产生一个容器)启动容器进入容器查看所有镜像退出容器重启容器查看所有容器删除容器vscode通过ssh远程连接服务器中的容器拉取镜像docker pull [options] name [:tag] 表示从仓库拉取镜像 options是参数 tag是版本运行镜像(产生一个容器)docker run [options] image [:tag] [command] [arg…]运行一个容器 以镜像为模版创建容器 options 操作 tag版本 comma
2020-07-03 10:22:02
2840
原创 基于Event-Select模型的聊天室服务器
网络通信——select模型借用下一个博主的图:link说明都在注释中,代码里主要的函数解释可以看我转载的其他博客。服务器代码#include "stdafx.h"#include <WinSock2.h>#include <iostream>#pragma comment(lib,"ws2_32.lib")using namespace std;#...
2020-02-03 13:39:59
499
1
原创 c++聊天小程序
c++写一个游戏聊天服务器最近学习网络编程写了个聊天小程序,写个博客记录下自己的代码涉及的技术:c++网络编程c++多线程c++ STL服务器允许登陆多个客户端,允许公屏聊天也允许私聊,默认情况下属于公屏聊天,若想私聊,格式为“@用户名+要发送的消息”;运行效果如下图:服务器实现#include "stdafx.h"#include <iostream> #in...
2020-02-01 19:02:18
1659
2
原创 c++网络编程:实现简单的聊天——基于服务器/客户端的模式
c++ socket编程 服务器/客户端最近在学c++网路编程,写个帖子记录自己的学习过程,内容参考一个博主的,附上他的链接:link实现: 客户端往服务器端发送一条数据,服务器端接收数据并也发送一条数据给客户端。废话少说 直接上代码[文字描述都写在注释]服务器实现#include "stdafx.h"#include <iostream> #include "w...
2020-01-30 18:59:29
7654
4
原创 c++主线程和子线程
c++主线程和子线程最近在学习c++多线程,写一篇博客记录下自己的收获。一.main()函数是主线程函数,在main()函数中创建的线程属于子线程,那主线程和子线程的优先级谁更高呢?可以看下另外一篇文档:link在一个线程中开启另外一个新线程,则新开线程称为该线程的子线程,子线程初始优先级与父线程相同。不过主线程先启动占用了cpu资源,如果存在主线程和子线程争抢cpu执行权的话,看运气,谁...
2020-01-29 10:04:08
10232
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人