【问题标题】:how many threads does nvidia GTS 450 hasnvidia GTS 450有多少线程
【发布时间】:2011-02-01 19:00:23
【问题描述】:

亲爱的朋友们: 我想学习 CUDA 编程,我买了一辆 Nvidia GTS 450 PCI_E 汽车。它有 192 个 SM,那么它有多少个线程。 192个线程?还是 192*512 线程? 问候

【问题讨论】:

    标签: cuda


    【解决方案1】:

    在 CUDA 中,术语 threads 指的是特定内核调用的属性,而不是硬件的属性。
    例如在这个 CUDA 调用中:

    someFunction<<<2,32>>>(1,2,3);
    

    您在 2 个块中有 32 个线程,因此总共有 64 个线程。
    硬件自动将线程调度到处理器。

    【讨论】:

    • 我认为他要求尽可能多的线程数。考虑到每个块最多允许 512 个线程,他想知道他的 GPU 一次可以运行 192*512 个线程是否正确。
    【解决方案2】:

    根据the specs,您的设备有 192 个“处理器核心” - 这些与 SM相同。在 CUDA 中,SM 是一种多处理器,它以锁步方式执行多个线程(1.3 系列设备为 8 个,后续设备更多)。

    正如 shoosh 所指出的,使用的线程数是内核调用的函数。

    通常,要在 CUDA 中获得良好的性能,您应该运行比 CUDA 处理器内核更多的线程 - 这是为了隐藏全局内存访问的延迟。

    【讨论】:

    • 非常感谢您的帮助!它对我可以调用的最大线程数有上限吗?
    • 您可以执行的最大线程数是每个块的最大线程数与最大网格大小的乘积。您应该查看 CUDA 编程指南 - 它会告诉您值。
    猜你喜欢
    • 2013-03-02
    • 2021-09-12
    • 1970-01-01
    • 2020-09-05
    • 2012-04-24
    • 2019-10-09
    • 1970-01-01
    • 2020-08-29
    • 2011-11-27
    相关资源
    最近更新 更多