四年磨一剑,从零开始打造出了开源GPU硬件

国外一名游戏开发人员和硬件爱好者Dylan Barrie花了四年时间,做出一块开源的完全定制 GPU——FuryGPU,理论上可以在 Windows 上运行旧版游戏软件。

有人能从零开始成功制造出一块完整的 GPU吗?

国外一名游戏开发人员和硬件爱好者Dylan Barrie做到了。他花了四年时间,做出一块开源的完全定制 GPU——FuryGPU,理论上可以在 Windows 上运行旧版游戏软件。

FuryGPU是 Barrie一个人的杰作,在过去 14 年的游戏行业职业生涯中,Barrie 主要专注于图形渲染的软件方面。不过,四年前他受到Ben Eater从头开始​​构建可编程 8 位计算机项目的启发后,开始利用其业余时间完成了这个极其复杂的硬件和软件项目。

Barrie说,从头开始创建图形卡的过程简直是地狱般的煎熬,但经过四年的不懈努力,他终于可以与大家分享他的心血,现在附加卡的设计工作已基本完成。FuryGPU是基于 Xilinx Zynq UltraScale+ FPGA 设计的"真正的硬件 GPU"。该卡使用定制的印刷电路板,通过一个 PCIe 插槽与主机连接。原型 PCIe 显卡目前能够在 Quake Timedemo 中实现约 44fps。

FuryGPU 可支持相当于 20 世纪 90 年代中期"高端"显卡的硬件功能,并通过配备DisplayPort 和 HDMI输出进行了现代化改造,为现代 Windows 版本提供完整的软件和驱动程序栈。

该图形处理器可以以实时、可玩的帧速率渲染那个年代的游戏。巴利公司最终将通过开源许可发布硬件原理图、软件和驱动程序。

硬件,从开发板到显卡

Barrie说因为他不知道 GPU 如何工作的 "实际细节",他决定从头开始制造图形处理器。由于对软件方面的 3D 渲染过程 "极为熟悉",Barrie 意识到创建 GPU 可能是一个虽然艰巨但可行的个人项目。

Barrie 在购买了一块装有 FPGA 的 Arty Z7 开发板并进行了一些初步开发和测试后,开始实现他从零开始构建 GPU 的梦想。

随后,Xilinx Kria 系统级模块(SoM)的问世推动了这一项目,该模块将价格低廉的 Zynq UltraScale+ FPGA 与大量的 DSP 单元、(相对)海量的 LUT 和 FF 以及特别令人感兴趣的硬核化 PCIe 内核结合在一起。

Barrie 是一个软件工程师,对于硬件开发来说,刚开始只能算是硬件小白。为此他花了 "无数个小时" 学习 FPGA 芯片如何工作,以及如何通过硬件描述、验证和实现语言 SystemVerilog 来构建芯片设计。不过Barrie却表示,设计 PCIe 图形卡的硬件是一项“艰巨的工作”,但还不是最痛苦的工作。

最初,FuryGPU设计的目标是将一个简单的旋转立方体演示放在一起,以展示 GPU 的工作原理。然而,随着项目的发展,以可玩帧率玩标志性的 PC 游戏《雷神之锤》开始成为新的目标。

Barrie 解释说,在准备好 Windows 驱动程序后,他编写了一个自定义图形 API 来与 GPU 通信,并创建了管理显示和音频信号的 Windows 内核驱动程序。FuryGPU 可以以每秒 60 帧的"稳定"速度渲染《雷神之锤》(1996 年发布的初代)。

这里的视频演示了Barrie 的自制GPU 的 Quake Timedemo 视频捕获,证明 FuryGPU 在大约一个月前的 720p 基准测试中可以达到 44fps。

FuryGPU Windows 驱动程序支持视频和音频输出(图片来源:Dylan Barrie - FuryGPU)

Barrie表示,他看到了一些明显的瓶颈,他将针对这些瓶颈进行优化工作,让 Quake“运行得更快”。

Barrie 表示,打算在某个时候将FuryGPU项目开源,包括整个堆栈(PCB原理图,所有HDL,Windows WDDM驱动程序,API运行时驱动程序)。

此外,FuryGPU 网站上有一篇专门介绍 GPU 纹理单元的文章,适合那些希望更深入了解该架构的人。

