申请回电

支持

HP Z8 G4 和 ZBook Studio 在 Kaggle 竞赛中大显身手

2021 年 2 月 1 日

机器学习工程师

作为惠普 Z 系列数据科学全球大使,Qishen Ha 的内容由惠普赞助,且向他提供了惠普产品。

 

大家好,我是 Qishen Ha。我在 LINE Corp. 工作,是一名机器学习工程师,目前 Kaggle Grandmaster 世界排名第 11,主要研究图像分类、语义分割、对象监测等计算机视觉技术。

 

非常荣幸能成为惠普 Z 系列数据科学全球大使,也非常感谢惠普 Z 系列给予我这次机会,并为我提供了 HP Z8 G4 工作站和 ZBook Studio。这大大增加了我在 Kaggle 竞赛中的竞争力。

 

在上个月(2021 年 1 月)结束的 NFL 1st and Future - Impact Detection 竞赛中,我使用了 HP Z8 G4 工作站和 ZBook,最终我们的团队取得了第三名的好成绩。现在(2021 年 2 月),我正在用其参加另一场 Kaggle 竞赛:木薯叶疾病分类竞赛 (Cassava Leaf Disease Classification)。所以我想谈谈在 Kaggle 竞赛中实际使用 HP Z8 G4 工作站和 ZBook Studio 的感受。

配置介绍

首先,我将简要介绍一下惠普 Z 系列提供的 HP Z8 G4 工作站和 ZBook Studio 的具体配置。

 

HP Z8 G4 工作站:

  • 双 NVIDIA Quadro RTX 6000 GPU(2 个 24 GB)
  • 双英特尔至强 Gold 6254 CPU(2 个 18 核)
  • 内存 96 GB
  • 存储容量 2 TB

 

ZBook Studio:

  • NVIDIA Quadro RTX 5000 GPU (16 GB)
  • 英特尔酷睿 i9-10885H(8 核)
  • 内存 32 GB
  • 存储容量 2 TB

 

我的主要兴趣领域是计算机视觉,所以我非常看重工作站的 GPU 性能,其次是 CPU 性能。

 

GPU 性能的重要性无需赘述,但也许有人会低估计算机视觉任务对 CPU 性能的需求。在计算机视觉任务中,CPU 通常负责读取并预处理多个线程中的数据,然后将数据交给 GPU 进行训练。如果图像的分辨率很高,或者使用了多种增强方法,则将给 CPU 带来很大的压力。而一旦 CPU 对数据的读取和预处理速度慢于 GPU 的模型训练速度,那么 CPU 性能就会成为整个系统的瓶颈。我认为,工作站中每个 GPU 至少需要 8 个 CPU 核心,以免 CPU 性能成为瓶颈,而 1 个 GPU 和 16 个以上的 CPU 核心则是更为理想的组合。

 

在表格竞赛中,GPU 内存大小至关重要,因为在数据的特征工程中,通常需要将整个数据集加载到内存中。因此,在大规模的表格竞赛中,工作站通常需要数百 GB 的内存。然而,在计算机视觉中,对内存的要求并不高,每个 GPU 配备大约 24 GB 内存在大多数情况下就已经够用了。

 

至于笔记本电脑,有很长一段时间我都只把它们当做连接服务器(云实例等)的工具使用。由于笔记本电脑的性能通常与其尺寸和重量呈正比,因此功能强大的笔记本电脑必然又大又重。因此,使用轻量级笔记本电脑连接到服务器,同时只在服务器上调试代码和训练模型已经成为今天的主流方式。

 

但当我拿到 ZBook Studio 时,我惊呆了!它竟能在如此轻薄的机身下提供这般强大的性能——别忘了它还搭载了 Quadro RTX 5000 GPU (16 GB)。这意味着 ZBook Studio 不仅可以作为连接服务器或工作站的工具,甚至可以直接用于深度学习代码的调试。

我是如何使用 HP Z8 G4 工作站和 ZBook Studio 的

概括来说:我在我的 HP Z8 G4 工作站上安装了一个 Jupyter Notebook,然后通过 ZBook Studio 连接到这个平台。

 

