玩转 gpgpu sim 01记 —— try it

news2024/12/24 0:38:33

1. 短介绍

gpgpu-sim 是一个gpu模拟器,可以让cuda/openCL程序运行在一个软件模拟器上,而不需要硬件GPU;

2. 目标

用最简单省事的方式跑通一个gpgpu-sim的仿真

3. gpgpu-sim 一点项目特性

开发比较早,没有持续的维护,依赖的软件环境比较老,手动配置过程稍微复杂了,故采用docker image

4. 安装 docker engine

    4.1 安装

    4.2 拉取 docker image

sudo docker pull socalucr/gpgpu-sim

5. 启动一个容器

export   NEW_DIR=gpgpu-sim_03     \
&&  export WORK_SPACE=/home/hipper/workspace/bitbucket   \
&&  mkdir -p   ${WORK_SPACE}/${NEW_DIR}    \
&&  cd ${WORK_SPACE}/${NEW_DIR}      \
&&  sudo docker run --name  ${NEW_DIR}_Jim -it                             \
-v  ${WORK_SPACE}/${NEW_DIR}:${WORK_SPACE}/${NEW_DIR}                   \
-v /dev:/dev -v /usr/src/:/usr/src -v /lib/modules/:/lib/modules --privileged --cap-add=ALL    \
socalucr/gpgpu-sim:latest    /bin/bash

6. 编译gpgpu-sim

# cd gpgpu-sim_distribution
# make clean
# source setup_environment
# make

4) Copy configs eg. GTX480 and Run your benchmarks.
# mkdir ~/test
# cp configs/GTX480/* ~/test/.
# cd ~/test/

7. 运行 cuda程序

     7.1 编译ispass2009-benchmarks

先按照上述步骤编译gpgpu-sim,才能编译运行这些示例,运行时需要动态调用 libcudart.so.4

libcudart.so.4 => /root/gpgpu-sim_distribution/lib/gcc-4.4.7/cuda-4000/release/libcudart.so.4

# cd /root/ispass2009-benchmarks
# make -f Makefile.ispass-2009

    7.2 运行 RAY

root@c07a3d14ebcb:~/test# ~/ispass2009-benchmarks/bin/release/RAY 4 4



root@c07a3d14ebcb:~/test03# ~/ispass2009-benchmarks/bin/release/RAY 640 640

  运行效果图:

7.3 编译 /root/NVIDIA_GPU_Computing_SDK/C

# cd /root/NVIDIA_GPU_Computing_SDK/C/
# make -j

7.4 运行 /root/NVIDIA_GPU_Computing_SDK/C/src/vectorAdd

# mkdir ~/test_vectorAdd_01
# cd ~/test_vectorAdd_01/
# cp ~/gpgpu-sim_distribution/configs/GTX480/* ./
root@c07a3d14ebcb:~/test_vectorAdd_01# /root/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/vectorAdd

 运行结果

参考文档:

https://socal-ucr.github.io/GPGPU-sim-container/

