2016-03-22 126 views
3

我有一個Python代碼,需要在1000個並行計算的CSV上運行才能進行計算。一個CPU內核可以在8小時內完成每個CSV上的代碼運行。如何縮放Azure虛擬機內核

因此,我正在尋找一種使用Azure的方法。我想創建多個虛擬機,比如4個D5v2,每個虛擬機有16個內核,可以訪問運行在64核心機器上的Windows Server。

我試圖在同一個Cloud Service中創建這些虛擬機,並將它們放入相同的可用性集合中,該集合工作正常。當所有虛擬機運行並訪問其中任何一臺虛擬機時,我會看到所有其他虛擬機上的內核都分配給「其他角色」。

我的問題是:

1)是否有可能創建一個假想的VM進行4個虛擬機使用更多的內核?

2)如何手動將Cloud Service中的所有核心分配給一個特定的VM?

回答

2

1)是否可以創建4個虛擬機中的虛擬VM來使用更多內核?

不,你不能。

2)如何手動將Cloud Service中的所有核心分配給一個特定的VM?

你不能這樣做。您需要使用雲本地解決方案來擴展多個資源的流程。

+0

謝謝您的回覆!您是否知道有哪些其他雲解決方案可以在1)可能的情況下或者可以在64位內核中使用Windows Server? – Ilja

+0

是的,它不會在多臺計算機上分割一個應用程序。然而,在一個大的資源上使用資源可能會訣竅。否則,你需要將輸入分成小塊並在不同的計算機上運行 – Peter

3

您最好的解決方案是使用Azure Batch使用Batch您可以創建一個作業,並且它將運行在您指定的可運行的CPU數量上。

從批處理頭版

當您準備好運行工作採取分批開始爲你計算的虛擬機,安裝應用程序和升級數據池,正在運行的任務儘可能多的任務,你確定故障並重新排隊工作,並在工作完成時縮減池。您可以控制規模以滿足截止日期,管理成本,並以適合您的應用程序的規模運行。

+0

謝謝!將考慮Azure Batch。 – Ilja