
并行
文章平均质量分 80
_saga
知其可为而不为
展开
-
OpenMP 参考(简介)
openmp参考,原文:https://computing.llnl.gov/tutorials/openMP/翻译 2011-03-14 21:05:00 · 4935 阅读 · 0 评论 -
POSIX 线程编程指南(完)
性能,调试,参考翻译 2016-12-27 17:00:57 · 1233 阅读 · 0 评论 -
POSIX 线程编程指南(一)
Pthreads Thread 概述翻译 2016-12-07 13:40:02 · 1060 阅读 · 0 评论 -
Intel Threading Building Blocks 编程指南:任务调度
Intel Threading Building Blocks (Intel® TBB)是基于任务(task)驱动的。一般来说,只有在TBB提供的算法模板中找不到合适的模板时,才考虑使用任务调度器自行实现。任务(task)是一个逻辑概念,操作系统并没有提供对应的实现。你可以把它当作线程池的进化。实现时,一个thread可对应多个task。在非阻塞编程时,相对于线程(thread),基于任务的编程有很多优点翻译 2015-04-15 20:20:46 · 4056 阅读 · 1 评论 -
Intel Threading Building Blocks 编程指南 : 内存分配
(原文出自 tbb tutorial ,也许稍有改动。)Intel Threading Building Blocks(Intel TBB)提供了两种与STL模板类(std::allocator)类似的内存分配器模板。这两类模板(scalable_allocator、cache_aligned_allocator)解决并行编程中的如下关键问题:可伸缩性 当在线程中使用原本为串行编翻译 2015-04-28 10:23:36 · 3175 阅读 · 0 评论 -
Intel Threading Building Blocks 编程指南:原子操作
可以使用原子操作来避免使用互斥。当一个线程执行原子操作,在其他线程眼里,这个操作是瞬时完成的。原子操作的优点是,相比较锁操作是快速的,而且不用为死锁、锁护送等问题而烦恼。缺点是,它们只有有限的一组操作,常常无法和成为有效的复杂操作。尽管如此,也不应该放弃使用原子操作替换互斥的机会。aotmic类以C++风格实现了原子操作。 原子操作的一个典型应用是线程安全的引用计数。设x是类型为int的翻译 2015-04-29 19:50:38 · 1181 阅读 · 0 评论 -
Intel Threading Building Blocks 编程指南:简单循环的并行化
可伸缩并行化的最简单的形式就是能够互不干涉地同时运行的迭代的循环。本节将会说明如何将简单的循环并行化。定义 Intel Threading Building Blocks(Intel TBB) 组件的命名空间是 tbb 。简洁起见,只在第一次提到某个组件时显式展示命名空间。编译 Intel TBB 程序时,记得要链接 Intel TBB 共享库。库的初始化与终止从Intel TBB翻译 2015-05-28 14:19:25 · 5990 阅读 · 0 评论 -
Intel Threading Building Blocks 编程指南:异常与终止
异常与取消Intel TBB支持异常与终止(cancellation),当算法中的代码抛出一场时,会按顺序发生:捕获异常。算法内进一步的异常被忽略。算法终止。挂起的迭代操作不被执行。如果内部存在嵌套的Intel TBB并行,那么它的取消与否取决于特定实现(下面会提到)算法的所有部分都停止后,会在调用算法的线程(thread)上抛出异常。步骤3中抛出的异常可能是初始的异常,也可能仅仅翻译 2015-05-18 16:21:52 · 1002 阅读 · 0 评论 -
Intel Threading Building Blocks 编程指南:互斥
互斥 互斥控制某块代码能同时被多少线程执行。在Intel Threading Building Blocks(intelTBB)中,互斥通过互斥体(mutexes)和锁(locks)来实现。互斥体是一种对象,在此对象上,一个线程可以获得一把锁。在同一时间,只有一个线程能持有某个互斥体的锁,其他线程必须等待时机。 最简单的互斥体是spin_mutex。试图在spin_mutex翻译 2015-04-28 21:35:07 · 1351 阅读 · 0 评论 -
hello,intel TBB
Intel Threading BuildingBlocks(Intel TBB)是一个使用ISO C++代码实现的多平台、可扩展并行编程库。但目前为止这方面的中文资料却很少。初步了解TBB时,并非每个人都打算看官方提供的资料,即使是Intel Threading BuildingBlocks Tutorial。原创 2012-06-09 18:02:29 · 17385 阅读 · 0 评论 -
Intel Threading Building Blocks :基本算法参考及使用
Intel TBB提供的大多数并行算法支持泛型。但是这些受支持的类型必须实现必要的概念方法。并行算法可以嵌套,例如,一个parallel_for的内部可以调用另一个parallel_for。原创 2012-06-09 18:12:52 · 6722 阅读 · 3 评论 -
visual studio 2010 中的并行调试任务窗口无效
为更好地支持 Task Parallel Library 和Concurrency Runtime的调试,visual studio 2010 提供了一种图形化的并行调试功能。在调试程序时,可通过下图所示的菜单或快捷键打开: 但在调试一个OpenMP程序时出现Parallel Tasks出现下面的提示: 这是因为符号源设置导致调试原创 2011-03-30 17:29:00 · 2373 阅读 · 0 评论 -
OpenMP 参考 (同步构造)
原文:https://computing.llnl.gov/tutorials/openMP/翻译 2011-03-29 09:42:00 · 8426 阅读 · 0 评论 -
OpenMP 参考(子句)
原文:https://computing.llnl.gov/tutorials/openMP/翻译 2011-03-30 09:51:00 · 3556 阅读 · 1 评论 -
OpenMP 参考 (指令格式)
原文:https://computing.llnl.gov/tutorials/openMP/翻译 2011-03-21 14:34:00 · 5222 阅读 · 0 评论 -
c++新特性:多线程
很高兴c++11的标准库可以#include <thread>了。boost早就提供了类似功能。这时候考虑下开发商、物业公司联合阻碍成立业主委员会的借口之一:会妨碍事情的正常进展,推断也许他们也是c++的长期使用者:)1、pthread_xx的封装 stl提供了(目前)五个头文件以支持多线程:atomic(提供原子操作功能)、thread(线程模型封装)、mu...原创 2015-03-05 15:45:24 · 7400 阅读 · 1 评论