Altair Grid Engine和HPC不斷變化的面貌

分析和人工智能已成為各行各業的競爭武器。Gartner的2019年CIO調查發現,截至2019年,已有37%的組織在數據中心實施了AI-與2015年相比增加了270%,其中預測分析是AI增長最快的應用領域。[i] MMC Ventures報告稱,到2021年,三分之二的公司將採用新的AI計劃。[ii] 

這些新工作負載的基礎架構要求與HPC極為相似。無論是在本地還是在雲中,都需要具有多核CPU,快速互連和高性能存儲子系統的群集主機。像他們的HPC同事一樣,數據科學家也擔心上市時間以及是否具有足夠的計算和數據處理能力來構建高質量的預測模型。而且,HPC和數據科學應用程序都越來越容器化,分佈化,並且通常依賴於GPU。鑑於這些相似之處和提高使用高峰使用偏移量效率的機會,只有合併HPC,Analytic和AI環境才有意義。

在本文中,我將討論用於分析和AI工作負載的並行環境如何發展,並介紹支持它們的不同策略。我還將解釋為什麼Altair Grid Engine是需要同時運行傳統HPC和數據科學工作負載的用戶的絕佳選擇。

分析應用領域的巨變

在HPC迅速發展的同時,分析和數據科學工具的發展甚至更快。領先的商業工具已將市場份額穩定地轉移給了開源軟件。諸如Python,R和TensorFlow之類的工具和框架取得了爆炸性的增長。根據2019年對數據科學家的一項調查,近三分之二的數據科學家使用基於Python的框架,近50%的人使用R語言工具。[iii]

多種並行執行環境

更複雜的是,工具的數量不會很快合併。僅Python和R生態系統中就有數百種庫和工具。其中包括多個並行執行解決方案,例如Dask,Horovod,IPython.parallel(ipyparallel)等。儘管某些並行計算解決方案比其他一些更受歡迎,但是Python用戶可以從數十種潛在的解決方案中進行選擇-請參見此處列表

一些人認為分佈式計算僅對諸如模型訓練之類的計算密集型應用程序至關重要,但是並行執行在機器學習管道的所有階段都是必不可少的。示例包括數據攝取,流傳輸,數據處理/ ETL,強化學習,模型驗證和模型服務。為進一步應對多樣性挑戰,數據科學家很少使用單一工具或框架。在最近對數據科學家的調查中,普通數據科學家報告使用多達七種不同的分析工具來完成工作。[iv]

如何適應這些現代的工作量?

不幸的是,沒有單一的解決方案可以支持所有這些工作負載。一些工具與Kubernetes集成,但是Kubernetes不適合運行許多HPC工作負載。它缺少HPC用戶理所當然的功能,例如高吞吐量陣列作業,交互式作業,並行作業以及各種其他功能。同樣,Kubernetes要求將工作負載進行容器化並適應Kubernetes,但是大多數環境運行混合的應用程序,包括虛擬化工作負載和非容器化工作負載。

一些開源工具提供了自己的內置調度和分佈式計算工具,這些工具具有負載平衡,相似性,反相似性和打包等功能。儘管此方法可能在某些環境下可行,但用戶應謹慎使用特定於工具的解決方案。該路徑可能導致昂貴的孤立基礎架構,成本低效以及需要支持多個分佈式資源管理器的情況。

Horovod和Dask等項目為並行化提供了一種更加靈活和可移植的方法。他們提供自己的API時,還可以插入流行的HPC工作負載管理器(例如Altair Grid Engine),從而實現HPC和機器學習工作負載之間的無縫資源共享。Horovod通過利用MPI(大多數HPC用戶已經熟悉的環境)來實現大多數深度學習框架的並行執行。同樣,儘管Dask提供了Python的本機Dask.distributed庫,但它也通過其dask-job隊列dask-drmaa模塊與流行的HPC工作負載管理器接口

Altair Grid Engine的案例

對於運行分析和AI工作負載的HPC環境,Altair Grid Engine是一個很好的選擇。它是靈活的,可配置的,並具有對並行執行環境的豐富支持。用戶通常可以通過基於腳本的簡單集成使分佈式應用程序適應Altair Grid Engine。

鑑於其開源的傳統,Altair Grid Engine已經支持各種分析和機器學習工作負載。它還提供了豐富的容器管理,GPU調度和混合雲功能,這些功能對於現代應用程序很重要。

arrow
arrow

    Altair Taiwan 發表在 痞客邦 留言(0) 人氣()