TBB
TBB의 스케줄러는 협조적 멀티태스크를 행하기 때문에 태스크 안에서 장기간 블럭되는 처리를 호출하면 안된다.
다른 태스크를 스케줄 할 수가 없게되고, CPU 리소스의 재 이용률이 악화한다


PPL
PPL/ConcRT에서는 유저모드 스케줄러(UMS) 스레드를 이용하므로 태스크 안에서 블럭킹 API를 호출하여도 CPU 이용률이 저하되지 않는다.
ConcRT에서는 협조 블럭킹 기능을 제공하기 때문에 블럭 중 다른 태스크가 스케줄링 된다.
단 UMS는 Windows Server 2008 R2 또는 Windows 7(64비트) 이후의 64비트판에서만 지원한다.
그 이외의 Windows OS 상에서는 일반적인 스레드로 이용된다.





출처 : MSDN
저작자 표시
신고
by 흥배 2012.03.07 09:00
arallel Patterns Library(이하 PPL)에는 데이터 컬렉션을 대상으로 쉽게 병렬 작업을 할 수 있게 해 주는 알고리즘이 있습니다. 이 알고리즘들은 생소한 것들이 아니고 C++의 표준 템플릿 라이브러리(STL)에서 제공하는 알고리즘과 비슷한 모양과 사용법을 가지고 있습니다.

( *데이터 컬렉션은 데이터 모음으로 배열이나 STL 컨테이너를 생각하면 됩니다 )

 

 

PPL에서 제공하는 병렬 알고리즘은 총 세 개가 있습니다.

 

1. parallel_for        알고리즘

2. parallel_for_each 알고리즘

3. parallel_invoke    알고리즘

.............................

....... 나머지는 여기서 봐 주세요^^;


저작자 표시
신고
by 흥배 2009.08.21 00:02
PPL
이제 본격적으로 VC++ 10의 병렬 프로그래밍에 대한 이야기를 시작합니다.

첫 번째는 이름만 들어도 딱 '병렬 프로그래밍' 이라는 느낌을 주고 가장 많이 사용될 것으로 생각하는 Parallel Patterns Library (PPL)입니다정말 이름에서 딱 느낌이 오죠 ^^



PPL은 크게 세 개의 features로 나누어집니다.

1. Task Parallelism : 병렬적으로 여러 가지 작업 처리

2. Parallel algorithms : 데이터 컬렉션을 제너릭 알고리즘으로 병렬 처리

3. Parallel containers and objects : concurrent 접근이 가능한 제너릭 컨테이너


...........................

나머지는 여기서 봐 주세요^^;;


저작자 표시
신고
by 흥배 2009.08.06 21:38
| 1 |

티스토리 툴바