||<-8><tablealign=center><bgcolor=#009385> 인텔 아톰 라인 마이크로아키텍처 ||
1. 개요
2024년 발표 예정인 인텔 아톰 계보의 마이크로아키텍처.2. 상세
2023년 8월, 인텔 오픈소스 웹사이트에서 루나 레이크에 사용된 P-코어 및 E-코어의 코드명이 확인됐다. #2024년 5월 30일, 6월 중 엠바고 해제 예정인 인텔 슬라이드가 유출되었는데 해당 슬라이드에 따르면 정수 연산에서 평균 38%, 부동소수점 연산에서 평균 68%의 성능 향상이 있다고 한다.
2.1. 변경점
- 코어 레벨 (크레스트몬트 대비)
- 프론트 엔드
- 분기 예측기 개선
- 디코더의 폭이 6-wide(2x3-wide) → 9-wide(3x3-wide)로 증가
- 나노코드 도입
- 마이크로옵 큐의 크기가 64 엔트리 → 96 엔트리로 확장
- 백 엔드
- 할당량이 6-wide → 8-wide로 확장
- 퇴출 폭이 8 → 16으로 확장
- 실행 레이턴시 감소를 위한 dependency breaking 메커니즘
- 재정렬 버퍼(Reorder Buffer, ROB)가 256 엔트리 → 416 엔트리로 확장
- 물리 레지스터 파일의 크기가 증가
- 스케줄러의 크기가 증가
- 실행 엔진
- 실행 포트가 총 17-way → 26-way로 확장
- ALU의 수가 4개 → 8개로 증가
- 분기 유닛의 수가 2개 → 3개로 증가
- 로드 AGU의 수가 2개 → 3개로 증가
- 스토어 AGU의 수가 2개 → 4개로 증가
- SIMD ALU의 수가 3개 → 4개로 증가
- 벡터 처리량이 최대 2배 증가 (FADD/FMUL/FMA 포트 수가 2 → 4)
- FADD, FMUL, FMA 레이턴시 개선
- 하드웨어 수준의 부동소수점 반올림 지원
- 메모리 서브시스템
- 로드 및 스토어 버퍼의 크기가 증가
- L2 공유 TLB
- L1 캐시 메모리
- L1간 데이터 전송 지원
- L2 캐시 메모리
- BTB 참조시 alignment 단위가 128B → 64B로 변경 (even-odd scheme)
- BTB 크기가 6K → 8K로 증가
- 다만 NOP을 사용한 프론트엔드 벤치마크에서는 코드 크기가 작은 경우에만 증가한 디코더 대역폭을 온전히 활용하고, 일정 크기 이상의 코드에서는 6-wide처럼 동작했는데 이는 E코어의 로드 밸런싱 매커니즘과 관련된 현상으로 보인다.
- 자주 쓰이는 마이크로코드를 각 클러스터 내에서 생성할 수 있도록 하여 마이크로코드를 사용하는 명령어에 의한 serialization을 방지
- 128비트 로드의 처리량이 사이클당 2 → 3으로 증가
- 추가된 스토어 AGU는 memory disambiguation의 속도를 높이기 위한 용도이다.
- 해당 명령어의 레이턴시가 각각 3, 4, 6 → 2, 3, 4 사이클로 감소
- 일반적으로 사용되는
-O2
등의 옵션으로 컴파일된 바이너리의 경우 기존 E코어에서는 denormal 값을 처리하는 데 마이크로코드가 사용되어 수백 사이클이 걸리므로 성능이 저하되었는데, 이 문제를 해결하였다.- 크기가 3072 엔트리 → 4096 엔트리로 증가
- 레이턴시가 3 → 4 사이클로 증가
- 읽기 대역폭이 50% 증가
- 기존 E코어 설계에서는 한 코어에서 데이터를 변경했을 경우 클러스터 내의 다른 코어가 해당 데이터에 접근하기 위해서는 L2 miss 처리 후 링버스를 찍고 돌아와야(roundtrip) 했다. 따라서 AMD Zen 등과 반대로 클러스터 내 코어 간 통신 레이턴시가 오히려 길게 측정되는 현상이 나타났는데, 스카이몬트에서는 클러스터 내에 있는 L1 캐시 사이에서 데이터를 주고 받을 수 있도록 하여 이러한 문제를 해결하였다.
- 대역폭이 사이클당 64 B → 128 B로 증가
그레이스몬트/크레스트몬트 아키텍처에서 큰 확장 및 여러 개량이 이루어져 IPC가 크게 상승하였다. 특히 기존에 E코어의 약점으로 지적되었던 벡터 및 메모리 부분에서 유의미한 개선이 이루어졌다. 이에 따라 기존 L3 캐시 및 링버스를 사용하는 버전 기준으로 정수 및 부동소수점 모두 랩터 코브 코어와 동급 IPC를 보여준다고 한다.
2.2. 루나 레이크
2.3. 애로우 레이크
3. 사용 모델
/사용모델 참조4. 여담
- 스카이몬트의 선임 설계자인 스티븐 로빈슨에 따르면 3 x 3-디코더 구성을 채택하는 데에는 x86 명령어의 통계적 경향성이 고려되었다고 한다. #