12P by xguru 9달전 | favorite | 댓글 1개
  • 초기 리뷰들에서는 M3 기반 Mac의 CPU 코어에 큰 변화가 없어 보이지만, 실제로는 클러스터 크기와 최대 주파수 증가 등 중요한 변화가 있음
  • 클러스터 크기: M1/M2 칩에서는 2개 또는 4개의 CPU 코어가 클러스터를 이루고 공유 캐시를 사용했지만, M3 칩에서는 기본 모델은 4개, Pro와 Max 모델은 6개의 코어로 구성된 클러스터를 가짐
    • 이것은 칩 선택에 영향을 줌
    • macOS는 가능하면 QoS(서비스 품질)에 따라 더 높은 우선 순위로 실행되는 스레드를 P 코어에 할당
    • P 코어가 이미 완전히 점유된 경우 macOS는 대신 E 코어에서 높은 QoS 스레드를 실행
    • 즉, 일반적으로 사용하는 앱을 액티비티 모니터의 CPU 기록창에서 살펴보고
      • P 코어가 대부분의 시간 동안 완전히 점유되고 해당 작업 부하가 E 코어로 넘쳐나는 경우가 있다면 P 코어가 더 많은 M3를 목표로 해야함
      • P 코어에 항상 적절한 예비 용량이 있다면 P 코어가 더 많은 M3에서 추가 가치를 얻지 못할 것
  • E 코어: M3 Pro의 E 코어는 M1 Pro와 비슷하지만, macOS에 의해 결정되는 주파수 관리에서 차이가 있으며, M3 칩은 최대 2748 MHz까지 도달함
    • M3의 E 코어가 M1보다 약간 더 느리게 백그라운드 스레드를 실행한다는 것을 의미
    • 즉, M1 Pro를 M3 Pro로 교체하면 백그라운드 작업이 느려지지만 E 코어로 오버플로된 높은 QoS 작업은 가속화
  • P 코어: M3 Pro의 P 코어는 최대 4056 MHz까지 동작하며, M1 Pro와 비교해 정수 및 부동 소수점 성능이 약 1.3배, 벡터 성능은 NEON이나 Apple의 Accelerate 라이브러리를 사용할 때 더 빠른 성능을 보임
    • 이는 정수 및 부동 소수점 성능 향상이 코어 주파수의 증가로 인한 것이지만, 벡터 처리에서 더 많은 개선이 있을 수 있음을 시사
    • 아마도 Apple이 M3 P 코어의 NEON 장치 설계를 개선했을 것
  • P 대 E 성능: M1과 M3 코어는 부하 상황에서 성능 패턴이 다르며, M3 Pro는 P 코어와 E 코어 모두에서 더 높은 성능을 제공함
  • CPU 사용 이력: Activity Monitor의 CPU 사용 이력은 코어 부하와 성능에 대한 정보를 제공하지만, 코어 주파수를 고려하지 않아 오해의 소지가 있음

요약

  • CPU 코어를 비교하는 데는 멀티코어 벤치마크보다 훨씬 더 많은 것이 있음
  • 이미 Apple 실리콘 Mac을 사용하고 있다면 평상시 P 코어와 E 코어의 사용 패턴을 관찰하여 더 많은 코어가 있는 Mac이 필요한지 여부를 결정할 것
  • CPU 코어 클러스터 크기는 M3 칩에서 2-4에서 4-6으로 변경되었으며, 이는 성능 및 전력 사용에 광범위한 영향을 미칠 수 있음
  • M3 E 코어는 M1의 코어와 비슷하게 보이지만 최대 주파수가 더 높고 백그라운드 작업에서는 더 낮은 주파수로 실행됨
  • M3 P 코어는 벡터(NEON) 유닛에서 성능이 개선된 것으로 보이며 최대 주파수가 더 높음
  • E 코어 수가 증가하면 P 코어에서 높은 QoS 스레드의 오버플로를 수용할 수 있는 용량이 증가
  • macOS 코어 관리도 변경되었음

읽어보니 소프트웨어 개발 환경에서 (결국 스레드 할당) 동시성 지원하는 하위 라이브러리 동작과 같은 맥락으로 발전하는 것 같네요. 새로운 macOS나 iOS가 새로운 애플 실리콘에서 더 이득이 될 수 있겠구요