[MetalKit]45-Using eGPUs with Metal 在 eGPU上使用 Metal

news/2024/10/30 13:32:57/

本系列文章是对 metalkit.org 上面MetalKit内容的全面翻译和学习.

MetalKit系统文章目录


对于那些像我一样需要原生 GPU 性能,却只有一个笔记本电脑,又不想再买一个台式机的人来说,解决方案似乎就是外置 GPU(eGPU)。但是 macOS 原来却并不支持 Nvidia 的 eGPU,只有一大堆 AMD 的 GPU 方案。

在寻找完美 GPU 的过程中,我找到了AMD Radeon RX Vega 64。它是目前的高端 GPU,在消费市场所有 GPU 中性能排行第二。Nvidia GPU 只在 TFLOPS 性能上比它领先一点。

teraflops (TFLOPS) 芯片能够每秒运行 10 亿次浮点运算。TFLOPS 是科学计算,机器学习及其他需要进行张量计算的工作中非常重要的性能。

AMD Radeon RX Vega 64 有 4096 个核心,能够提供 12 TFLOPS(单精度)计算能力,处于 Nvidia Geforce GTX 1080 ti 有 3584 个核心 (11 TFLOPS)和新的 Nvidia Geforce RTX 2080 ti 有 4352 个核心 (13 TFLOPS) 两者中间.

当然,eGPU 也能加速图形应用和游戏,能让你连接外置显示器和 VR 头显。要注意的是,eGPU 需要带有 Thunderbolt 3 接口的 Mac,且系统为macOS High Sierra 10.13.4 及以上。更多信息可以查看网页Use an external graphics processor with your Mac。

我直接去买了一个 Razer Core X 外置显卡盒,因为 Vega 64 推荐至少 600W 的电源功率,满足这个要求的盒子并不多。Sonnet eGFX更轻一些,但是却更贵。Razer Core X 的宽高和 15” Macbook Pro 一致:

此时 GPU 并没有用光全部 650W。Vega 64 实际只需要 295W。多余的功率,是为了超频后 GPU 用的,此外,还可以通过 Thunderbolt 3 给你的 Mac 充电。最后,没错,Vega 64 也几乎和显卡盒一样宽一样重,名符其实的怪兽!

只要你通过 Thunderbolt 3 把 eGPU 连接到 Mac 上,并启动显卡盒的电源,在菜单栏上就会看到新的 eGPU 图标:

在活动监视器中,如果你打开 GPU 历史视图,你会看到列出的所有 GPU -- 集成的,断开的,或外置的:

在系统信息应用中,在图形/显示下面,你也会看到所有的 GPU,以及一些基本信息:

如果你在游戏或需要 GPU 的应用上右键单击,显示简介,你会看到“优先使用外置 GPU”选项:

我安装了 Geekbench 4 就跑了一下基准测试。试用版允许你运行基准测试并在线储存结果,并且只允许你运行 OpenCL 测试。完整版则允许 Dropbox 集成,本地保存结果,还有运行 Metal 测试。

运行一个测试,几分钟后就会完成:

正如期望的那样,Vega 64 的 Metal 测试得分是最高的。下面是排列好的分数列表:
– Metal on Radeon RX Vega 64 – 137651
– OpenCL on Radeon RX Vega 64 – 135711
– Metal on Radeon Pro 450 - 41602
– OpenCL on Radeon Pro 450 - 41578
– Metal on Intel HD 530 – 21888
– OpenCL on Intel HD 530 – 20878
– OpenCL on quad-core CPU - 13867

下一步,就是在这些 GPU 上运行一些 Metal 代码了。在 playground 中添加下面的代码块:

import Metallet devices = MTLCopyAllDevices()for device in devices {print(device.name)print("Is device low power? \(device.isLowPower).")print("Is device external? \(device.isRemovable).")print("Maximum threads per group: \(device.maxThreadsPerThreadgroup).")print("Maximum buffer length: \(Float(device.maxBufferLength) / 1024 / 1024 / 1024) GB.")
}
复制代码

运行一下,看到一个简单的输出:

