在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里打开就行。里面的系统是ubuntu more ...



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

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


Nvidia-docker 在docker里安装caffe2

Introduction 发现nvidia开始搞nvidia-docker! 如果GPU是共享资源,比如在服务器上,可能不同的用户需要不同的运行环境,但是像vbox这样的重量级虚拟机又过于笨重而且也不支持GPU的直接虚拟化。这时候,共享GPU的环境配置就成了一个大问题,尤其是在配置的应用可能会产生冲突的情况下。 nvidia-docker完美解决了这个问题! docker之前也写过一些简易的入门教程: Docker学 more ...


Cuda锁页内存和零复制

Pre 为了对某一数据集进行操作,你需要将数据从主机传输到设备上、在数据集上进行操作,然后将结果传输回主机。由于是在完全串行的方式下执行的,这将导致主机和设备在一段时间内都是闲置的,白白浪费了传输能力和计算能力。本文介绍了锁页内存(Pinned Memory/PageLocked Memory)和零复制(Zero Copy)来节省甚至去掉数据传输耗费。 锁页内存(Pinned Memory/PageLocked Memory) 主机处理器支持虚拟内存系统,其中物理内存也可以标记为换出状态,然后将它更换到磁盘上,一旦需要该页了,则重新加载回 more ...