Setup
1) Install docker by following the instructions in official Docker documentation.
2) Use the command $ docker run -w /root -it socalucr/gpgpu-sim /bin/bash # Start a new container of GPGPU-sim
3) $ cd gpgpu-sim_distribution; make clean; source setup_environment; make
4) Copy configs eg. GTX480 and Run your benchmarks.
- mkdir ~/test
- cp configs/GTX480/* ~/test/.
- cd ~/test/
- ~/ispass2009-benchmarks/bin/release/RAY 4 4


NOTE: If you want to detach (push it to background) from the container without shutting it down, use ctrl+p+q Remember that $ exit would shutdown the container.


Useful Docker commands

$ docker images # lists all locally available images
$ docker ps # list all up and running containers.
$ docker ps -a # list all exited, errored and running containers.
$ docker start CONTAINER_ID # Command to start the container when exited accidentally.
$ docker run IMAGE_NAME # Start a new container of IMAGE_NAME
$ docker attach CONTAINER_ID # Reattach to running (detached) container.
# docker rmi IMAGE_NAME # Remove locally available image.



Any questions?
krang006@ucr.edu
mchow009@ucr.edu

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1003724.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vscode搭建Django自带后台管理系统

文章目录 一、django自带的后台管理系统1. 建表2. 后台管理系统2.1 创建账号2.2 运行后台2.3 登录 二、模版渲染1. 直接将数据渲染到页面2. 数据传递给js 三、数据库1. 查看当前数据库2. 创建UserInfo数据表3. Django rest framework配置 四、vue前端搭建1. 在Django项目的根目…

vue 使用canvas 详细教程

Vue.js 中使用 Canvas Vue.js 是一个流行的 JavaScript 框架,用于构建用户界面。它提供了一种简洁的方式来管理和渲染数据,同时也支持与其他库和工具的集成。要在 Vue.js 中使用 Canvas,您可以按照以下步骤进行操作: 在 Vue.js …

Visual Studio 2022安装SVN插件教程

1. 第一步:避免踩坑,超级重要!!!关闭Visual Studio 2022应用程序;(不然插件装不上,一直转圈!) 2.第二步:下载Visual Studio 2022版本对应的SVN插件…

最新IDE流行度最新排名(每月更新)

2023年09月IDE流行度最新排名 顶级IDE排名是通过分析在谷歌上搜索IDE下载页面的频率而创建的 一个IDE被搜索的次数越多,这个IDE就被认为越受欢迎。原始数据来自谷歌Trends 如果您相信集体智慧,Top IDE索引可以帮助您决定在软件开发项目中使用哪个IDE …

Excel显示列号

默认表格打开列以字母显示 设置方法 文件 -> 工具 -> 选项 -> 常规与保存 设置后效果如下图

2023年在线教育行业研究报告

第一章 行业概况 1.1 定义 随着技术的飞速发展和互联网的普及,我们的学习方式正在经历一场革命。在线教育,作为这场变革的核心,已经成为全球教育领域的热门话题。但究竟什么是在线教育行业呢? 在线教育行业是指通过互联网平台提…

【vue2】data中数据赋值失败找不到、data数据不声明的影响

😉博主:初映CY的前说(前端领域) ,📒本文核心:vue2data作用 前言:当你看到这篇文章相比你已经对vue有了一定的了解,对data的有了一个基本的认识:data是存放我们当前页面数据地方。是的&#xff0…

【Python小项目之Tkinter应用】随机点名/抽奖工具大优化:新增选项窗口!可选是否重复点名以及随机点名!可以手动选择文件及文件类型并预览文件!

文章目录 前言一、实现思路窗口逻辑按钮逻辑二、关键代码设置窗口布局实现具体组件实现选择文件与预览文件重中之重:抽取模式三、完整代码总结前言 老规矩,先看效果: 我们为抽奖工具新增了一个设置按钮,点击设置按钮后会出现一个弹窗,弹窗中有各种组件以帮助我们完成初始…

C语言——qsort()函数_学习笔记

本文目录 一、qsort()介绍二、参数详解三、qsort()函数应用举例3.1 排序数组类型的数据3.2 排序结构体类型的数据 四、模拟实现qsort()函数4.1 冒泡排序简单介绍4.2 实现bubble_sort()函数 一、qsort()介绍 qsort()函数是一个库函数&#xff0c;包含在头文件 <stdliib.h>…

Nginx部署前后端分离项目(Linux)

Nginx代理前端页面、后端接口 一、前端打包二、后端打包三、Linux部署Nginx启动、暂停、重启服务器部署文件地址&#xff1a; 一、前端打包 npm run build二、后端打包 通过Maven 使用package打包 三、Linux部署 安装Nginx 安装环境 yum -y install gcc pcre pcre-devel z…

电脑更换硬盘的时候怎么迁移系统?

为什么需要迁移系统&#xff1f; 在一些关于电脑DIY或Windows相关的论坛社区中&#xff0c;有很多人发帖询问怎么迁移系统。那么这个系统迁移&#xff0c;究竟是何含义呢&#xff1f;通俗易懂地解释一下&#xff0c;就是创建一个完整无缺的操作系统复制品&#xff0c;它与系…

硬件总线基础07:PCIe总线基础-事务层(1)

说在开头&#xff1a;关于我的世界&#xff08;4&#xff09; 几年前追过一个综艺&#xff1a;《导演请指教》。不仅仅是因为节目中那一部部小电影的诱惑力&#xff0c;更让人上头的是各方的点评&#xff1a;制片人&#xff0c;学院派&#xff0c;影评人&#xff0c;发行人、大…

Linux系统上安装docker

文章目录 一、Docker的简介二、Docker的组成部分三、Docker的安装命令安装之前先卸载系统上原有的Docker安装需要的安装包yum-utils设置镜像仓库地址安装docker相关的引擎安装docker启动docker查看是否启动使用hello-world镜像测试docker 四、docker run运行思维导图参考文档 一…

jira流转issue条目状态transitions的rest实用脚本,issue状态改变调整

官方文档链接地址&#xff1a; POST Transition issue Performs an issue transition and, if the transition has a screen, updates the fields from the transition screen. sortByCategory To update the fields on the transition screen, specify the fields in the fiel…

redis持久化策略【面试必看】

目录 持久化RDB&#xff08;定期备份&#xff09;手动触发savebgsave 自动触发实际操作rdb的优缺点 AOF&#xff08;定时备份&#xff09;重写机制混合持久化aof和rdb 总结 持久化 内存中的数据是不持久的&#xff0c;要想做到持久&#xff0c;就需要把redis中的数据存储到硬盘…

JSP ssm 特殊人群防走失系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 JSP ssm 特殊人群防走失系统是一套完善的web设计系统&#xff08;系统采用SSM框架进行设计开发&#xff0c;springspringMVCmybatis&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源 代码和数据库&#xff0c;系统主要…

SpringMVC之JSR303和拦截器

目录 一.JSR303 二.JSR常用的注解 三.JSR快速入门 四.拦截器 ⭐⭐⭐拦截器和过滤器有什么不一样&#xff0c;或者它们的区别是什么&#xff1f;&#xff1f; 五.拦截器快速入门--登录的案例 一.JSR303 JSR 303 是 Java 规范的一部分&#xff0c;全称为 Bean Validation 框…

从零开始,轻松学习如何在CentOS 7服务器上安装、调优和使用Tomcat 8.5

PS&#xff1a;文章最后有“开心一刻”&#xff0c;记得看哦&#xff0c;给生活增加点儿趣味。 前言 Tomcat是一个广泛使用的开源Java Servlet容器&#xff0c;也是部署、管理和运行Java Web应用程序的首选之一。本文将为您详细介绍在CentOS 7服务器上安装、调优和使用Tomcat 8…

2023年数维杯数学建模B题节能列车运行控制优化策略求解全过程文档及程序

2023年数维杯数学建模 B题 节能列车运行控制优化策略 原题再现&#xff1a; 在城市交通电气化进程快速推进的同时&#xff0c;与之相应的能耗增长和负面效应也在迅速增加。城市轨道交通中的快速增长的能耗给城轨交通的可持续性发展带来负担。2018 年&#xff0c;北京、上海、…

Firefox使用SSH代理配置

原料 火狐浏览器 SSH账号 配置MyEntunnel MyEntunnel是用来登录SSH服务器并在本机自动架设一个socks5代理的软件。 把SSH帐号信息&#xff08;包括SSH服务器地址&#xff0c;SSH帐号&#xff0c;SSH密码&#xff09;一一填写到MyEntunnel对应的地方后&#xff0c;点击 “保存…