AliceWanderAI
码龄8年
关注
提问 私信
  • 博客:590,324
    动态:6
    590,330
    总访问量
  • 276
    原创
  • 426,013
    排名
  • 97
    粉丝
  • 0
    铁粉

个人简介:北邮自动化学院,研究方向:图像处理,机器学习

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2017-03-22
博客简介:

cyy2learn的博客

查看详细资料
个人成就
  • 获得197次点赞
  • 内容获得25次评论
  • 获得919次收藏
  • 代码片获得169次分享
创作历程
  • 6篇
    2022年
  • 7篇
    2021年
  • 97篇
    2020年
  • 28篇
    2019年
  • 194篇
    2017年
成就勋章
TA的专栏
  • 系统设计
    1篇
  • NVCC
    5篇
  • 人工智能
    6篇
  • Transformer
    2篇
  • Pytorch
    1篇
  • CUDA
    10篇
  • NVIDIA
    5篇
  • GPU
    4篇
  • 笔记
    7篇
  • 操作系统
    2篇
  • STL
    4篇
  • 图像处理
    2篇
  • 宇宙星云
    2篇
  • python
    12篇
  • 设计模式
    2篇
  • 算法
    150篇
  • c++
    35篇
  • 机器学习
    68篇
  • Hadoop
    13篇
  • caffe
    1篇
  • linux
    3篇
  • deep-learning
    17篇
  • Tensorflow
    2篇
  • The Practice of Programming
    7篇
  • ClearCase
    6篇
兴趣领域 设置
  • 人工智能
    opencv
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

178人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

解读CUDA Compiler Driver NVCC - Ch.5

前言前面几篇文章,我们了解了NVCC的作用,nvcc编译的two stage, 每个stage做了什么,怎么去选择虚拟架构和真实架构,JIT编译的原理,好处和弊端以及解决方案。本文我们将了解几个实际的nvcc编译命令。Base Notationnvcc提供了选项--gpu-architecture和--gpu-code。--gpu-architecture只能选择一个值,用来指定虚拟架构的名称,如下:--gpu-architeture=compute_50--gpu..
原创
发布博客 2022.01.20 ·
1241 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

解读CUDA Compiler Driver NVCC - Ch.4

前言第四章是详细的NVCC选项描述和用法,我们可以把它当作工具手册,在需要的时候去查看即可,感兴趣的话也可以花时间去了解。但现在,更重要地是理解,NVCC在编译CUDA程序的时候,具体做了什么,有什么作用,这些内容,我们将在完成本文阅读后得到答案。GPUGenerations为了让GPU 架构进化,NVIDIA GPU被发布为不同的generation。新的generation会引入功能性或者芯片架构上的重大改进,而同一个generation的GPU models只有轻微的...
原创
发布博客 2022.01.20 ·
749 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

解读CUDA Compiler Driver NVCC - Ch.3

前言上一篇文章简单了介绍了nvcc预定义的宏,以及支持的编译阶段,对应的输入文件后缀和输出文件的默认名。本篇文章了解CUDA源文件编译的整个workflow。OverviewCUDA编译的工作原理如下:输入程序经过设备编译编译预处理,编译为CUDA二进制(cubin)和/或PTX中间代码,被放置在一个fatbinary。输入程序再次预处理以供主机编译,嵌入到 fatbinary,并将 CUDA 特定 C++ 扩展转换为标准 C++ 构造。然后 C++ 主机编译器将把...
原创
发布博客 2022.01.20 ·
560 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

解读CUDA Compiler Driver NVCC - Ch.2 - Compilation Phases

前言上篇文章我们了解了nvcc是做什么的,本篇文章我们会了解Compilation Phases,编译阶段,nvcc预定义的宏,编译支持的文件格式等。NVCC Identificaiton Macronvcc预定义了以下的宏:__NVCC__:在编译C/C++/CUDA源文件时定义__CUDACC__:在编译CUDA源文件时定义__CUDACC_RDC__:在relocatable device code mode下编译CUDA源文件时定义__CUDACC_EWP__...
原创
发布博客 2022.01.20 ·
626 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

解读CUDA Compiler Driver NVCC - Ch.1 - Introduction

