标签: gpu

如何同时运行 2 个 CUDA 应用程序?

我对 CUDA 和 GPU 编程很陌生。我目前有 2 个 CUDA 应用程序(A.cu 和 B.cu),并且希望分别运行它们并计算执行的总时间。但我想同时运行两个应用程序并检查执行时间。有没有办法做到这一点?

换句话说,如何同时从 2 个不同的应用程序同时启动两个内核,以便它们并行运行?

在这方面的任何帮助都是有用的。提前致谢。

parallel-processing cuda gpu

1
推荐指数
1
解决办法
3102
查看次数

printf 在 CUDA 计算上如何工作 >= 2

早期printf不支持,我们要么使用模拟器运行 CUDA 程序,要么来回复制变量并在主机端打印。

既然 CUDA(arch 2 及更高版本)支持,printf我很想知道这是如何工作的?我的意思printf是屏幕上的GPU 内部如何?计算能力 1 的限制因素是什么?

c printf cuda gpu

1
推荐指数
1
解决办法
1113
查看次数

Three.js 纹理何时发送到 GPU?

我正在构建一个从服务器动态加载图像以用作场景中的纹理的应用程序,我正在研究如何正确加载/卸载这些纹理。

我的简单问题是;在 Three.js 调用图中,纹理是否被加载和/或更新到 GPU 中?是在创建纹理 ( var tex = new THREE.Texture()) 时还是将其应用于网格 ( var mesh = new THREE.Mesh(geom, mat)) 时?该纹理类三的说明,创建纹理贴图时不加载。但是我在Mesh 中也找不到任何东西。

我错过了什么吗?纹理是否在渲染循环中加载而不是在对象创建中加载?那可能是有道理的。

提前致谢!

javascript textures gpu three.js

1
推荐指数
1
解决办法
1083
查看次数

GPU(例如 GTX 1080)中的寄存器文件大小为何大于 L2 缓存大小?

看着这个事实,我开始想知道寄存器在 GPU 中是如何工作的?在知道这一点之前,我认为在分层内存阶梯之上越来越高,大小不断减小(这是直观的(延迟减少,大小减小))。GPU 中寄存器的用途是什么,为什么它们的大小大于 L2/L1 缓存?谢谢。

memory-management gpu cpu-registers cpu-cache

1
推荐指数
1
解决办法
2680
查看次数

我在 Tesla K40 和 Tesla K80 上的性能几乎相同

我开发了两个 CUDA 内核。一个是受内存限制的内核,另一个是受计算限制的内核。内核,首先在 Tesla K40 上进行了优化,我现在正在对 Tesla K40 和 Tesla K80 进行性能测试,以比较它们的性能结果。然而,我真的很困惑,因为我在两块板上获得了几乎相同的性能,而 K80 提供了几乎两倍宽的理论带宽和 DP 峰值性能。我还对每个块使用不同数量的线程进行了测试,但与 Tesla K40 相比,Tesla K80(大约 2%)没有任何明显的性能改进。

我使用以下标志编译代码:

在特斯拉 K40 上:

nvcc --cudart static --relocatable-device-code=false -gencode arch=compute_35,code=compute_35 -gencode arch=compute_35,code=sm_35 -link -o  "test"
Run Code Online (Sandbox Code Playgroud)

在特斯拉 K80 上:

nvcc --cudart static --relocatable-device-code=false -gencode arch=compute_37,code=compute_37 -gencode arch=compute_37,code=sm_37 -link -o  "test"
Run Code Online (Sandbox Code Playgroud)

从理论上讲,我应该在 Tesla K80 上获得更高的性能,但我不知道为什么这不起作用。

感谢您的任何回答或评论!

performance cuda gpu

1
推荐指数
1
解决办法
1281
查看次数

在 CUDA 中管理占用

早上好。

我开始学习 cuda 编程,我正在学习性能。我在 CUDA 网站上读到,要获得良好的性能,我们应该考虑四件事:

http://docs.nvidia.com/gameworks/content/developertools/desktop/analysis/report/cudaexperiments/kernellevel/achievedoccupancy.htm

