컴퓨터 마더보드에 있는 프로세서 칩의 클로즈업
이미지 크레디트: Riccardo_Mojana/iStock/게티 이미지
병렬 및 직렬 처리는 컴퓨터 시스템이 사용하기 위해 계산 작업을 분리할 수 있는지 여부를 설명합니다. 여러 프로세서 또는 코어를 동시에 또는 단일 프로세서로 작업 완료에 의존하는 경우 핵심. 모든 개별 소비자 컴퓨터 프로세서는 Intel이 최초의 소비자 듀얼 코어 프로세서를 도입한 2005년 중반 이전에 직렬 프로세서였습니다. 여러 개의 단일 코어 프로세서가 함께 작동하여 네트워크로 연결된 병렬 컴퓨터 클러스터를 통해 직렬 처리를 처리하거나 하나의 마더보드에서 여러 프로세서를 실행할 수 있습니다.
컴퓨터는 멀티태스킹 머신이다
일반적인 현대 컴퓨터는 주어진 시간에 수십에서 수백 개의 작업을 실행합니다. 그러나 각 코어는 한 번에 하나의 프로세스에서만 작동합니다. 프로세서는 동시성이라는 실시간 환상 하에서 여러 동시 프로그램을 실행하기 위해 서로 다른 처리 "스레드" 또는 "명령 스트림" 사이를 끊임없이 이동합니다. 컴퓨터는 작업 사이를 전환하는 동안 프로세서 주기를 낭비하게 되며 멀티태스킹 시 최적의 효율성으로 실행되지 않습니다.
오늘의 비디오
병렬로 작업 실행
병렬 처리 환경은 프로그램이 병렬 처리를 사용하도록 설계된 경우 작업을 더 빠르게 처리할 수 있습니다. 직렬 프로그램은 모든 명령을 직렬 배열로 정렬하고 단일 스레드를 사용하여 프로세서와 인터페이스합니다. 병렬 프로그램은 작업을 여러 프로세서 코어로 나눌 수 있고 완료된 작업으로 다시 조립할 수 있는 개별 부분으로 분해하여 작동합니다. 병렬 프로세서는 적절하게 작성된 코드로 유사하게 클럭된 직렬 프로세서의 처리 능력을 배가할 수 있습니다. 그러나 클럭 속도가 더 높은 직렬 프로세서는 단일 스레드로 작업할 때 병렬 프로세서보다 성능이 뛰어납니다.
작동 중인 직렬 처리
직렬 처리용으로 작성된 프로그램은 한 번에 하나의 코어만 사용하고 작업을 순차적으로 처리합니다. 직렬 프로세서는 식료품점에 12개의 계산대를 열어두고 한 명의 계산원이 다른 레인 사이를 돌면서 동시에 모든 사람을 확인하는 것과 매우 유사합니다. 계산원 또는 CPU는 동시에 모든 주문을 완료하기 위해 다음 항목으로 이동하기 전에 한 번에 몇 가지 항목을 확인하는 레인에서 레인으로 이동합니다.
실행 중인 병렬 처리
병렬 프로세서의 기본 개념은 함께 작동하는 코어가 많을수록 성능이 향상된다는 것입니다. 병렬 프로세서는 12개의 계산대를 운영하는 두 명 이상의 계산원이 있는 것처럼 작동합니다. 프로그램이 병렬 처리를 활용하도록 설정된 경우 "고객"은 주문을 더 작은 그룹으로 나누고 한 번에 여러 체크아웃 레인을 사용할 수 있습니다.
병렬 프로세서로 가능성 확장
2007년 Nvidia는 처음으로 병렬 처리를 사용하여 그래픽 기술을 발전시켰습니다. 그래픽 처리 장치는 작은 계산을 할 때 직렬 처리 성능을 날려 버리는 수준에서 병렬 처리를 사용합니다. CPU는 쉽게 셀 수 있는 코어 수를 갖는 경향이 있지만 GPU는 더 간단한 동시 계산을 실행하는 데 더 적합한 수천 개의 저전력 코어를 가질 수 있습니다. GPU는 일반적으로 그래픽에 사용되지만 정렬 및 행렬 대수와 같은 다른 계산을 수행할 수도 있습니다.