我身边有一堆旧显卡。它们都有 10 到 15 年的历史了,除了占用空间外没有任何用途。如何在不将其连接到 PC 的情况下利用它们的计算能力。我可以使用 pci x16 到 usb 转换器或将电线焊接到电路板上并将它们连接到 rpi 的 gpio 来为 raspberry pi 供电吗?我真的可以用这些卡做一些有用的事情吗?还是它们完全没用?时间和效率在这里不是问题,因为我这样做只是为了实验并了解 gpu 的实际工作原理。
答案1
驱动程序是您的问题。显卡是小型的独立计算机,专门用于与板载组件配合使用,设计称为“参考卡”。您可能听说过这个术语指的是零售店中第三方显卡的最基本版本的显卡。主板本身具有管理主板 BIOS 等板载组件的固件,驱动程序安装到操作系统中以告诉操作系统如何使用主板。如果没有系统的接口插孔和驱动程序,该系统就无法利用该卡,并且如果它有“默认视频驱动程序”,则效果会参差不齐。
我保存显卡的规则如下:
如果卡是 PCI,请保留它或尝试出售它。一些支持 PCI 经典功能的主板仍然存在,用于使用 ARM 芯片和类似非标准 CPU 的 HTPC 设置。PCI 显卡很难找到,因为它们只有这种小众需求,而且许多显卡不如其处理器支持的片上 AMD Radeon 强大。
如果卡是 PCI-E,请保留它。如果您不能使用它并且它足够新,请出售它。如果您可以使用它但不需要它,请保留一张作为备用,以防您的视频卡坏了,您需要插入另一张卡来应付购买新卡的情况。
如果该卡是最后一代 AGP,如早期的 GeForce 卡或 Voodoo5 和 Voodoo6 卡,您可以将其出售给发烧友。如果是早期的 AGP 卡,请将其回收。
答案2
我将忽略物理连接方面的问题,可能可以通过 USB 完成。如果您的项目计算量很大,那么 USB 的低带宽不会对您造成太大影响。
如果它不支持 OpenCL(两者/通用)、AMD(流处理器)或 CUDA(NVIDIA),就没有什么简单的方法来充分利用它们的性能。
除了最新的卡以外,其他卡不太可能都支持 OpenCL。
https://en.wikipedia.org/wiki/CUDA
https://en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units
https://en.wikipedia.org/wiki/OpenCL
如果您能找到支持上述三种方法之一的软件,您只需安装驱动程序和软件然后运行它,它就会检测兼容的硬件并自动使用它。
否则,您必须学习如何针对所有 3 个标准进行编程才能确保万无一失。然后,您就可以编写自己的代码了。
即使如此,旧显卡可能也只有 30-80 个核心,无法带来改变生活的改进。相比之下,拥有 1,000-4000 个核心的现代显卡可以将视频渲染项目从 2 小时缩短到几分钟。
即使 14 个 CPU 核心同时工作,在相同的时间内也只能完成 7.537 个 GPU 的任务。