runAI 中分配的 GPU 和 GPU 配额有什么区别?
我是否需要在纯文本和控制台服务器上使用 GPU?没有 GPU,就像没有 iGPU 和 dGPU 一样。我将使用 SSH,所以我不需要显示。
我使用的是 Linux,但操作系统不应该影响结果
我的集群中有三个 Nvidia GPU,我的集群中运行着很多 pod。如何找到这些 pod 中的哪一个调度 GPU 以及它们调度了多少 GPU?
我使用此链接在我的集群中为 Nvidia GPU 启用 GPU 计划。 https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/
谢谢
我有一台 HP Proliant DL580 G7 服务器,从 2015 年开始更新了 P65 BIOS(我认为这是最新的 BIOS)。
我在其中安装了 PCIe 扩展板并安装了 4 个 Tesla K80 GPU。使用 10 针到 8 针电缆将它们连接到 PSU 板。当我打开服务器时,我看到 GPU 上的绿灯亮起。在 BIOS 中,我将 PCIe 设置为使用 Gen 2.0 设置。
安装了 Windows Server 2012 R2(带有更新),并从 Web 安装了所有驱动程序。我在设备管理器中没有任何缺少驱动程序的设备。但是,Tesla K80 GPU 不会出现在设备管理器中。
当我尝试安装官方 NVidia 驱动程序时,我收到“未找到兼容硬件”的错误消息。
我还移除了新安装的 PCIe 扩展板,以防它(不知何故)与主板不兼容,但这也无济于事。
我究竟做错了什么?
更新 1:我使用企业许可证安装了 VMWare ESXi,以查看 Nvidia 设备是否出现在那里,以便我可以使用直通并在 VM 中使用 GPU,但 Nvidia 设备没有出现在该列表中。
我安装了 Ubuntu 20.04,因为与其他 Linux 发行版相比,它具有最好的硬件检测,但它无法加载 GUI。Ubuntu 没有被列为 DL580 G7 的官方支持的操作系统之一,因此我转向下一个选项。
我安装了 RHEL 6.10,因为它是受支持的操作系统之一,当我执行“lspci”时,我没有看到任何 Nvidia 设备。
动机:
首先,即使我有一些计算机科学、软件开发和服务器 Linux 管理方面的知识,我也从未研究过服务器硬件,而且我完全是一个“新手”。对不起,如果这个问题对你们大多数人来说是微不足道的。
我正在开发一个具有非常密集(单点)计算需求的软件,为了达到所需的 TFlops,我选择了 OpenCL (2.1) 框架并在高端消费 AMD 显卡上执行大部分计算,主要使用 CPU驱动 GPU(Linux 操作系统)。我现在希望通过多台机器来扩展它。
看看如何组织这些机器,很快就发现标准(消费)ATX 塔并不理想:每个品牌都有自己的机箱形状,它们基本上不能在 19 英寸机箱中轻松方便地堆叠,具有良好的冷却气流、共享APC、管理线缆等。
带着这个目标,我开始寻找一个带有服务器的机柜,并发现:
- 为 Instinct/Tesla 等 HPC 设计的 GPU 的成本比消费级 GPU 高出一个数量级,主要是为了带来双浮点,这在消费级设备上是“慢”的(因为它们可以以这个价格卖给企业)。
- 即使使用这些 GPU,也需要 PCI-Express 垫片
- 支持 GPU 的服务器最多只能支持 2 个插槽的显卡(当前的高端消费 GPU 通常是 3 个插槽)。
- 我发现 ATX 3U 或 4U 机箱专为 19" 机柜设计。但是,嘿!安装其中一个使用消费类硬件将排除 ECC、多个 APC 等。
问题:
购买旨在托管 1 个或 2 个消费级 GPU 的服务器需要考虑什么?
我已经花了很多时间在网上寻找,但无法对这个问题有一个基本的了解,例如,以下是我想到的一些想法:
- 这是个好主意,甚至可能吗?一些文本(网页)抱怨难以使这些系统协同工作、不兼容、驱动程序问题等。
- 2U-3U服务器机箱能装3槽显卡吗?还是两个?
- 一些服务器(例如 Gigabyte Gxxx)是专门为带有 GPU 的 HPC 设计的,与标准(例如)HPE Proliant、IBM .. 服务器相比,这真的会带来什么不同吗?
- 大多数服务器是否支持消费级 GPU 卡所需的 PCI-express v4 x16?
- 服务器机箱中的气流是否与消费级 GPU 卡兼容(通常底部 3 个通风口)
- 电源连接有问题吗?
我在 AWS 中配置了一个带有 GPU 的 Kubernetes 集群,其中一个步骤是配置节点以默认启用 Nvidia 运行时。
因此,当我配置集群自动缩放器时,集群成功扩展,但新节点仍需要配置为使用 Nvidia 作为默认运行时。
我的目标是自动配置这一步,我想知道 Kubernetes 是否有办法做到这一点,比如在实例组中指定要在启动时执行的命令。(就像在 GCP 中您可以定义启动脚本或在 AWS 中称为用于启动脚本的用户数据一样)。
谢谢!
最新版本的 docker(或任何版本的 nvidia-docker)允许从 docker 容器中直接(?)访问主机 GPU,并可以完全访问 CUDA API。这在部署复杂的机器学习推理服务器时非常方便。
但是,据我所知,目前仅支持 Linux 主机。
为什么微软和苹果不能加强他们的游戏并提供相同水平的支持?也就是说,在 Linux 上使用了什么技巧,这在其他操作系统中显然难以模仿?