AMD Radeon RX Vega 64
Is device low power? false.
Is device external? true.
Maximum threads per group: MTLSize(width: 1024, height: 1024, depth: 1024).
Maximum buffer length: 4.5 GB.AMD Radeon Pro 450
Is device low power? false.
Is device external? false.
Maximum threads per group: MTLSize(width: 1024, height: 1024, depth: 1024).
Maximum buffer length: 1.5 GB.Intel(R) HD Graphics 530
Is device low power? true.
Is device external? false.
Maximum threads per group: MTLSize(width: 256, height: 256, depth: 256).
Maximum buffer length: 2.0 GB.
复制代码

这样,你就可以查看设备的更多属性和功能,比如可用内存,可编程采样位置支持,光栅顺序组支持等等。更多信息,请查看 MTLDevice 网页。

苹果提供了两个示例代码项目,来帮助你在渲染和计算管线中进行 GPU 管理:

  • Device Selection and Fallback for Graphics Rendering
  • Device Selection and Fallback for Compute Processing

下面是一些有用的网页资料,关于资源储存模式,关于多显示器和多 GPU,关于 GPU 带宽,关于添加/移除外置 GPU,等等:

  • Choosing a Resource Storage Mode in macOS
  • About Multi-GPU and Multi-Display Setups
  • About GPU Bandwidth
  • Handling External GPU Additions and Removals
  • Getting Different Types of GPUs
  • Getting the GPU that Drives a View’s Display

下次见!


http://www.ppmy.cn/news/325635.html

相关文章

一、MacBook Pro 使用eGPU-WTG篇,mac告别虚拟机

笔记本:MacBook Pro 18款13寸灰9R2 Windows To Go篇 硬件: 惠普S700 500G SSD 绿联移动硬盘盒2.5英寸Type-C 3.1 可拆线款 USB有线鼠标 1台win10 电脑 typeC转USB转接头 WTG思路:在移动硬盘里安装windows系统,refind也装在wi…

专业显卡深度学习_MacOS+AMD-eGPU打造深度学习环境 | 第2期

如果你准备入手苹果电脑,如果你还在N卡和A卡之间艰难抉择,如果你需要用苹果电脑研究深度学习,那么本文值得一读。最后给出的评测数据可以帮助你判断苹果电脑搭配外置显卡坞的性价比,以及决定是否在MacOS上运行深度学习程序。 1. 背景简介 在windows上经历过剪辑时蓝屏四次之…

egpu+mac+bootcamp

高级多显示器要求配上mac还要用windows加持这种组合,在经历了一番研究后决定上egpu。总的来说还是个比较风险的手法... 13macOS(2015 or later version) win10 家庭版 (on bootcamp)参考这篇文章极好的,原理也做到了由浅入深: https://egp…

MacBook外置显卡eGPU折腾笔记

MacBook外置显卡eGPU折腾笔记 硬件选购 当今市场上个人电脑的独立显卡,基本上能选的只有NVIDIA和AMD了,如果你想买外置显卡来打游戏的话,NVIDIA和AMD的都可以,但如果是像我一样准备用来做深度学习加速的,那最好还是选择NVIDIA了。 另外,如果要用来做深度学习加速,一定要…

在Ubuntu中使用雷电3外接显卡(eGPU)进行深度学习

sud种种很凑巧的因素,需要用这么一套设备做深度学习。 笔记本是联想yoga s730,两年前在某多多入手,显卡坞是技嘉gaming boxGTX1070,某鱼入手。 折腾了一上午,踩了一些坑,终于把这东西配置好了,下…

二、MacBook Pro 使用eGPU-连接eGpu篇,mac变身小台式机

接上篇文章,WTG做好以后,将要连接eGpu啦 硬件:蓝宝石RX590 8G D5超白金 OC 显卡坞:雷蛇 Core 战核X 每种显卡坞的操作可能不同,这里我的扩展坞是雷蛇的战核X,本文基于此硬件的实际操作。推荐个网站&#x…

关于DIY eGPU的使用配置心得

eGPU配置文件路径: V:\configstartup.bat 内容如下:(与其说是心得,不如说是自己配置后体验的效果,来翻译一下下面英文会给显卡带来什么样的表现) :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: …

LVS负载均衡集群-NAT模式

目录 前言一、企业群集应用概述1. 群集的含义1.1 群集的特点1.2 扩展服务器的方式 2. 群集的类型2.1 负载均衡群集(Load Balance Cluster)2.2 高可用群集(High Availability Cluster)2.3 高性能运算群集(High Performa…