더북(TheBook)

2.5.1 작업 독립성

순차 컴퓨팅에서는 CPU 클록 속도만 높이면 모든 연산이 빨라졌다. 이 방법은 지연 시간을 줄일 수 있는 가장 간단한 방법이기도 하다. 프로그램 설계에 특별한 요소가 필요하지도 않다. 다만, 더 빠른 프로세서를 구해오기만 하면 된다. 병렬 컴퓨팅에서는 동시에 서로 독립적으로 실행할 수 있는 작업으로 문제를 분할해서 지연 시간을 줄이는 전략을 쓴다.

노트

규모가 큰 프로그램은 보통 여러 개의 더 작은 프로그램으로 구성된다. 예를 들어 웹 서버 프로세스는 웹 브라우저에서 들어온 요청을 받아 HTML 웹 페이지로 응답한다. 각 요청은 마치 하나의 작은 프로그램처럼 처리되는데, 이러한 프로그램이 동시에 여러 개 동작할 수 있는 것이 이상적이다.

병렬 컴퓨팅을 적용할 수 있는지는 문제에 따라 다르다. 어떤 문제에 병렬 컴퓨팅을 적용하려면 이 문제를 여러 개의 서로 독립적인 작업으로 분해해서 처리 자원이 각 작업의 알고리즘을 동시에 실행하는 데 문제가 없어야 한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.