源地址:http://www.th7.cn/system/win/201505/103966.shtmlhtml
http://wenku.baidu.com/link?url=zH7vwmWltWF5R-9YGUDq5oSszkoWDxknBJmZkFY4w6FzV1P55h5XClOCd6UoB3tYCYjYt0ee_qw6k4GevVI82jEGcS2CdgJmqutwQWoZqJ3c++
http://wenku.baidu.com/link?url=aDjwQPp3YH6ns0LKJI7MIGzlLJrRSYbZrT_dA7ry6KbsnT6FKHbgBsg1FA22haFmPUY6AhJvu6N-l7xuK2nLs9lDKoO5TQGiTJ45OdH9wfe編程
Win7和 VS2013 上使用
Intel 的TBB
1.軟件版本
Visual Studio 2013
TBB 4.3 Update 1 (tbb43_20141023oss_win.zip)
2.安裝 TBB
TBB,Thread Building Blocks,線程構建模塊,是Intel 公司開發的並行編程開發的工具。
TBB 能夠在 Windows,Linux 和 OSX 上運行,支持 Intel, Microsoft 和 GNU 工具,這就
覆蓋了絕大多數需求範圍。 相對於 OpenMP 來講, TBB 不須要依賴編譯指令 progma 來
編程,更易於使用。
軟件安裝包能夠在這個網站下載:
https://www.threadingbuildingblocks.org
我下載的是 4.3 的版本,發佈於 2014 年 11 月 11 日。
https://www.threadingbuildingblocks.org/sites/default/files/software_releases/window
s/tbb43_20141023oss_win.zip
將 tbb43_20141023oss_win.zip 解壓縮以後就能夠用,無需安裝。
3.設置環境變量
這裏設置了兩個環境變量,一是將 TBB 的 bin 目錄加入到系統 PATH 中;二是定義一
個新的環境變量 TBBROOT,這個在後續 Visual Studio 工程文件中用到。
個人 bin 目錄放在: D:/ tbb43_20141023oss/bin/intel64/vc12
TBBROOT= D:/ tbb43_20141023oss
2
4.創建 Visual Studio 工程
這裏用最簡單的樣例來講明 TBB 編程。
首先創建一個空白的工程文件。選擇 Win32 Console Application。 個人工程命名爲
testtbb
選擇空白工程。
3
5.添加一個 c++源代碼文件
鼠標右鍵選擇工程的 Source Files,選擇彈出菜單上的 Add New Item。
文件類型選擇 C++ File (.cpp)文件。
6.選擇 64 位工程
默認新建工程爲 win32 程序,如今經常使用的是 x64 程序,因此手動加進去。有沒有直
接新建 x64 工程的方式?知道的留個言吧。
添加過程以下:
鼠標右鍵點擊工程,選擇「 properties」,點擊「 Configuration Manager」。
4
在「 Active solution platform」裏選擇「 New」。
選擇「 Platform」 「 x64」
5
7.設置 INCLUDE 和 LIB 路徑
以編譯目標 Release | x64 爲例。 首先鼠標右鍵點擊工程屬性中的「 Release | x64」,
選擇「 Add New Project Property Sheet」。添加一個「tbb_release_x64.props」屬性文件。
編輯這個屬性文件(鼠標右鍵Properties),在「C/C++」「General」「Additional
Include Directory」里加上「$(TBBROOT)/include」
6
相似的,在「 Linker」 「 General」 「 Additional Library Directory」里加上
「 $(TBBROOT)/LIB/INTEL64/VC12」。
在「 Linker」 「 Input」 「 Additional Dependencies」里加上「 tbb.lib」。
注意這裏並無直接在工程屬性文件裏修改,而是添加了獨立的屬性文件,並利用
了 TBBROOT 這個環境變量。這樣當新建其餘工程時,能夠直接利用這個屬性文件,而
不須要再一步步設置。一樣的,在 TBB 路徑變化後,也不須要修改工程屬性,而是修改
環境變量 TBBROOT。這樣作的通用性會好一些。
同理修改一下 Debug | x64,新增一個 tbb_debug_x64.props 的屬性文件。
至此整個工程創建完備。
7
8.編譯運行
參照 TBB 樣例程序裏 Getting Start 的例子:
tbb43_20141023oss/examples/GettingStarted/sub_string_finder/sub_string_finder.cpp
寫一個本身的 TBB 程序,實驗一下效果吧。工具