【问题标题】:NBody Simulation - appropriate design approachNBody 模拟 - 适当的设计方法
【发布时间】:2012-11-23 00:40:11
【问题描述】:

我有一个问题,我将拥有一堆 nbodies - 每个物体的运动都由现有数据预先描述,但是当一个物体在另一个物体的范围内时,它的某些属性会发生变化。为了这个问题,我们假设你每个身体都有一个计数器来计算你在其他身体周围的时间。所以基本上你从 t = 0 开始,你在身体 2 周围花费 5 秒,所以你的 t 现在是 5。我想知道我应该怎么做最好的方法,我还没有数据,但我只是想知道我是否适合探索 CUDA/OpenCL 之类的东西,或者我应该坚持在多核 cpu 机器上优化它。因为要模拟的数据量大约是 500 具尸体,每具尸体在 30 天的时间里都有精确到秒的运动描述,所以每具尸体有 43200 个数据点。

【问题讨论】:

标签: database cuda opencl cpu gpu


【解决方案1】:

蛮力 nbody 绝对适合 GPU,因为它是“令人尴尬的并行”。每个身体对身体的交互计算都完全独立于任何其他计算。您的变化包括跟踪在其他物体“存在”中所花费的时间,这将是对现有身体对身体力计算的直接补充,因为无论如何一切都是在时间步长的基础上完成的。

Here's some sample CUDA code for nbody.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-14
    • 1970-01-01
    相关资源
    最近更新 更多