使用集成GPU解决深度学习的算力难题
2019年09月05日 由 KING 发表
489244
0
一直以来,如何用最低的成本来使人工智能(AI)、机器学习(ML)和深度学习(DL)应用程序以最高的性能运行都是一个难题。有很多基于云端的方法看起来是可行的,但是对于配置有内部基础设施或混合结构体系的负载任务它们又无能为力,就算是大型企业的许多数据科学家和专业的IT人员在开始他们的AI、ML、DL计划时,这个难题也让他们感到困惑不已。
这难题已经存在很长一段时间了,而且一直无法解决。但是现在我们可以通过使用集成图形处理单元(GPU)运行ML、DL工作负载来解决这个难题。在过去的几年当中,这项技术一步一步走向成熟,直到今天终于展示在公众面前。但是想要在一个企业环境中运行大规模的ML和DL应用程序仍然不是一件简单的事情,所以科学家们选择把图形进行集成。
每一个数据科学家都知道,ML和DL预测模型的训练和推理是密集型的计算。使用硬件加速器(如GPU)是提供所需计算能力的关键,以便这些模型能够在合理的时间内做出预测。但是,在企业环境中使用GPU依然具有许多挑战性,例如:
1.它们需要一个复杂的软件,用来跨越可能难以安装和维护的操作系统、中间代码和应用程序库。
2.GPU不易共享。当它们被共享时,它们的利用效率会非常低,这很难准确地预测GPU和其他基础设施的计算能力。
3.在运行单个负载任务时,ML、DL应用程序对GPU的利用率会发生显著变化。这意味着即使GPU通过集成进行共享,它们也不会被充分利用,除非在应用程序运行时可以自由切换GPU!为了解决这些挑战,我们需要大规模的集成,比如Kubernetes,它支持某种形式的GPU资源共享。然而,这种资源共享并不能完全解决上述问题。
现在有了一种新的解决方案,就是利用bluedata平台进行集成。但是需要新的功能,那就是根据需要,弹性地提供GPU资源,使集成化的ML、DL应用程序可以通过访问一个或多个GPU快速、轻松地运行。新的集成化环境可以按需配置,在不需要时取消配置(释放GPU)。这允许IT管理员监控使用情况,并在执行GPU特定代码时重新分配GPU。
现在,企业能够根据自己的特定需求配置和调整平台,以GPU为基础运行分布式ML、DL应用程序,同时将成本降至最低并确保性能达到最高。他们可以使用来自公共云提供商或本地数据中心的基础设施资源来设置这些环境,也可以在容器化计算节点之间动态地调配GPU资源,从而使运行的成本和时间达到最小化。