WSL现在广泛支持GPU加速机器学习工作负载

微软宣布WSL(Windows Subsystem for Linux)中的GPU加速机器学习训练支持,已经在Windows 11以及Windows 10 21H2正式提供。微软在2020年中的时候,首次发布了这项新功能,经过了一年,微软在过程中与AMD、英特尔和Nvidia中的科学家和工程师合作,使这项功能更为完善。

该功能的进展之一,便是Nvidia CUDA已经支持WSL中现有的机器学习工作流程。微软提到,从公开预览版发布以来,他们的更新重点便摆在,要确保WSL能够完全支持专业机器学习工作负载,这包括数据科学家和工程师,在日常中会使用的Linux工具、函数库和框架。Nvidia CUDA便是其中之一。

过去一年微软和Nvidia合作,逐步改善在WSL的CUDA开发体验,通过优化CUDA驱动程序,CUDA程序在WSL能以最佳性能运行,Nvidia提到,不少开发者关注CUDA程序在WSL环境,所需要付出的额外执行成本。

目前从Blender(下图)基准来看,WSL存在的额外成本小于1%,另外,在Rodinia和GenomeWorks等基准,在WSL环境的执行速度,已经比起Nvidia CUDA刚开始支持WSL时快上不少,甚至在不少情况已经接近原生环境。

另外,现在开发者也可以使用WSL中的DirectML,来跨GPU供应商进行机器学习训练。DirectML是DirectX家族中与硬件无关的机器学习函数库,支持在任何支持DirectX 12的GPU上,执行GPU加速的机器学习训练和推理。

借由将DirectML作为后端与TensorFlow搭配使用,能够让更多用户在Windows上开发,以GPU加速机器学习训练的用例。而微软在和AMD、英特尔和Nvidia密切合作之后,现在TensorFlow-DirectML已经正式发布,能够支持不同机器学习应用领域的工作负载。

微软提到,要使用这项最新的功能,首先需要根据系统中的GPU,安装最新来自AMD、英特尔和Nvidia的驱动程序,并且依照需要在WSL中配置Nvidia CUDA或是TensorFlow-DirectML。

在WSL中支持GPU运算功能,目前已经全面在Windows 11中提供,而Windows 10则需要利用Windows Insiders Program中的预览频道,取得21H2版本才有支持。