물론 저 제목은 낚시다.
오늘은 수동으로 병렬처리 알고리즘을 만드는 것에 대해서 알아보자.

병렬처리란, 여러개의 계산을 동시에 처리하는 것인데, 복잡한건 나도 모른다.

내가 처리해야 하는 계산은 대략 $0.2*0.4*0.2*\pi*\pi$ 정도의 공간을 부피가 $0.005^5$ 정도 되는 lattice로 쪼개서 함수값을 모두 조사하는 계산이다. 내가 사용할 수 있는 컴퓨터의 computing power가 2천만개/1시간인데, 저거 대충 계산해 보니까 300시간 좀 넘게 걸리더라. 하여, 듀얼CPU에 노드 4개니까, CPU는 8개고, 잘만 쪼개면 $\frac{300}{8}$시간 내에 어떻게 될 것 같았다. 하여...

저기 $\pi$라고 쓴 부분의 공간을 8개로 쪼갰다. 적당히. 뭐, 방법은 그냥 엽기적인 for문 구간 나누기로.

그리고 파일을 8개 컴파일해서 각각 같은 input파일 넣고 돌렸다. 모레쯤엔 다 돌아가 있겠지.

다음부터는 제대로 병렬처리를 공부해서 계산해야겠다. 오늘의 일기 끝. -_-;

by snowall 2007. 8. 6. 17:22