自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Visual Studio 2010并行編程及調(diào)試診斷功能詳解

開發(fā) 后端
Visual Studio 2010大幅度的提升了并行調(diào)試的用戶體驗(yàn)。其中大部分的功能在Visual Studio 2008中也可通過插件獲得。這里我將給大家介紹在Visual Studio 2008以及即將發(fā)布的Visual Studio2010中提供的并行編程、調(diào)試以及診斷等功能。

Visual Studio2010 Beta 1發(fā)布后,開發(fā)人員從其新特性,新功能中得到了不少的幫助。這里將介紹Visual Studio 2010并行編程方面的改進(jìn),較Visual Studio 2008有了極大的提高。

每當(dāng)出現(xiàn)新的編程模型時(shí),開發(fā)人員便需要一個(gè)用來學(xué)習(xí)、編寫、調(diào)試以及優(yōu)化代碼的健壯的工具,以便能更好的利用該模型。由于并行計(jì)算在公式中添加了新的變量,對于工具的需求便更為突出。

Visual Studio 2010大幅度的提升了并行調(diào)試的用戶體驗(yàn)。其中大部分的功能在Visual Studio 2008中也可通過插件獲得。這里我將給大家介紹在Visual Studio 2008以及即將發(fā)布的Visual Studio2010并行編程、調(diào)試以及診斷等功能。

調(diào)試

雖然Visual Studio 2005有一個(gè)內(nèi)建的MPI程序的簡單調(diào)試器,但并未提供完整的“F5”體驗(yàn)。在新的Visual Studio 2008 插件(同時(shí)也將集成到Visual Studio 2010中)中,您只需選擇一個(gè)集群頭節(jié)點(diǎn)以及您需要多少核,然后按F5就可以對您的MPI程序進(jìn)行調(diào)試了。

調(diào)試MPI程序

除了調(diào)試團(tuán)隊(duì)所作的很棒的核心工作以外,并行調(diào)試技術(shù)的領(lǐng)先供應(yīng)商Allinea還將他們的環(huán)境導(dǎo)入到了Visual Studio中。Allinea的插件提供了針對集成的MPI程序的調(diào)試,包括基于排名的上下文切換、組單步調(diào)試、暫停及運(yùn)行、并行棧視圖和迭合。下面是Allinea的MPI調(diào)試環(huán)境:

Allinea的MPI調(diào)試環(huán)境

面向服務(wù)的架構(gòu)調(diào)試

Windows HPC Server 2008的一個(gè)重要的新的編程模型是集群系統(tǒng)面向服務(wù)體系架構(gòu) (Cluster SOA),它是基于WCF構(gòu)建的,并包含由HPC的調(diào)度器和代理節(jié)點(diǎn)提供的高級調(diào)度和負(fù)載平衡功能。目前為止,對面向服務(wù)架構(gòu)的集群系統(tǒng)的調(diào)試還僅僅限于基本的WCF/.Net方式的調(diào)試,并無集群的集成。在Visual Studio 2010中,一個(gè)集群面向服務(wù)架構(gòu)插件將提供SOA設(shè)置標(biāo)簽,在這里您可以選擇頭節(jié)點(diǎn)、調(diào)試節(jié)點(diǎn)和服務(wù)、部署運(yùn)行時(shí)類庫并自動進(jìn)行清理?,F(xiàn)在來看一下Visual Studio 2010中新的SOA調(diào)試器吧:

SOA調(diào)試器

剖析 (Profiling)

Windows Server HPC 1.0中沒有集成針對MPI程序的剖析功能。在Windows HPC Server 2008中,XPerf等工具提供了MPI的剖析以及系統(tǒng)級別的剖析和故障排查的功能。但即使是XPerf也對MPI消息流量等細(xì)節(jié)所知甚少,目前為止也沒有消息流量的瀏覽器。自那以后,消息流量瀏覽器Vampir被導(dǎo)入到Windows并完整地集成在事件跟蹤日志(ETW)中。Vampir提供了對消息順序和延遲進(jìn)行故障排查的功能。還有更多的開源HPC工具,比如JumpShot是一個(gè)免費(fèi)的基于Java的MPI消息瀏覽器。

