前一陣子,微軟推出了 Windows 8 的 Developer Preview 版本,讓大家可以體驗一下 Windows 8 長什麼樣子,而當時 Heresy 也稍微玩過了~(參考《以平板、觸控為導向的 Windows 8》)
而實際上,差不多同一時間,微軟也放出了他的新一代的程式開發環境、Visual Studio 11 的開發者預覽版、讓大家可以下載試用了~他的下載連結,可以直接到微軟的官方下載網頁找到 ISO 的下載:Microsoft® Visual Studio® 11 Developer Preview。
如果想知道這一代新的 Visual Studio 加入了哪些新功能的話,也可以到 MSDN 的官網上,看看他的新功能列表~
基本上,由於 Heresy 自己現在只有在寫 C++ 的程式,所以主要也就只看這部份了~(What’s New for Visual C++ in Visual Studio 11 Developer Preview)
首先,在 Visual Studio 2010 的時候,VC++ 就已經引進了部分的 C++11 的功能(就是之前的 C++0x)了~而到了 VC++11,則是再做了一些補強,不過看來主要重心應該是放在新的 STL 函式庫的擴充上(例如加入了 thread、filesystem、atomic 等等)(看來 Boost C++ Libraries 裡面有不少可以丟掉了 XD),core language 的支援部分,似乎沒有新增多少功能(似乎只有加入 SCARY iterators、Stateless lambdas、Scoped enumerations)。
再來,就是這一版的 VC++ 看來對於平行化的部分也加了不少功能;除了家前 2010 的 Parallel Patterns Library 外,這一版的 VC++ 編譯器又加入了 auto-vectorizer 和 auto-parallelizer 的功能。
其中,Auto-vectorizer 基本上是編譯器自動會去分析程式的迴圈,讓編譯出來的程式可以透過 CPU 的 SIMD 指令集來進行加速(應該就類似 Intel ispc 的功能);而 Auto-parallelizer 則類似 OpenMP、要由程式開發者來決定要迴圈做平行化、讓編譯出來的程式可以在多核心/多處理器的系統上,做平行計算來最佳化了~(雖然他是說要透過 #pragma 賴做控制,但是 Heresy 去找不到他有說明要怎麼控制?唯一找到可能是的,是在專案屬性的「C/C++」、「Code Generation」裡的「Enable Parallel Code Generation」;按照編譯參數的說明,指令似乎是「#pragma loop(hint_parallel[(n)])」,但是真要用還是不知道該怎麼用?好不容易玩到可以編譯過了,但是卻又沒辦法正確 link library…)
此外,更重要的是,VC++11 也加入了之前介紹過、可以簡單地讓程式在 GPU 上進行大量平行化計算的 C++ AMP!如此一來,也可以更簡單地寫出 GPGPU 的程式了~(不過可能是因為 Heresy 是在 Windows 8 預覽版上跑、DirectX 10 有問題,總覺得寫出來的程式沒辦法在 GPU 上跑…)
而對應平行化程式的開發,VC++11 也加入了新的「Parallel Watch」的功能,可以方便在平行計算時,同時監看多個 thread 裡的變數;而為了 C++ AMP,更加入了 GPU Thread debugger 的功能~但是比較可惜的是,這些功能似乎不是對所有的平行化程式開發方法都有用的…(Heresy 想用 OpenMP 玩,結果 Parallel Watch 完全沒有用)(個人覺得最可惜的是,PPL 和 C++AMP 都不是標準,不能跨平台 orz)
在 IDE 環境的部分,Visual Studio 11 除了加強程式碼的 highlight(這一版的 function 參數會變斜體字耶~不過預設好像沒把 function hightlight)和自動完成等功能外,也把之前官方擴展套件、Productivity Power Tools 的部分功能,直接整合到 Visual Studio 11 裡了~
當然,其他還有不少新功能,但是實際上由於 Heresy 根本不覺得自己有把 2010、或是任何一版 Visual Studio 的功能徹底搞懂過,所以…這邊就只講到這了~其他有興趣的,就自己去看官方的說明吧。
而在效率上,以目前的預覽版來說,在大型方案(Solution)開啟的速度上,感覺似乎是比 Visual Studio 2010 稍微慢了些;但是在開啟完後,裡面的操作(例如「Go to Definition」)的速度,感覺則是比 Visual Studio 2010 快了不少~不會像 Heresy 在 2010 的時候,一個操作甚至得等上 30 秒…在效率上來說,應該還算是有點有進步吧~
不過,由於目前的 Visual Studio 11 還是開發者預覽版,所以在 Heresy 這邊也不可能真的拿來實用,現在也只是先玩看看而已,之後就等他的正式版推出了再說吧~
[…] 而雖然在微軟推出新版的 VisualStudio 2012 的時候,就已經把 Productivity Power Tools 的部分功能,直接整合到 Visual Studio 2012 裡了(參考),但是實際上,還是有部分的功能,是沒有整合進去的。 […]
讚讚
[…] 2012 版、內部編號則是 11.0(官網)。而 Heresy 在之前「開發者預覽版」、Beta 版、以及 Release Candidate […]
讚讚
[…] 的 Developer Preview 版本,當時 Heresy 也有裝起來玩過,相關的介紹可以參考《Visual Studio 11 開發者預覽版下載》這篇。而現在,微軟則是進一步推出正接近正式版的 Beta 版了~而在 MSDN […]
讚讚
[…] nVIDIA CUDA、跨平台/跨硬體的 OpenCL、微軟的 DirectX 的 DirectCompute、以及將在 VIsualStudio 11 推出的 C++ AMP…基本上,這些各式各樣新標準的出現,都不斷底降低 GPGPU […]
讚讚
[…] threading,而不必再靠 boost::thread 或 pthread 了~(不過,VC 要到下一代的 VC11 才支援就是了) 幫忙推廣一下吧!EmailMorePrintDiggLike this:LikeBe the first to like […]
讚讚
Visual Studio 11 Developer Preview: Quick Launch
http://blogs.msdn.com/b/visualstudio/archive/2011/09/27/visual-studio-11-developer-preview-quick-launch.aspx
讚讚