Translate

2017년 6월 18일 일요일

링 버스 구조 대신 메쉬 방식을 도입한 스카이레이크 X 프로세서





(출처: Intel)


 인텔의 스카이레이크 X 프로세서에 대한 상세한 정보가 공개되었습니다. 스카이레이크/카비레이크에 사용된 아키텍처는 큰 변화가 없지만, 앞서 소개드린 것처럼 코어가 더 직접적으로 사용할 수 있는 MLC(mid level cache)를 1MB로 증가시켜 성능 향상을 꾀하는 한편 과거 제온에 사용된 링버스 구조를 메쉬 구조로 변경해서 더 많은 코어를 집적해도 성능이 하락하지 않도록 했다는 점이 큰 차이점입니다. 




 CPU가 멀티코어화 되면서 메모리와 캐쉬를 공유할 뿐 아니라 CPU간에도 정보를 주고받아야 할 필요가 생깁니다. 2개나 4개 정도일때는 문제되지 않는 부분도 코어가 여러 개가 되면 문제가 될 수 있기 때문에 여기에 대한 대응책이 필요합니다. 링 버스 구조는 각각의 코어와 캐쉬, 메모리가 링으로 연결된 방식으로 8코어 제온 시기에 등장했으며 인텔은 이 링 버스를 이용해서 24개의 코어를 지닌 제온 프로세서도 만들 수 있었습니다. (위에서 세 번째 구조도) 


 하지만 이 방식 역시 코어가 증가할수록 구조가 복잡해지고 지연 시간이 발생하는 문제가 생깁니다. 이를 극복하기 위해 링을 여러 개 도입할 수 있지만, 이 경우 링 간 서로 연결을 해줘야 하기 때문에 또 문제가 생길 수 있있습니다. 


 인텔이 제시한 해법은 마치 바둑판처럼 가로 세로 데이터 통로를 만들고 그 위에 코어와 캐쉬를 놓는 방식입니다. (위에서 두 번째 그림) 이렇게 해도 물론 병목 현상은 발생할 수 있지만, 구조상 다수의 더 다수의 코어가 들어가도 서로 쉽게 연결될 수 있습니다. 이 메쉬 형식의 아키텍처는 어딘지 낯설지 않은 구조입니다. 왜냐하면 이미 제온 파이에서 선보인 적이 있기 때문이죠. 






 제온 파이 프로세서는 두 개의 코어가 하나로 묶어서 메쉬 구조로 결합되어 있습니다. 36개의 타일이 72개의 CPU를 포함하며 각각의 CPU는 네 개의 쓰레드를 만들 수 있는 구조입니다. 이를 통해 50개 이상의 코어와 200개 이상의 쓰레드를 연결하는 것이죠. 2015년 IDF에서 공개한 이 메쉬 구조는 코어 숫자가 늘어나는 점을 고려할 때 피할 수 없는 구조라고 할 수 있을 것입니다. 그리고 점차 코어 숫자가 증가함에 따라 이제 제온 프로세서와 다수의 코어를 집적한 스카이레이크 X 프로세서에도 적용이 되는 것이죠. 


 현재 AMD는 좀 다른 방법으로 접근하고 있지만, 미래 다중 코어 CPU의 구조는 결국 비슷한 방식으로 수렴하지 않을까 생각해 봅니다. 


 참고 





댓글 없음:

댓글 쓰기