HOW TO:偵錯遠端叢集應用程式

這個主題適用於:

版本

Visual Basic

C#

F#

C++

Web Developer

Express

標題不適用於 標題不適用於 標題不適用於 標題不適用於 標題不適用於

Pro、Premium 和 Ultimate

標題不適用於 標題適用於 標題適用於 標題適用於 標題不適用於

Visual Studio 現已支援 MPI 叢集偵錯。 這個功能可讓您對平行程式進行偵錯,所謂的平行程式就是透過 Message Passing Interface (MPI) 溝通的電腦叢集上所執行的程式。

MPI 偵錯的必要條件:

  • 叢集中的每一台電腦上都必須安裝和設定 MPI MPI 隨附於 Windows Server 2003 Compute Cluster Edition 中。 您也可在其中取得其他 MPI 的實作。

  • MPIShim.exe 必須安裝在叢集中的每一台電腦上。 MPIShim 會隨附在 Visual Studio 2005,並且與遠端偵錯元件一起安裝以啟用平行偵錯。 MPIShim 能夠安裝在任何目錄中,但必須位於叢集中每一台電腦上的相同目錄中。 其中一種可能的路徑為:

    c:\windows\system32\mpishim

    此外,也可以安裝在偵錯目標的本機目錄中。

  • 遠端偵錯監視 (Remote Debugging Monitor,msvsmon) 必須安裝在叢集中的每一台電腦上。 請參閱 HOW TO:執行遠端偵錯監視

  • Visual Studio 主機 (用以進行偵錯的機器) 必須使用具有適當特殊權限的帳戶進行設定,以偵錯叢集電腦 (請參閱遠端偵錯權限)。

若要準備 MPI 偵錯的 Visual Studio 專案

  1. 請在 Visual Studio 中開啟包含平行應用程式的方案。

  2. 在 [方案總管] 中以滑鼠右鍵按一下專案,然後從捷徑功能表選擇 [屬性]。

  3. 在 [<專案> 屬性] 對話方塊中,選取 [偵錯]。

  4. 在 [要啟動的偵錯工具 清單方塊中,選擇 [MPI 叢集偵錯]。

  5. 在 [MPIRun 命令] 方塊中,輸入叢集電腦上的 MPIRun 或 MPIExec 位置 (用以啟動 MPI 應用程式)。 例如:

    c:\windows\system32\mpiexec.exe

  6. 在 [MPIRun 引數] 方塊中,輸入您要傳遞至 MPIRun 或 MPIExec 的任何引數。 例如:

    -np 2

  7. 在 [MPIRun 工作目錄] 方塊中,輸入 MPIRun 或 MPIExec 的工作目錄。 例如:

    c:\temp

  8. 在 [應用程式命令] 方塊中,輸入 MPI 將在每一個叢集電腦執行上執行的應用程式路徑 (也就是您已在 Visual Studio 中開啟其專案的應用程式)。 這個路徑可以是叢集中每一台電腦上的共用路徑或本機路徑。 如果是本機路徑,每一台電腦上都必須是相同的本機路徑。 例如:

    $(TargetPath)

  9. 在 [應用程式引數] 方塊中,輸入您要傳遞至應用程式的任何引數。

  10. 在 [MPIShim 位置] 方塊中,輸入 MPIShim.exe 的路徑。 例如:

    c:\windows\system32\mpishim

  11. 您也可以將 [偵錯工具類型] 清單方塊設定為 [自動] (預設值),偵錯工具將為您正在執行的程式碼選擇正確的偵錯工具類型。 或者,您也可以為應用程式選擇正確的類型 ([機器碼]、[Managed 程式碼] 或 [混合程式碼])。

  12. 關閉 [<專案> 屬性] 對話方塊。

  13. 從 [工具] 功能表選擇 [選項]。

  14. 在 [選項] 對話方塊中選擇 [一般] 分類,然後選擇 [偵錯] 節點。

  15. 找出 [某個處理序中斷時,中斷其他所有的處理序] 核取方塊。 依照想要在偵錯期間進行的行為,選取或清除該核取方塊 (因為這是 [工具] 選項,所以這個設定仍會對所有專案生效,直至您變更為止)。如需詳細資訊,請參閱 HOW TO:中斷執行

  16. 按一下 [確定] 關閉 [選項] 對話方塊。

若要偵錯平行應用程式

  1. 在 [偵錯] 功能表上按一下 [開始] 以開始偵錯。

    如果您已正確設定專案,應用程式會開始在叢集中的所有電腦上執行。

    如果您已在程式碼中設定中斷點,執行會在第一個中斷點處中斷。

  2. 請在 [偵錯] 功能表中按一下 [視窗],然後按一下 [處理序]。

    [處理序] 視窗。 您可以使用這個視窗設定現用的處理序。 若是只要逐步執行單一現用的處理序,請使用本視窗上方的逐步執行按鈕。

    偵錯平行應用程式時,可以使用資料提示方塊取得變數值。 您在資料提示方塊中看見的變數值,會以 [處理序] 視窗中目前設定之現用的處理序為依據。

請參閱

工作

HOW TO:使用處理序視窗

概念

偵錯工具安全性

其他資源

遠端偵錯安裝