-每个 SM 的扭曲(系统多处理器) -每个 SM 的块数 -每个 SM 的注册 -每个 SM 的共享内存

所以我要重温第一件事,并且根据 GPU,我根据每个 SM 的最大扭曲和每个 SM 的块定义了内核的尺寸。我的任务是执行一亿次求和来衡量哪种方法更好。

我所做的是一个 for 循环,在该循环中,我在每次迭代时启动一个内核,以最大化占用率。例如,对于 NVidia 1080 GPU,我读到:

int max_blocks = 32; //maximum number of active blocks per SM int max_threads_per_Block = 64; //maximum number of active threads per SM int max_threads = 2048;

这为每个 SM 提供总共 2048 个线程并保证最大占用率。这个 GPU 可以有 64 个活动扭曲,每个扭曲有 32 个线程。在这个 GPU 中,一个活动块有 2 个扭曲,这意味着每个块一次可以有 64 个活动线程。有了这个,我按如下方式启动内核:

dim3 threadsPerBlock(max_threads_per_Block); dim3 numBlocks(max_blocks); VecAdd<<<numBlocks, threadsPerBlock>>>(d_A, …

c++ performance cuda gpu nvidia

1
推荐指数
1
解决办法
2544
查看次数

如果没有显卡,谁运行 OpenGL 着色器

我正在编写一个非常基本的 OpenGL C++ 程序(Linux 64 位)。

事实上,我有3个程序:

  • 一个主要的 C++ 程序
  • 一个顶点着色器
  • 片段着色器

2 个着色器在运行时编译。我想这个程序是由 GPU 在视频卡上并行运行的。

我的问题是如果我的计算机包含一个没有 GPU 的非常基本的视频卡会发生什么?

我试图在禁用“3d 加速”的情况下在 VirtualBox 上运行我的程序,并且程序可以运行!

这是否意味着如果没有 GPU,opengl 会自动检测显卡并在 CPU 上运行着色器?

c++ opengl gpu

1
推荐指数
1
解决办法
1350
查看次数

Xgboost gpu 安装致命错误 LNK1181

我正在尝试按照以下说明安装 xgboost gpu 支持版本。xgboost-gpu-support

我使用 windows 10,visual studio 2017。不支持 GPU 的版本工作正常。但是对于支持 gpu 的版本?当我从 Visual Studio 释放模式时,它输出错误链接:致命错误 LNK1181:无法打开输入文件“Release\gpuxgboost.lib”。

在前面的步骤中,一切都进行得很好。我怎样才能解决这个问题?提前致谢。

(我的项目是D:\Software\xgboost\xgboost\build\ALL_BUILD.vcxproj,没有空间。所以这个解决方案不起作用。lnk1181-error-message-when-you-build-a-manag

gpu lnk visual-studio xgboost

1
推荐指数
1
解决办法
437
查看次数

opengl 调用可以在没有 GPU 的情况下运行吗?

我知道 opengl 是一个库,它允许在 GPU 上执行某些任务/调用(如着色)以实现更快的计算(硬件加速)。我一直在互联网上阅读有关它的信息,我想知道对 opengl 的调用是否可以在没有 GPU 的情况下运行。例如,这个论坛上的某个人(https://www.gamedev.net/forums/topic/638883-will-opengl-3d-games-run-in-a-pc-without-a-dedicated-video-card/ ) 提到它可以作为软件仿真运行。任何人都可以谈论这个吗?

c++ opengl gpu

1
推荐指数
2
解决办法
1986
查看次数

pytorch - 在“with statement”中使用设备

有没有办法pytorch在特定(GPU)设备的上下文中运行(无需为每个新张量指定设备,例如.to选项)?

类似于tensorflow with tf.device('/device:GPU:0'):..

似乎默认设备是cpu(除非我做错了):

with torch.cuda.device('0'):
   a = torch.zeros(1)
   print(a.device)

>>> cpu
Run Code Online (Sandbox Code Playgroud)

python gpu pytorch

1
推荐指数
1
解决办法
3016
查看次数