- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。
9年前关闭。
我想知道在 GPGPU 开发中帮助您的关键是什么,当然还有哪些限制是您无法接受的。
我想到了:
最佳答案
你必须小心你如何解释蒂姆·斯威尼在 Ars 采访中的陈述。他说拥有两个独立的平台(CPU 和 GPU),一个适合单线程性能,一个适合面向吞吐量的计算,随着我们的应用程序和硬件相互发展,很快就会成为过去。
GPU 摆脱了 CPU 的技术限制,这使得可以说更自然的算法(如光线追踪和光子映射)在合理的分辨率和帧速率下几乎不可撤销。 GPU 出现了,它具有完全不同和限制性的编程模型,但对于煞费苦心地编码到该模型的应用程序,吞吐量可能提高 2 或 3 个数量级。这两种机器模型具有(并且仍然具有)本质上不同的编码风格、语言(OpenGL、DirectX、着色器语言与传统桌面语言)和工作流程。这使得代码重用,甚至算法/编程技能重用变得极其困难,并且将任何想要使用密集并行计算基础的开发人员束缚在这种限制性编程模型中。
最后,我们将达到这样一个点,即这种密集的计算基板同样可以对 CPU 进行编程。尽管这些大规模并行加速器中的一个“核心”(尽管执行线程,例如 G80 上的 SM,并不完全是传统意义上的核心)和现代 x86 桌面之间仍然存在相当大的性能差异核心,两个因素插入这两个平台的融合:
TS: No, I see exactly where you're heading. In the next console generation you could have consoles consist of a single non-commodity chip. It could be a general processor, whether it evolved from a past CPU architecture or GPU architecture, and it could potentially run everything—the graphics, the AI, sound, and all these systems in an entirely homogeneous manner. That's a very interesting prospect, because it could dramatically simplify the toolset and the processes for creating software.
Right now, in the course of shipping Unreal 3, we have to use multiple programming languages. We use one programming language for writing pixel shaders, another for writing gameplay code, and then on PlayStation 3 we use yet another compiler to write code to run on the Cell processor. So the PlayStation 3 ends up being a particular challenge, because there you have three completely different processors from different vendors with different instruction sets and different compilers and different performance techniques. So, a lot of the complexity is unnecessary and makes load-balancing more difficult.
When you have, for example, three different chips with different programming capabilities, you often have two of those chips sitting idle for much of the time, while the other is maxed out. But if the architecture is completely uniform, then you can run any task on any part of the chip at any time, and get the best performance tradeoff that way.
关于performance - GPGPU(通用GPU)开发的优缺点是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/124222/
GPGPU编程仅允许执行SIMD指令吗? 如果是这样,那么重新编写具有以下特征的算法必须是一项繁琐的任务: 被设计为在通用CPU上运行以在GPU上运行?也有一个 可以转换为SIMD架构的算法中的模式?
以计算能力为1.3的硬件为例。 30 条短信可用。那么最多可以同时运行240个块(考虑到寄存器和共享内存的限制,对块数的限制可能会低很多)。超过 240 的那些块必须等待可用的硬件资源。 我的问题是那
我正在寻找与使用 GPGPU 计算时 CPU 如何将程序代码移动到 GPU 相关的信息。互联网上有很多关于数据传输的手册,但没有关于指令/程序加载的手册。 问题是:程序由 CPU 处理,它在每个计算单
我有一个 Cuda 应用程序;在首先为各种数组分配 cuda 内存后,程序循环执行:将数据传输到 GPU,在 GPU 上处理内核,从 GPU 传回数据。第一个数据集由 GPU 正确处理并返回。此后后续
GPGPU 在许多任务(不是全部)上都有很大的潜力,尤其是处理数据库中的矩阵,至少根据围绕该主题的所有 PR。 我还没有找到使用 GPGPU 来加速性能的数据库。 你知道任何利用 GPGPU 的开源数
当一个 wavefront 执行时,它提供了细粒度的多线程。这样做的后果之一是没有分支预测要求,如下面的幻灯片所示: 但是我无法理解这一点。有人可以用简单的方式解释一下吗? 最佳答案 分支会在指令流的
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
CUDA初学者在这里。 在我的代码中,我目前在主机代码的循环中多次启动内核。 (因为我需要块之间的同步)。所以我想知道我是否能够优化内核启动。 我的内核启动看起来像这样: MyKernel>>(dou
我正在尝试使用 WebGL 和 GLSL 着色器编程在 GPU 上实现有效的流体求解器。 我发现了有趣的文章: http://http.developer.nvidia.com/GPUGems/gpu
我一直在他们的 Stream 2.0 测试版中使用 ATI OpenCL 实现。当前测试版中的 OpenCL 目前仅使用 CPU,下一个版本应该支持 GPU 内核。我下载了 Stream,因为我的工作
我有一个CUDA程序,似乎正在达到某种资源的某种极限,但是我无法弄清楚该资源是什么。这是内核函数: __global__ void DoCheck(float2* points, int* segme
我想知道使用 GPGPU 可以实现什么样的金融应用程序。我知道使用 CUDA 在 GPGPU 上使用蒙特卡罗模拟进行期权定价/股票价格估计。有人可以列举在金融领域的任何应用程序中使用 GPGPU 的各
从程序员的角度来看,GPGPU 和常规多核/多线程 CPU 编程之间的主要实际区别是什么?具体来说: 哪些类型的问题更适合常规多核,哪些类型更适合 GPGPU? 编程模型的主要区别是什么? 导致编程模
我正在考虑将一些数学运算卸载到 GPU。由于我已经在使用 D3D11,因此我将使用计算着色器来完成这项工作。但问题是,无论用户拥有什么 GPU,我都需要相同输入的结果相同。 (仅要求它支持计算着色器
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我正在尝试在 GLSL 上实现 Scrypt 哈希器(用于 LTC 矿工)(不要问我为什么)。 而且,实际上,我坚持使用 HMAC SHA-256 算法。尽管我已经正确实现了 SHA-256(它为输入
我最近在 GTC 上看到了 arrayfire 演示,我想我会尝试一下。以下是我在尝试使用它时遇到的一些问题。我在 Windows 7 系统上运行 Visual Studio 2013,使用来自 AM
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我曾不止一次偶然发现术语“非连贯”和“连贯”内存 tech papers与图形编程有关。我一直在寻找一个简单明了的解释,但发现大多数是this的“硬核”论文。类型。我很高兴收到关于 GPU 架构上实际
基本上问题是如何在 Metro 应用程序中运行 gpgpu 代码。该库不需要专门用于计算,例如,使用XNA的hlsl(最初是为了渲染东西)进行通用计算(XNA不包含在Metro中,因此是我的问题)。默
我是一名优秀的程序员,十分优秀!