코어 수가 많을수록, 클럭 속도가 높을수록 컴퓨터 성능에 더 도움이 됩니까?

코어 수가 많을수록, 클럭 속도가 높을수록 컴퓨터 성능에 더 도움이 됩니까?

실리콘 비용이 낮아지고 소비자 요구가 높아지면서 제조업체는 클럭 속도 및/또는 코어 수라는 두 가지 중 하나를 추진하는 것으로 보입니다. 상황이 진행되면서 더 이상 프로세서의 클럭 속도가 증가하는 것이 아니라 프로세서 코어 수가 증가하는 것 같습니다.

저는 불과 몇 년 전만 해도 훌륭하고 빠른 단일 코어 펜티엄 4 프로세서를 사용했던 것으로 기억합니다. 지금으로 보면 단일 코어 프로세서도 구입할 수 없을 것 같습니다(멀티코어 프로세서의 증가세는 말할 것도 없고).휴대폰에도). 상황이 진행되는 방식대로라면 몇 년 안에 수백 개의 코어가 있는 컴퓨터를 찾을 수도 있습니다(그리고 많은 운영 체제가 이미 이를 지원하고 있다는 것을 알고 있습니다).

클럭 속도를 높이는 것이 시스템의 전체 성능에 더 유익합니까, 아니면 코어 수를 늘리는 것이 더 좋습니까? 수백 개의 코어가 모두 함께 실행되거나 클럭 속도가 현재보다 10배 더 높다고 가정합니다(물리적으로 가능한지 여부에 관계없이).

가장 큰 이점을 얻을 수 있는 일반적인 프로세스(예: 암호화, 파일 압축, 이미지/비디오 편집)의 예는 무엇입니까? 어떤 프로세스가 있습니까?~할 수 있다하지만 현재는 (기술적인 이유로) 병렬성을 높여서 속도를 높이지 않습니까?


가상의 프로세서가 완전히 동일한 코어 설계(워드 크기, 주소 비트 폭, 메모리 버스 크기, 캐시 등)를 갖고 있다고 가정합니다. 따라서 여기서 유일한 변수는 클럭 속도와 코어 수입니다. 그리고 다시 말하지만, 저는 1개, 2개 또는 4개의 코어에 대해 말하는 것이 아닙니다. 수십에서 수백 개의 코어를 상상해보세요.

답변1

고려해야 할 두 가지 기본 상황이 있습니다.

  1. 프로세서는 단일 프로그램에 대한 계산만 수행하는 컴퓨터와 함께 사용됩니다.

  2. 프로세서는 동시에 실행되는 여러 프로그램에 사용됩니다.

첫 번째 상황은 사용자가 빠르고 효율적으로 계산을 수행하는 능력을 원하기 때문에 프로세서 '속도'가 더 중요한 상황입니다. 이러한 상황은 일반적으로 계산 집약적인 처리, 즉 소수 계산에 대한 것입니다.암호화/복호화

두 번째는 각 프로그램을 별도의 코어에 할당하여 각 프로그램이 서로 '병목 현상'을 일으키지 않도록 다중 코어를 사용하는 것이 유용한 경우입니다. 오늘날 일반 사용자는 동시에 여러 프로그램에 컴퓨터를 사용하게 되므로 멀티 코어 처리가 바람직해집니다.

그러나 멀티코어!=모든 경우에 더 빠른 속도 또는 더 높은 성능. 대부분의 프로그램은 단일 코어 처리용으로 작성되었으므로 * 클럭 속도는 여전히 중요합니다. 두 가지의 조합을 고려해야 합니다.(다른 많은 요인들과 함께).


* 일부 프로그램이 있으며, 여러 코어를 동시에 사용할 수 있는 프로그램이 곧 더 많이 만들어질 것으로 예상됩니다. 소프트웨어의 미래는 여기에서 발견됩니다."병렬 프로그래밍":

소프트웨어 개발자는 단일 스레드 애플리케이션 속도를 높이기 위해 더 이상 클럭 속도 증가에만 의존할 수 없습니다. 대신, 경쟁 우위를 확보하기 위해 개발자는 스레드 환경에서 실행되도록 응용 프로그램을 적절하게 설계하는 방법을 배워야 합니다. 멀티 코어 아키텍처에는 두 개 이상의 프로세서 "실행 코어" 또는 계산 엔진이 포함된 단일 프로세서 패키지가 있으며 적절한 소프트웨어를 사용하여 여러 소프트웨어 스레드의 완전한 병렬 실행을 제공합니다.

-인텔

답변2

개인적으로 코어 개수가 좋은 방법이라고 생각합니다. 소프트웨어 개발이 네트워크 시스템으로 전환되었으므로 더 이상 로컬 리소스가 사용할 수 있는 유일한 리소스가 아닙니다. 지금 당신이 일하는 방식에 있어 가장 중요한 요소는 무엇인가이다.회로망당신은 일부입니다.