前言从这个系列开始,我会解读《CUDA Compiler Driver NVCC》的内容。通过这本书,可以更深刻地了解GPU 编译的底层相关的设计。CUDA Programming ModelCUDA Toolkit针对这样一类应用程序:它的控制部分由一个进程运行在一个通用计算设备(比如CPU)上,利用一个或多个GPU作为coprocessors来加速single program multiple data (SPMD)并行任务。这些任务可以由一系列GPU 线程来执行,而不用主机进程的干..
原创
发布博客 2022.01.20 ·
871 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

【Grokking the System Design】- 设计一个 TinyURL服务

前言本文来看,如何设计一个缩短URL的服务,比如TinyURL.此服务将为长URL提供短的alias别名,重定向到原始的URL。类似服务:bit.ly、goo.gl、qlink.me 等。(难度级别:简单)接下来我们应用之前了解的基本步骤来进行设计,可回顾Grokking the System Design - 总览。Step 1: Requirements clarifications在澄清需求之前,先来了解下为什么需要URL 缩短功能。URL 缩短用于为长 URL 创建.
原创
发布博客 2022.01.20 ·
2650 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

Tensorflow模型优化训练思路

问题现状随着深度学习模型越来越大,数据集越来越大,模型的训练变得越来越慢。这对于想要快速验证算法的研究人员来说,是个比较麻烦的问题。那么一般来说,我们会想要优化模型训练,以期更快验证模型效果。无论是使用Tensorflow还是Pytorch来搭建模型,基本的训练优化思路都是一致的,只是由于框架的不同,某些优化细节有些差别。这里探讨的是模型在GPU上的训练优化。基本的训练优化思路Step 1 优化模型在单机单卡上的训练 Step 2 优化模型在单机多卡上的训练 Step 3 优化模
原创
发布博客 2021.02.23 ·
1172 阅读 ·
0 点赞 ·
2 评论 ·
4 收藏

混合精度训练-Automatic Mixed Precision

双/单/半精度浮点数在尽可能减少精度损失的情况下利用半精度浮点数(FP16)来加速训练。以下简单对比双/单/半精度浮点数:双精度浮点数:FP64(64bits=8bytes)单精度浮点数:FP32 (32bits=4bytes)半精度浮点数:FP16 (16bits=4bytes)可以看到,双/单/半精度浮点数表示的范围不同,因此存储它们所需要的硬件内存也不同了。其中,一个FP16浮点数占用内存是FP32的一半,但是它所表示的范围也大大减少,因此,纯粹使用FP16进行
原创
发布博客 2021.02.22 ·
1353 阅读 ·
1 点赞 ·
0 评论 ·
6 收藏

深度学习模型的并行训练:数据并行VS模型并行

数据并行由于训练数据集太大,而无法一次将其全部载入内存。因此将数据集分为N份,分别装载到N个GPU节点中去进行梯度求导,然后将所有节点的求导结果进行加权平均,再sync update给所有节点(对于每个节点来说,我们使用相同的模型参数进行前向传播。)。然后继续进行下一步的训练,直到模型收敛或者提前停止训练。如上图所示,GPU1和GPU2上都装载有完整的模型,但是它们使用不同的子数据集Batch进行训练,每次每个节点的推导结果进行加权平均然后sync到所有的GPU节点上,再继续下一步迭代。.
原创
发布博客 2021.02.21 ·
6968 阅读 ·
2 点赞 ·
0 评论 ·
16 收藏

Switch Transformer模型解读-Introduction

论文相关资料论文 Switch Transformer: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity下载地址https://arxiv.org/pdf/2101.03961.pdf github 代码:https://github.com/tensorflow/mesh/blob/master/mesh_tensorflow/transformer/moe.py论文解读Introduction
原创
发布博客 2021.01.23 ·
1296 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

NVIDIA Nsight Systems 入门及使用

目录# Nsight Systems 入门什么是Nsight Systems用户能用nsys做什么CUDA VersionNsight Systems 使用nsys windows 版本GUI使用步骤nsys Linux CLI (Command Line Interface)常见命令# Nsight Systems 入门什么是Nsight SystemsNVIDIA Nsight Systems,简称nsys,是一个低开销的系统分析工具。在本文档中,我..
原创
发布博客 2021.01.21 ·
58297 阅读 ·
31 点赞 ·
5 评论 ·
134 收藏

TorchScript学习笔记

