듀얼 코어에서도 mpi 병렬처리 코딩이 효과를 발휘하나요?
글쓴이: 익명 사용자 / 작성시간: 월, 2007/03/12 - 11:12오전
듀얼 코어에서도 mpi 병렬처리 코딩이 효과를 발휘하나요?
듀얼 CPU가 아니라 듀얼코어-싱글CPU 입니다.
효과가 있다면 듀얼 CPU 의 그것과 비교해서 어떨까요?
File attachments:
첨부 | 파일 크기 |
---|---|
To-dual-core-or-not-to-dual-core-2.jpg | 48.58 KB |
Forums:
mpi 병렬처리
mpi 병렬처리 코딩...이 뭔가요?;;;
------------------------------------------
Let`s Smart Move!!
http://kalstein.tistory.com/
SMP와 헷갈리신것 아닌지...
SMP(Symmetric Multiprocessing)를 사용하면 될 것 같습니다. 어차피 processor만 2개이고 메모리는 공유하는 형태이므로 MPI(Message Passing Interface)를 사용할 이유가 없어보입니다. MPI는 processor마다 각각 메모리를 가지고 있고 이 unit들 사이에 network이나 bus등을 이용해서 data를 공유하는 방식입니다.
SMP를 공부해 보심이 좋을 듯 합니다. 이미 multithreading code를 작성해본 경험이 있으시다면 비교적 쉽게 할 수 있을 것 같습니다. 제 짧은 생각으론 SMP와 싱글 코어에서의 multithreading은 concurrence문제 이외에는 크게 다르지 않습니다.
추가로...
추가로 질문하신 것처럼 굳이 듀얼 코어 시스템에서 MPI를 쓴다면 분명 아무런 병렬처리나 threading를 이용하지 않는 것 보다야 효과가 있을 수 있습니다. 하지만 위에 언급했듯이 SMP나 multithreading을 잘 사용한 것 보다는 확실히 효과가 적을 것 입니다. 가까운 길을 굳이 멀리 돌아가는 상황이기 때문에... 그리고 혹여 message passing 오버헤드가 크다면 (data가 크거나 빈번히 교환되는 경우) 그냥 single thread로 돌리는 것 보다도 오히려 못 할 수 도 있습니다. 그리고 제 개인적 생각으론 MPI와 worker - boss model를 사용한다면 듀얼 코어에서는 거의 효과가 없지 않을까도 생각됩니다.
OpenMP
원하시는 답은 아니지만 ^^; SMP에서는 OpenMP를 이용하는 것이
더 효율적인 것으로 알고 있습니다. 그렇다면 dual core도
OpenMP가 더 낫지 않을까요?
댓글 달기