标签: CUDA

gpgpusim runtime的dockerfile

Introduction 之前写过一篇在docker里跑gpgpusim(下称参考文献1),今天花了一点时间,写了个完整的dockerfile,并上传到了docker hub上去。现在简化一下运行的步骤。 gpgpusim-runtime 在docker hub的地址: https://hub.docker.com/r/findhao/gpgpusim_runtime/ 运行 执行参考文献1的第4节 拷贝必须的文件到自己的目录,比如/home/find/e/gpgpusim/。 执行: # 可从...

在docker里跑gpgpusim

1. Introduction gpgpusim在虚拟机里跑起来非常慢,而自己配机器的环境又可能会出现这样那样的问题。本文给出了一种使用gpgpusim提供的vbox虚拟机进行编译,在host的docker环境下运行的方法。 2. 使用gpgpusim官方vbox虚拟机 gpgpusim官方提供了vbox虚拟机文件的下载,大概7G多, http://ece.ubc.ca/~taylerh/files/gpgpu-sim/gpgpu-sim.vm.tar.gz 直接从vbox里打开就行。里面的系统...

CUDA程序通用makefile文件模板

去掉了sdk里通用makefile的一些内容,比如交叉编译。 # Location of the CUDA Toolkit,默认的路径即可 CUDA_PATH ?= "/usr/local/cuda" # architecture HOST_ARCH := $(shell uname -m) TARGET_ARCH ?= $(HOST_ARCH) ifneq (,$(filter $(TARGET_ARCH),x86_64 aarch64 ppc64le armv7l)) i...

virutalbox虚拟机下使用jetpack3.2对jetson tx2刷机

1. Introduction 本文介绍了使用virtualbox里的Ubuntu16.04作为Host来刷jetson tx2的jetpack3.2包的过程。可有效解决Install JetPack 3.2 Failed "E: fopen failed with file local.db, errno = 2"的问题。 2. 环境介绍 PC的真正Host是Debian9 VirtualBox 虚拟机 VirtualBox里的Ubuntu16.04作为刷机的Host Je...

CUDA PTX手册的目录

为了便于搜索指令对应的章节,将ptx官方手册的目录提取出来。 ptx手册:http://docs.nvidia.com/cuda/parallel-thread-execution/index.html CUDA Toolkit v9.1.85 PTX ISA ▽1. Introduction 1.1. Scalable Data-Parallel Computing using GPUs 1.2. Goals of PTX 1.3. PTX ISA Version 6.1 1.4. Docum...

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

Introduction 解读CUDA汇编PTX–目录 NVIDIA CUDA的NVCC编译过程之前已经介绍过了,编译ptx后,会生成cubin文件。 cubin文件是包含了CUDA执行代码节的ELF格式文件。类似于我们常见运行文件。而官方提供了两个工具来反编译cubin文件到sass文件(类似常见的汇编),官方使用文档,由于我目前重点使用的nvdisasm,因此本文只介绍nvdisasm的使用,nvdisasm处理数据的功能更多。 nvdisasm nvdisasm只接受cubin...

Nsight编译器设置保留编译过程

Introduction 之前记录过NVCC编译过程,但是在修改独立makefile时,可能会比较麻烦,而且如果是nsight里的项目,每次build makefile都会被重置。 但实际上nsight有设置编译参数的选项。 (本文将不定期更新,以完善nsight的build设置说明) 编译器设置 在项目上右键,弹出菜单的最后一个即为properties。 展开Build–》Settings,即可看到各种参数设置。 keep keep的含义: Keep all intermediat...

学术阅读 – SAGE笔记

1. Introduction 本文总结了Sage: Self-tuning approximation for graphics engines一文的主要观点,记录部分自己的思考。 作者是密歇根大学Mehrzad Samadi,发表在MICRO 2013上。 SAGE主要实现自动生成多种近似级别CUDA kernel函数的编译器,并在运行时选择可行的kernel函数来达到用户设定的目标输出质量(Target output quality, TOQ)。 它使用了三种优化技术: selective...

GPU benchmark说明

Introduction 本文内容主要系摘录翻译自Ang Li的博士毕业论文。 1.Perfect Power Efficiency Revolution for Embedded Computing http://hpc.pnl.gov/PERFECT/ Application Domains Kernels PERFECT Application 1 Discrete Wavelet Transform   2D Convolution   Histogram Equal...

GPU基础知识

Introduction 本文内容主要系摘录翻译自Ang Li博士的毕业论文。 1. GPU历史 Arch. Release Year Compute Capability Process Most highlighted Features Flagship GTX/Tesla/Jetson GPUs Tesla 2008 1.0, 1.1, 1.2, 1.3 65 nm GPU baseline architecture GTX8800, GTX9800, GTX280,Tesla1060 F...