解读CUDA汇编PTX(二) SASS nvdisasm工具

NVIDIA CUDA的NVCC编译过程之前已经介绍过了,编译ptx后,会生成cubin文件。 cubin文件是包含了CUDA执行代码节的ELF格式文件。类似于我们常见运行文件。而官方提供了两个工具来反编译cubin文件到sass文件(类似常见的汇编),官方使用文档。 nvdisasm n more ...

GPU benchmark说明

Introduction 本文内容主要系摘录翻译自Ang Li的博士毕业论文。 1.Perfect Power Efficiency Revolution for Embedded Computing http://hpc.pnl.gov/PERFECT/ more ...

浮点数的二进制存储 2

之前的那篇转载浮点数的存储转载内容比较粗糙。今天又花了点时间试了个具体的例子。部分内容摘自参考。 以32bit浮点数 0.123456789的存储为例,通过在线进制转换获得其16进制表示为 3DFCD6E9 more ...

浮点数的存储[转载]

本文主要内容系转载。 标准 在 IEEE-754 规范[39]中,浮点数由三部分组成:符号位、指数部分和尾数部分(标准化表示方式)。单精度浮点数一般是用 4 字节(32bit)来表示。 不同标准的单精度浮点数、半精度浮点数表示方式[39] 数据类型 符号位 指数部分 尾数部分 more ...

CUDA 10 Memory Transaction的一个现象

1. Introduction 近日,在写一些microbenchmark分析cuda程序访存问题时,发现了一个有趣的问题。目前尚未找到合理的解释,先记录下来以待后续分析。 实验平台为:NVIDIA GTX950,sm5.0,maxwell架构。 2. Global Memory A memory "request" is an instruction which accesses memory, and a "transaction" is the movement of a unit of da more ...

CUDA Sanitizer Samples使用

1. Introduction CUDA 10.1推出了新的API:The Compute Sanitizer API,提供了更底层更丰富的Instrumentation API。 https://docs.nvidia.com/cuda/sanitizer-docs/SanitizerApiGuide/index.html 目前相关文档还比较简单,本文记录下官方Samp more ...

Deepin 15.10 安装cuda toolkit 10.1

1. Introduction deepin可以按照正常cuda toolkit的方式安装cuda 9.0,但是10.0+就出现了问题。查看安装日志也看不出所以然。在cuda论坛阴差阳错发现了一个用来解决其他问题的方法,但是可以用来解决deepin上cuda toolkit的安装。 2. 正常安装toolkit和driver的方法 2.1 禁用默认闭源驱动 # 使用vim或者其他编辑器添加配置文件 more ...

从Wordpress到Pelican

1. Introduction 博客对于我的作用,更多是整理知识、备忘。但是随着内容增多,以及因为安全防护问题使用cloudflare作为防火墙,wordpress搭建的博客越来越慢。很早之前就有了对博客进行一次大整理的念头,并有意识地寻找替代框架。在给工具写文档时,发现了pelican,一个python写的静态网站生成器。静态网站生成器的特点就是可DIY性非常强,或者说很多东西都得手撸。 于是2019年开始准备把博客从wordpress迁移到pelican上来。 more ...

Qt 5.9.0 MinGW 静态编译版本

1. Introduction 本文主要内容系转载自Qt for Windows:Qt 5.9.0 MinGW 静态编译版本(包含OpenSSL),后面添加了upx二进制压缩加壳工具的简单说明。 最近想起很久以前写的一个工具,发现使用的依赖源仍在更新,就顺手修改了下依赖源更新了一版。记录下qt的安装编译环境。 2. Qt静态编译环境配置 2.1 下载编译好的包 more ...

如何提高生产效率目录

Introduction 开启了一个雄心勃勃的课堂计划。录了一套《如何提高生产效率》的视频,由于前期视频没有做详细的备课计划,所以大家看到视频里会有很多突发的想法。 目前的计划,第一季是《如何提高生产效率》 文章是对视频的梗概说明,并对视频里的错误进行了纠正。 分享地址 B站地址 more ...