演示视频:https://www.youtube.com/watch?v=VJigQ2Rm-TQ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
开放源码的GPU计算能力可以推到一个新的水平BINGHAMTON,纽约–Binghamton大学的研究人员已经使用一个开源的图形处理器(GPU)的研究。宾汉姆顿大学计算机科学助理教授Timothy Miller Aaron Carpenter和研究生Philip Dexter,与合著者Jeff Bush,有Nyami,一个综合的图形处理器(GPU)的通用图形的特定工作负载的建筑模型。这标志着第一次的团队采取了一个开源GPU的设计和运行的一系列的实验,看看不同的硬件和软件配置会影响电路的性能。根据Miller的说法,其结果将有助于科学家们做出自己的GPU计算能力和推到一个新的水平。“作为一个研究人员,重要的是要有工具,实事求是地评估新的想法,可能会提高性能,能源效率,或其他处理器架构的挑战,”Miller说。虽然模拟器可以走捷径,一个实际的综合开源处理器不能偷工减料,所以我们可以说,任何实验结果得到特别可靠。”GPU已经存在了大约40年,通常发现在商业视频或图形卡在电脑或游戏机。专门的电路有计算能力,使图像更平滑,更充满活力的屏幕上。最近有一个运动,看看芯片是否可以应用到非图形计算,如算法处理大块数据。 “我们不一定在寻找结果的新颖性,所以我们想创建一个新的工具,然后显示它是如何使用的,”Carpenter说。我希望人们能更有效地在GPU上的实验,为爱好者和研究者,创造未来的GPU更高效的设计。”开源GPU用于他们的研究团队是宾厄姆顿的先河。虽然成千上万的GPU是每年生产的商业化,这是第一个可以修改的爱好者和研究者了解如何变化可能会影响主流芯片。布什,在公司的软件工程总监,是该论文的第一作者。“这是坏的开源社区,GPU厂商都决定保持他们的芯片规格的秘密。这阻止了开源开发人员编写可以利用该硬件的软件,“Miller说。Miller开始在2004个类似的项目,而布什开始工作的nyami 2010。”这使得其他研究者更容易进行他们自己的实验,因为他们不需要重新发明轮子.。随着“开放硬件”社区的贡献,我们可以把更多的创造性的想法,并产生一个越来越好的工具。调查结果的后果可能使处理器更容易为研究人员工作,并探讨不同的设计权衡。Dexter,Miller,Carpenter和布什已经走出了一条新的道路,可能会影响从太空旅行的一切发现心脏手术。“我有一个论文的研究思路列表我们可以探索利用nyuzi [芯片更名],专注于各种性能瓶颈。这个想法是为了寻找那些让nyuzi低效相比其他GPU和解决那些问题研究。我们也可以用nyuzi作为开展研究,不是针对GPU平台,能源效率和可靠性,”Miller说。本文《Nyami:一个综合的GPU通用建筑模型和图形的具体工作量”出现在对系统和软件的性能分析国际研讨会。http://www.binghamton.edu/mpr/news-releases/news-release.html?id=2362--------------------------------------------------------------------------------------------------------NyuziProcessorMicroarchitecture 该项目是一个专为高度并行和GPGPU应用程序设计的开源处理器。 它的灵感来自英特尔的Larrabee,虽然指令集和微架构有很大的不同。处理器运行在Verilog仿真和FPGA上。它是一种现代架构,具有集合关联L1和L2缓存,细粒度硬件多线程,流水线SIMD浮点和整数执行单元,并支持多个缓存一致性内核。它包括基于LLVM的C/C 编译器。GPU已经被证明对于具有大量内在并行性的应用程序是有用的,如图像处理和机器学习。 然而,GPU具有缺乏灵活性的高度约束的编程模型。 这个项目是一个混合架构,结合GPU架构概念,如宽SIMD和硬件多线程与通用指令集。 硬件实现的重点更多在于计算而不是图形,缺乏固定功能的图形硬件。 它能够作为协处理器或独立处理器操作。这已使用Nangate 45nm库合成。每个核心的估计:面积1.84 mm2,功率329 mW,最大频率671 Mhz。 标签:Nyuzi

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值