源地址:http://www.th7.cn/system/win/201505/103966.shtml

http://wenku.baidu.com/link?url=zH7vwmWltWF5R-9YGUDq5oSszkoWDxknBJmZkFY4w6FzV1P55h5XClOCd6UoB3tYCYjYt0ee_qw6k4GevVI82jEGcS2CdgJmqutwQWoZqJ3

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 程序,实验一下效果吧。

Win7和VS2013上使用Intel的TBB的更多相关文章

  1. OpenBLAS简介及在Windows7 VS2013上源码的编译过程

    OpenBLAS(Open Basic Linear Algebra Subprograms)是开源的基本线性代数子程序库,是一个优化的高性能多核BLAS库,主要包括矩阵与矩阵.矩阵与向量.向量与向量 ...

  2. # 【ARM-Linux开发】在Win7的电脑上直接运行安装Ubuntu14.04发生的问题 标签(空格分隔): 【Linux开发】 --- > 一段时间以来,一直是在Windows上安装虚拟机

    [ARM-Linux开发]在Win7的电脑上直接运行安装Ubuntu14.04发生的问题 标签(空格分隔): [Linux开发] 一段时间以来,一直是在Windows上安装虚拟机,然后安装Ubuntu ...

  3. win7、win8上SaveFileDialog窗口跳不出的问题

    xp上做的开一个线程 线程中数据以Excel形式保存到指定文件中的程序  放到win7 win8上都不跳出保存的对话框? 解决: 在win7.win8上都要对线程  在线程启动前设置其单元状态.设置为 ...

  4. 在Win7的IIS上搭建FTP服务及用户授权

    FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Internet上的双向文件传输(即文件的上传和下载).在网络上有 ...

  5. 在Win7的IIS上搭建FTP服务及用户授权——转载!!

    原文地址:http://blog.sina.com.cn/s/blog_6cccb1630100q0qg.html FTP服务 FTP是文件传输协议(File Transfer Protocol)的简 ...

  6. 在vs2013上的编译tesseract-ocr

    在vs2013上的编译tesseract-ocr OCR(Optical Character Recognition):光学字符识别,是指对图片文件中的文字进行分析识别,获取的过程. Tesserac ...

  7. 【转】在Win7的IIS上搭建FTP服务及用户授权

    [转]在Win7的IIS上搭建FTP服务及用户授权 [转]在Win7的IIS上搭建FTP服务及用户授权 FTP服务 FTP是文件传输协议(File Transfer Protocol)的简称,该协议属 ...

  8. Loadrunner11无法在win7 64位上启用ie解决办法

    Loadrunner11无法在win7 64位上启用ie解决办法 1.loadrunner11在win7 64位上默认启用的是32位的那个IE浏览器,路径:C:\Program Files (x86) ...

  9. win7系统安装VS2013后,连不上远程sqlserver数据库解决办法

    刚搬了地方,顺便把电脑重做了系统,把sql2012和vs2013装好,怎么弄也连不上远程的数据库了,用程序连IIS直接死掉,用ssms连也是直接失去响应,开始以为是网线端口被运营商封杀了,最后发现不是 ...

随机推荐

  1. Python 第五篇(下):系统标准模块(shutil、logging、shelve、configparser、subprocess、xml、yaml、自定义模块)

    目录: shutil logging模块 shelve configparser subprocess xml处理 yaml处理 自定义模块 一,系统标准模块: 1.shutil:是一种高层次的文件操 ...

  2. 知识点2-5:了解Razor语法

    以往开发ASP.NET Web Form时,在ASPX页面上都会出现许多夹杂C#/VB.NET与HTML的情况,而先前使用<%...%>这种传统圆角括号的表示法会让HTML标签与ASP.N ...

  3. django目录下的各文件

    本文部分转载. 使用Python setup.py install命令从源代码安装完Django后,这些都会被拷贝到Python安装目录下的Lib/site-packages/django子目录中.之 ...

  4. java list三种遍历方法性能比较

    从c/c++语言转向java开发,学习java语言list遍历的三种方法,顺便测试各种遍历方法的性能,测试方法为在ArrayList中插入1千万条记录,然后遍历ArrayList,发现了一个奇怪的现象 ...

  5. 关于java的环境变量的一点总结

    配置java环境变量: 一:为了在任意目录下使用java的开发工具javac,所以将javac.exe所在的目录加入到系统路径下, 即:在环境变量的path中加入javac.exe所在的目录.一般放在 ...

  6. ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables opt

    mysql跳过权限: mysqld -nt --skip-grant-tables opt 登录:mysql -uroot -p 修改root密码 set password for 'root'@'l ...

  7. SqlServer和Oracle中一些常用的sql语句6 存储过程

    --不带参数的存储过程 CREATE procedure proc_sql1 as begin declare @i int set @i=0 while @i<26 begin print c ...

  8. 使用ViewPager模拟实现应用程序启动界面

    经常在开发应用程序的时候,软件启动有启用动画界面,一般使用图片来进行界面该版本最新更新等等内容,今天来使用ViewPager来模拟实现这功能,也希望对大家有个小小的参考作用,在以后的项目中能够使用到. ...

  9. Linux安装完Tomcat后无法登陆管理界面

    今天在Linux中安装完Tomcat后无法登陆Tomcat的管理界面,也就无法利用Tomcat管理界面来部署项目. 在Windows中一般配置完Tomcat后,只要在[conf]目录下的“tomcat ...

  10. JAVA EE 项目经常使用知识 之AJAX技术实现select下拉列表联动的两种使用方法(让你真正理解ajax)

    ajax 下拉列表联动的使用方法. ajax的定义: AJAX 是一种用于创建高速动态网页的技术. 通过在后台与server进行少量数据交换,AJAX 能够使网页实现异步更新.这意味着能够在不又一次载 ...