2013년 1월 2일 수요일

Parallel 예제모음

병렬 프로그래밍
Parallel Programming
병렬처리는
Data Parallellism 대량의 데이터를 처리하는데 있어 각 CPU에 일감을 나눠서 주고 동시에 병렬로 처리
즉 대량의 데이터를 분할하여 다중 CPU를 사용하고 다중스레드들이 각각 할당된 데이터를 처리하는데
일반적으로 스레드 당 처리 내용은 동일하다.
(PLINQ와 Parallel클래스(For, Foreach메소드)

Task Parallelism은 큰 작업 Task를 분할하여 각 스레드들이 나눠서 다른 작업 Task들을 실행하는것
Task, TaskFactory (Parallel.Invoke())
PLINQ
PLINQ는 LINQ쿼리들을 병렬로 처리한다.
프레임워크의 작업분할,결과들을 처리하는 부담을 줄이는 이점이 있다?
AsParallel()을 호출하여 3 ~ 100,000 사이의 소수를 구하는 예제를 보자
LINQ 쿼리를 입력으로 하는
AsParallel은 System.Linq.ParallelEnumerable을 확장 메소드로

댓글 없음:

댓글 쓰기