Jupyter Notebook 是一个网络应用,可以让我轻松地通过浏览器逐个单元格编写和调试代码。作为业界知名应用,我相信很多机器学习工程师都使用过它,或者至少听说过。去年参加 Kaggle 竞赛时,在还没与惠普 Z 系列合作之前,我总是通过 Jupyter Notebook 在云实例上编写代码和训练模型。所以,当我收到惠普 Z 系列提供的 HP Z8 G4 工作站时,我做的第一件事就是给它配置一个 Jupyter Notebook。

 

连接到云实例中的 Jupyter Notebook 时,我需要使用公共网络,而连接到我的 HP Z8 G4 时,我只需要通过局域网即可轻松连接。因此,在家里搭建工作站的显著优势之一便显现了出来——不依赖网络环境,延迟非常低。从 vast.ai 租用实例时,我不知道我租用的实例到底在哪里。它可能在美国,可能在中国或欧洲,甚至可能在北极。通常情况下,除非实例是在日本,否则我在通过 Jupyter Notebook 连接到实例时,都会感受到明显的延迟。但是通过局域网连接到家里的工作站和直接在我的笔记本电脑上安装 Jupyter Notebook 几乎没有区别,丝毫感觉不到延迟。

 

至于我为什么不直接使用工作站,而是通过局域网连接,原因很简单:因为 Ubuntu 的 GUI 会占用一些 GPU 内存,通常是 300-500 MB。尽管数值并不大,但是一旦开始在 GPU 上训练模型,Ubuntu 的 GUI 就会变得非常迟缓,以致于我难以正常进行其他操作。因此,关闭 Ubuntu 的 GUI 并通过笔记本电脑连接工作站不仅解决了训练模型时的 GUI 延迟问题,而且还节省了数百 MB 的 GPU 内存。

 

在之前的工作流程中,如果我租用的云实例中 GPU 满负荷,我就无法调试新的实验代码。但有了 ZBook Studio,一切迎刃而解。它不仅拥有 16 GB 的 GPU,而且非常轻薄。现在,即使我的工作站 GPU 和实例已满负荷,我仍可以使用 ZBook Studio 调试新实验的代码。当代码能够在我的 ZBook Studio 上运行时,我会将其复制到工作站或实例中,并在当前实验完成后迅速开始下一个实验。这有效地提高了我的 GPU 利用率。

 

当然,我们也可以直接在 ZBook Studio 上训练模型,但我个人不推荐这样做,因为笔记本电脑的散热能力有限,长时间在高温下工作会损害电脑的使用寿命。

NVIDIA Quadro RTX 6000 的速度

在 Kaggle NFL 和木薯叶疾病分类竞赛中,我比较了 NVIDIA Quadro RTX 6000 和 NVIDIA V100 GPU 的速度。我一方面在 HP Z8 G4 工作站上使用 NVIDIA Quadro RTX 6000 运行实验,另一方面在 vast.ai 上使用 V100 进行相同的实验,然后比较两者的速度。使用的 CNN 架构是 EfficientNet 和 EfficientDet。得出的结论是,NVIDIA Quadro RTX 6000 的速度大约是 V100 的 90% ~ 100%,具体视 CNN 架构而略有不同。所以我对 HP Z8 G4 的 GPU 速度也很满意。

关于惠普 Z 系列数据科学软件堆栈

为了让用户在使用工作站或 ZBook 时能尽快上手,惠普 Z 系列团队可以为用户预先安装一套软件——惠普 Z 系列数据科学软件堆栈——其中包括 CUDA、RAPIDS、Tensorflow、Pytorch、Docker 等几十种数据科学家常用的软件。当然,用户也可以自行安装此类软件。

有疑问?
联系销售支持。 

不知道该怎么选
Z 系列工作站?

申请回电

 需要 Z 系列工作站方面的支持?

前往支持页面

免责声明

  1. 产品的Logo及位置可能与图片有所差异,不影响产品性能和功能,请以实物为准。

     

    产品图片仅供参考,因不同国家可能存在稍许差异,实际产品以销售为准。

     

    本文所载信息如有变更,恕不另行通知。惠普产品与服务的完整保修条款见此类产品和服务附带的正式保修声明。本文中的信息概不构成额外的保修条款。惠普对本文包含的技术或编辑方面的错误或遗漏概不负责。