在很多時(shí)候,VS內(nèi)置的剖析器就能提供性能問題的分析。在Visual Studio 2010中,這一功能與HPC工作調(diào)度器進(jìn)行了完整的集成,用來分析一個(gè)特定的MPI排名或節(jié)點(diǎn)的性能。Visual Studio MPI 剖析功能提供了行級別的剖析信息,包括與源代碼視圖并排的執(zhí)行過程中的溫度視圖:

溫度視圖

剖析器還顯示多個(gè)運(yùn)行或版本的結(jié)果比較報(bào)告,這樣您就可以輕松地了解您的修改所帶來的效果。

修改后的效果

MPI 運(yùn)行時(shí)分析

除了調(diào)試器和剖析器之外,有時(shí)您還需要專門的分析工具來幫助分析大規(guī)模并行程序的復(fù)雜度。位于斯圖加特的HLRS/ZIH是德國的一個(gè)在該領(lǐng)域領(lǐng)先的機(jī)構(gòu),將他們自己的MPI分析工具M(jìn)armot導(dǎo)入到了Visual Studio 2008。Marmot可以用來檢查MPI調(diào)用的輸入?yún)?shù)的合法性、檢測無法再生性、死鎖和對資源的不正確管理。下面是運(yùn)行中的Marmot:

運(yùn)行中的Marmot

從Printf到集成的剖析和調(diào)試

不久前我們還在printf風(fēng)格的調(diào)試世界里,“藝術(shù)級”的調(diào)試和剖析工具將此往前推進(jìn)了一大步。

在Visual Studio里,您可以調(diào)試和剖析高性能MPI程序以及擁有成百到上千個(gè)核的集群SOA應(yīng)用程序。您可以使用XPerf和事件跟蹤日志來獲取應(yīng)用程序在整個(gè)系統(tǒng)環(huán)境中的全局視圖。Visual Studio 2010里新增的多核剖析和調(diào)試工具也可以有效地用于集群的節(jié)點(diǎn)級別分析。

Visual Studio正成為越來越豐富和有效的編寫各種并行程序的開發(fā)環(huán)境。訪問Windows HPC Server 開發(fā)人員資源中心您能找到更多關(guān)于Windows HPC的開發(fā)模型。在CodePlex的Parallel Dwarfs站點(diǎn)上您能找到許多使用各種Visual Studio 2010并行編程模型的示例。

【編輯推薦】

  1. Visual Studio 2010響應(yīng)Ribbon控件消息
  2. 微軟稱C++將得到Visual Studio 2010更多支持
  3. Visual Studio 2010新特性:動態(tài)語言功能
  4. 微軟對Visual Studio 2010的Bug熟視無睹?
  5. Visual Studio 2010 Beta1試用手記
責(zé)任編輯:彭凡 來源: 博客堂
相關(guān)推薦

2009-04-23 14:05:28

Visual Stud歷史調(diào)試功能

2009-11-13 14:59:12

Visual Stud

2009-11-19 10:55:33

Visual Stud

2010-07-12 16:40:39

Visual Stud

2010-04-01 15:10:06

Visual Stud

2010-12-14 09:15:50

Visual Stud

2009-11-19 09:59:47

Visual Stud

2010-04-12 08:43:45

Visual Stud

2013-05-29 14:54:49

Visual Stud

2009-10-27 09:12:50

Visual Stud

2009-12-01 19:28:55

Visual Stud

2011-08-25 09:32:30

Visual Stud

2009-06-04 09:43:42

Visual StudVisual Stud

2009-11-05 10:29:14

Visual Stud

2009-10-22 09:47:33

Visual Stud

2011-03-08 10:18:18

Visual StudMongoDB

2010-03-11 14:37:47

Visual StudScrum

2010-07-27 09:40:01

敏捷Visual Stud

2010-07-29 09:41:23

Visual Stud

2010-04-08 15:14:59

Visual StudASP.NET 4.
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號