学完本篇文章,您将学习到Torchscript的概念与相关知识 如何将Pytorch转化为torchscript 使用torchscript部署模型:https://cugtyt.github.io/blog/effective-pytorch/20190912.htmlTorchscript简介TorchScript 是 PyTorch 模型(nn.Module的子类)的中间表示形式,可以在高性能环境(例如 C ++)中运行。TorchScript是一种从PyTorch代码创建可..
原创
发布博客 2021.01.19 ·
844 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

Transformer & BERT 详解第1篇(共4篇)

本系列文章围绕以下几个主题来详细解读Transformer和BERT的原理和发展Transformer 模型详解 Transformer在CV,NLP,推荐系统的发展与应用 BERT模型详解 BERT最新发展与应用本篇文章:Transformer模型详解整体结构 Encoder Decoder Positional Encoding Self Attention Add & Norm1. 整体结构Transformer主要由两大部分组成:Encoder &.
原创
发布博客 2021.01.15 ·
823 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

link-register spilling

https://developer.download.nvidia.cn/CUDA/training/register_spilling.pdf
原创
发布博客 2020.11.17 ·
393 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

人工智能的顶会有哪些

人工智能和机器学习技术的快速发展,使得AI 主题会议也层出不穷,下面带大家一起了解一下人工智能领域的顶会都有哪些1.CVPR国际计算机视觉与模式识别会议(CVPR)是IEEE一年一度的学术性会议,会议的主要内容是计算机视觉与模式识别技术。CVPR是世界顶级的计算机视觉会议(三大顶会之一,另外两个是ICCV和ECCV),近年来每年有约1500名参加者,收录的论文数量一般300篇左右。本会议每年都会有固定的研讨主题,而每一年都会有公司赞助该会议并获得在会场展示的机会。2.ECCVECCV的全称.
转载
发布博客 2020.11.16 ·
4555 阅读 ·
3 点赞 ·
0 评论 ·
21 收藏

GPU优化之Bank 冲突

什么是bank?shared memory被划分成大小相同的模块,这些模块叫做bank。不同bank可以被同时读写,将shared memory如此划分,将使得shared memory的访存带宽大大增加。如果shared memory被划分成16个bank,那么它的访存带宽会比不划分bank时快16倍。shared memory的访存速度是仅次于register,而又比global memory快100多倍。bank 冲突同一个Warp中不同线程去访问shared memory中.
原创
发布博客 2020.11.12 ·
2388 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

GPU性能衡量指标

GPU加速优化之前,我们先看看GPU的性能衡量。FLOPS OccupancyFLOPS(Floating-point-operations-per-second)每秒浮点运算量,是衡量GPU硬件计算能力的指标。Occupancy占有率,每个SM的活动线程束(possible active warps)数量与实际的活动线程束(active warps)数量的比值。它是衡量CUDA硬件执行效率的指标。CUDA上的线程指令是串行执行的。因此,在某些warp被暂停或者阻塞的时候,启动另外.
原创
发布博客 2020.11.11 ·
5033 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

link_cuda

https://www.nvidia.cn/docs/IO/51635/NVIDIA_CUDA_Programming_Guide_1.1_chs.pdf
原创
发布博客 2020.10.28 ·
297 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

OS-outline

操作系统【计算机系统概述】概论:特征 并发: 两个或多个事件在同一时间间隔发生。 共享:资源共享。系统资源可供内存中多个并发执行的进程共同使用,互斥共享和同时访问方式。 虚拟:虚拟处理器/虚拟内存/虚拟外部设备。 异步:进程以不可预知的速度向前推进。 目标和功能 计算机系统资源的管理者:处理机/存储器/文件/设备。 用户与计算机系统之间的接口 命令接口:联机命令接口/脱机命令接口 程序接口:系统调用(广义指令) GUI:图像接口 扩充机器:没有
原创
发布博客 2020.10.27 ·
364 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

解读CUDA C Programming Guide 第三章第2节

本文简单解读第三章:Programming Interface.本书旨在介绍进行CUDA并行优化的C编程指导。共5章,内容分别是: Introduction Programming Model Programming Interface Hardware Implementation Performance Guidelines 本章主要内容包括: Compilation with NVCC CUDA C Runtime..
原创
发布博客 2020.10.25 ·
259 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多