모바일 광대역, 지속적인 연결, 원격 액세스 등으로의 전환을 주목하세요. 따라서 지속적인 연결을 위해서는 배터리 수명이 필요합니다. 어떤 CPU 요소가 배터리 수명에 더 최적인지는 논쟁의 여지가 있지만(작업 가치 대 시간의 고전적인 최적화 방정식이 있습니다), 저는 개인적으로 하나를 선택해야 한다면 더 많은 코어를 선택할 것이라고 생각합니다.

이제 Intel에서는 필요에 따라 코어에 전력을 공급할 수 있습니다. 절전할 코어가 없는 것만큼 최적은 아니지만 더 많은 코어를 사용할 수 있는 옵션이 있으면 동일한 하드웨어 플랫폼에서 더 많은 애플리케이션을 실행할 수 있는 유연성이 제공됩니다.

답변3

ChrisF가 의견에서 언급했듯이,때에 따라 다르지.그러나 그러한 답변은 실제 답변이 아니기 때문에 하나가 다른 것보다 더 유익한 몇 가지 시나리오를 만들어 보겠습니다.

언급한 대부분의 일반적인 프로세스에서 코어 수는 그다지 중요하지 않습니다. 왜냐하면 대부분의 작업이 (한 번에) 단일 코어에서만 실행될 수 있는 단일 스레드에서 수행되기 때문입니다. 이러한 프로세스의 경우 단일하지만 매우 강력한 코어가 두 개의 느린 코어보다 더 나은 성능을 발휘합니다. 암호화와 파일 압축 모두 이에 대한 예외일 수 있지만 어떤 알고리즘이 사용되는지와 병렬로 실행될 수 있는지 여부에 따라 크게 달라집니다.

그러나 오늘날 컴퓨터에서 수행되는 가장 일반적인 작업 중 하나인 검색을 잊어버리셨습니다. 몇몇 인기 있는 브라우저는 각 탭을 별도의 프로세스로 엽니다(제가 사용하는 브라우저는 Chrome뿐이므로 이렇게 할 수 있다고 확신합니다). 즉, 쿼드 코어 시스템에 탭 4개가 열려 있으면 각 탐색 창에서 (이론적으로) "자체"(OS 스레드 및 기타 항목 무시) 코어를 가지며 열려 있는 다른 브라우저 탭/창이 없는 것처럼 빠릅니다. 한 번에 많은 탭을 열어서 탐색하는 사람들에게는 매우 빠른 CPU 코어를 구축하지 않고도 성능이 크게 향상될 수 있습니다.

느린 코어를 가진 멀티 코어 시스템이 빠른 코어를 가진 단일 코어 시스템보다 빠른지 여부를 아는 열쇠는 그렇게 할 것인지 아는 것입니다.여러 가지 일을 동시에또는몇 가지 있지만 무거운 것들. 이는 사용자마다 많이 다르므로 귀하의 질문에 대한 답변도 마찬가지입니다.


다른 답변도 몇 가지 중요한 사항을 제시합니다.

  • 프로세서 성능은 더 이상 클럭 속도나 코어 수에 관한 것이 아닙니다. 클럭 속도와 코어 수가 향상됨에 따라 프로세서의 다른 부분이 병목 현상을 일으키고 있습니다.
  • 대부분의 사용자에게 있어 프로세서 성능은 애초에 병목 현상을 일으키지 않습니다. Google Docs와 같은 호스팅된 애플리케이션에서 시간을 보내고 있다면 네트워크 카드의 속도가 프로세서 코어의 속도보다 더 중요할 것입니다. 고해상도 영화 자료를 보거나 편집하는 경우 하드 디스크 성능이 더 중요합니다. 등...

답변4

실제로 오늘날 가장 중요한 요소는 프로세서의 클럭 속도가 아니며, 이 "비교 요소"가 더 이상 사용되지 않은 이후로 많은 새로운 기능이 출시되었습니다.

오늘날 프로세서의 성능을 추론하려면 다양한 요소를 살펴봐야 합니다. 같은 것들:

  • 코어 수
  • 병렬 작업 스레드 수
  • 프로세서 제품군(Dual Core, Pentium, Core i/Calpella, Sandy Bridge 등)
  • 프로세서 세대(2세대, 6세대 등)
  • 프로세서의 클럭 속도.

실제로 프로세서 속도를 비교하고 싶을 때 문의합니다.패스마크~의노트북 수표벤치마크 테이블. 제 생각에는 벤치마크는 프로세서 속도와 성능을 측정하고 비교하는 가장 좋은 요소입니다.

관련 정보