스콜피오는 하이엔드 PC가 경쟁상대가 아니다.. 당연하다면 당연한.. 게임 이야기

필 스펜서: 스콜피오는 하이엔드 PC와 경쟁상대 아냐, 콘솔 가격으로 나올 것 (PLAY ONE)

사실 콘솔이 하이엔드 PC와 싸우려면 싸울 수는 있다고 봅니다. 오히려 이상하게 기워맞추는 조립식의 PC 와 달리 엄선된 제조사가 정밀하게 맞추는 하드웨어의 만듦새나 매칭은 더 뛰어나겠지요. 하지만 그렇게 만들 시장도 없고, 만든다고 나온 하이엔드 콘솔이 수년을 계속 성능적 우위를 갖출 수 없다는 점이 문제입니다. 하이엔드 PC는 모듈러로 결국 결국 부품을 교체할 수 있지만... 콘솔은 불가능하니까요.

결국 콘솔은 밸런스와 최적화를 중시 할 수 밖에 없습니다.

뭐, 399~499 달러 안에서 가격이 나올꺼고, 그 가격을 넘어서면 시장성이 없으니까요. 물론 그렇다고 해도 4K 게이밍을 어느 정도 지원하는 안정적인 PC를 사는 것보다 콘솔을 사는 것이 경제적일 수도 있고, 실제 그만한 PC 를 안 사는 분도 많으니까요. 선택권의 문제이긴 하지요.

스콜피오는 잘 나왔으면 합니다.


덧글

  • isotoxin 2016/12/08 13:51 # 답글

    뭐 피씨쪽도 CPU 갈때마다 마더보드 갈아야하는건 마찬가지니깐요. CPU쪽에서 원체 AMD가 경쟁력이 없어서 마더보드를 갈아야한다는 점과 하이퍼쓰레딩이 기본 탑재 된게 아닌 병맛 상황이 존재하긴 합니다.

    그리고 콘솔은 항상 그래왔지만 가성비 극대화가 최우선 목적이었고 옵션 설정 또한 가장 효율적이고 효과적인 포인트를 집는 방식으로 갔습니다. 텍스쳐 같은 경우에도 PC쪽의 울트라 텍스쳐가 CPU/대역폭 낭비 대비 시각적 개선 효과가 쥐꼬리만하죠. PC 쪽도 최적화 하게 되면 이렇게 GPU쪽의 VRAM을 늘릴게 아니라 콘솔 비슷하게 시스템 램을 증가시킴으로써 더욱 많은 고 텍스쳐 활용이 가능해지게 됩니다. 지금 당장은 그저 콘솔의 방대한 램 용량만 따라갈려고만 해서 2기가 램 쓰는 지포스 1050과 3기가 램 쓰는 지포스 1060은 앞으로 콘솔 타이틀들을 콘솔급 옵션으로 돌리는게 불가능해집니다.

    그리고 이번 세대 콘솔쪽의 가장 멋진 기술은 템포럴 리컨스트럭션이고요. 렌더링쪽의 부족한 성능은 최첨단 GPGPU를 통해 메웠던 가장 훌륭했던 케이스였습니다. 참고로 엑원 또한 해당 기술을 사용해서 PS4를 역전했던 케이스도 있었습니다. 그래서 PS4 GPU의 경우 클래스는 레이디언 7870이지만 클럭이 낮아서 플롭으로 따지면 7850급이었지만 결국 shader intrinsic 같은 다양한 기술을 통해 지포스 950급까지 끌어올라갈수가 있었죠. 그런 면에서 이제 GPU 쪽은 별 걱정 없습니다. 진짜 걱정은 CPU쪽과 메모리쪽인데 젠이 성능은 굉장히 높히 뽑혀 나오지만 너무 지나치게 PC위주적 아키텍쳐라 콘솔 입장에서 쓰기엔 좀 엇갈리는 상황이 존재하긴 합니다. 그래도 일단 그거 쓰면 본격적으로 60프레임 세대가 열리긴 하니 PDP 사후 시대에 다행이긴 합니다. 메모리 같은 경우가 문제가 되는데 앞으로 미래 콘솔들은 GDDR 가지곤 부족하기 때문에 반드시 스택형 메모리로 이전해야 합니다.
  • 이재용을감옥으로 2016/12/08 18:20 # 삭제

    텍스쳐 같은 경우에도 PC쪽의 울트라 텍스쳐가 CPU/대역폭 낭비 대비 시각적 개선 효과가 쥐꼬리만하죠. PC 쪽도 최적화 하게 되면 이렇게 GPU쪽의 VRAM을 늘릴게 아니라 콘솔 비슷하게 시스템 램을 증가시킴으로써 더욱 많은 고 텍스쳐 활용이 가능해지게 됩니다. 지금 당장은 그저 콘솔의 방대한 램 용량만 따라갈려고만 해서 2기가 램 쓰는 지포스 1050과 3기가 램 쓰는 지포스 1060은 앞으로 콘솔 타이틀들을 콘솔급 옵션으로 돌리는게 불가능해집니다.
    //
    텍스처 해상도는 CPU 부하에 거의 영향을 안 줍니다. 텍스처가 VRAM 용량은 제일 많이 먹는데, 대역폭 은 프레임 버퍼가 제일 많이 먹고 그 가운데서도 Z 버퍼가 1등입니다. 괜히 엑박360 eDRAM을 ROP에 붙여서 프레임 버퍼 전용으로 쓴 게 아닙니다.
  • 이재용을감옥으로 2016/12/08 18:24 # 삭제

    프레임 버퍼가 대역폭을 제일 많이 먹지만 용량은 별로 안 크니까, eDRAM으로 땜빵했지요.

    shader intrinsic은 PC에서도 씁니다. 이번에 둠 불칸 버전에 쓰여서, 라데온이 지포스를 밟는 데 한 몫 했습니다.

    지금 당장은 그저 콘솔의 방대한 램 용량만 따라갈려고만 해서 2기가 램 쓰는 지포스 1050과 3기가 램 쓰는 지포스 1060은 앞으로 콘솔 타이틀들을 콘솔급 옵션으로 돌리는게 불가능해집니다.
    //
    이번 세대 게임기에서 게임이 쓸 수 있는 램이 5GB 정도인데, 이 가운데 게임 코드나 사운드 등은 뺴고, PC에서 GPU VRAM에 들어갈 테이타가 얼마나 될까요? PC에선 VRAM 4GB면 대체로 게임기보다 훨씬 고화질 텍스처를 쓸 수 있습니다. 이를 보면, 2~3GB에서도 게임기 수준의 텍스처를 쓸 수 있습니다.
  • 이재용을감옥으로 2016/12/08 18:31 # 삭제

    젠이 성능은 굉장히 높히 뽑혀 나오지만 너무 지나치게 PC위주적 아키텍쳐라 콘솔 입장에서 쓰기엔 좀 엇갈리는 상황이 존재하긴 합니다.
    //
    젠이 어떤 점에서 "PC 위주 아키텍처"이고, 어떤 점에서 게임기에 안 맞나요? 이번 세대 재규어나 초대 엑박이 썼던 셀레론 등은 전부 PC용 아키텍처인데요.

    앞으로 미래 콘솔들은 GDDR 가지곤 부족하기 때문에 반드시 스택형 메모리로 이전해야 합니다.
    //
    10.8TFLOPS인 지포스 1080ti도 HBM 대신 G5로 돌아갑니다. 다음 세대 성능이 얼마나 될지 모르겠지만, GPU의 FLOPS / B/s 비율은 점점 내려가고, 이는 플스4와 플스4 프로를 비교해도 알 수 있습니다. 또한 GDDR도 벌써 나와서 12Gbps 찍는 G5X나 16Gbps가 목표인 G6 등이 있습니다. 이를 보면, 다음 세대에도 GDDR로 어떻게든 버틸 수 있을 겁니다.
  • isotoxin 2016/12/08 19:21 #

    제가 레이디언 290 크로스파이어 씁니다. 4GB고 울트라 옵션 아닌 상옵에선 베지테이션 생성이나 LOD 같은 부분을 제외하면 메이저 콘솔 AAA 게임 이식작 기준으로 PC판이 콘솔판보다 더 높은 텍스쳐를 제공해주는 경우는 외부 텍스쳐팩 주입 방식을 제외하곤 상당히 드물었습니다. 디지털 파운드리를 봐도 텍스쳐만큼은 상옵이 대부분이며 배틀필드1 같은 소수의 경우는 울트라 옵션까지도 사용했습니다. 콘솔은 5기가를 쓰니 오픈월드 AAA 기준으론 평균적으로 게임플레이 코드가 2기가를 쓰고 텍스쳐로 3기가를 씁니다. 하지만 오픈월드 방식이 아닌 게임에선 그만큼 게임플레이 코드가 훨씬 줄어들기 때문에 콘솔쪽의 텍스쳐를 따라잡으려면 4기가는 있어야 합니다. 킬존 섀도우폴 같은 경우는 4기가보다 더 많이 사용했던 슬라이드 또한 증거로 남아있습니다. PS4는 통합램 방식이라 램이 남아돌아서 초반엔 G버퍼를 무지막지하게 낭비했죠.

    4K 울트라 텍스쳐 옵션이 낭비인 이유는 현존 콘솔과는 완전히 반대되는 개념으로 접목되기 때문에 그렇습니다. 콘솔은 VRAM 용량을 절약하기 위해 (킬존 같은 초기 케이스에 비해 크게 개선된 효율성) 가상 텍스쳐 기반 텍스쳐 스트리밍 기술을 씁니다. 효율성이 굉장히 좋으며 iD의 PRT 같은 실시간 텍스쳐 생성 방식 또한 이러한 배리에이션 중 하나입니다. 하지만 현재 PC로 등장하는 4K 텍스쳐 팩은 이러한 효율적인 텍스쳐 스트리밍 기술을 무시하고 대용량 텍스쳐를 VRAM에 한꺼번에 때려박는 방식입니다. 당연히 게임 개발자들이 특정 씬에 특정 텍스쳐 스트리밍 방식을 접목하는 방식에 완전히 반하는 방식이기 때문에 용량은 X같이 크기만 하니 대역폭만 엄청나게 처먹을수 밖에 없습니다. 지포스야 맥스웰서부터 타일형 렌더링을 접목했기 때문에 대역폭 효율성이 엄청 (128비트 코딱지만한 대역폭 가진 960이 훨씬 높은 대역폭을 지닌 380을 1080p 게임에선 굉장히 따라잡는 이유가 바로 이 때문입니다. 폴라리스가 맥스웰급 델타 컴프레션을 가지고도 여전히 맥스웰급 대역폭 효율성을 입수하지 못한 이유기도 하고요.) 크지만 레이디언은 그런 여유가 전혀 없습니다. 이러한 4K 텍스쳐팩은 유저들이 만드는 고해상도 텍스쳐 MOD와 마찬가지 개념입니다. 효율성은 전혀 고려하지 않고 그냥 무식하게 때려박은것입니다. 영상압축으로 따지면 콘솔쪽 스트리밍 텍스쳐 기술이 수작업으로 인코딩되는 블루레이 방식이라면 피씨쪽 텍스쳐팩은 자동 변환 인코더로 대충 떼우는 PC 인코더랄까요? 블루레이 인코딩은 redundancy가 있는 구간을 항상 고려를 해서 압축을 하지만 자동 인코더는 그렇지 못하니깐요.

    같은 x86 방식 CPU라고 해서 다 같은게 아닙니다. 인텔 코어/젠 같은 IPC/캐쉬 위주 아키텍쳐가 있고 불도저/펜티엄4/셀 같은 클럭 스피드 데몬 방식이 있고 재구아/아톰 같은 패러럴리즘 위주의 저성능 아키텍쳐가 있고 그렇습니다. 젠은 캐쉬가 한층 발전했기 때문에 면적적인 면에서도 재구아보다 클수 밖에 없으며 클럭 스피드 또한 훨씬 빠르기 때문에 전성비에서도 불리합니다. 콘솔 게임 그래픽 프로그래머이신 세비씨도 "게임 AI 용도로 따진다면 쿼드코어 3.0GHz 젠은 8코어 1.6GHz 재구아보다 그렇게까지 의미 있는 우세를 점하지 못할것이며 젠이 8코어를 사용하게 된다면 콘솔 APU에 부적합할 정도로 높은 TDP를 가질것입니다."라고 재구아/아톰의 코어빨을 더욱 선호하셨습니다. 이건 어쩔수 없는게 코어를 두배로 늘리면 TDP 증가 역시 두배로 되지만 클럭 스피드를 두배 증가할때마다 1.5배의 TDP 증가가 있기 때문입니다. 그러니 전성비 측면에선 다중 코어가 클럭빨보다 훨씬 유리합니다. 인텔의 2천만원짜리 제온 파이 (나이츠 랜딩) 또한 72개의 에어몬트 아톰을 사용합니다. 뒤지는 성능을 커버치기 위해 벡터유닛을 4배 더 확장된 AVX-512를 활용합니다. 360도 이러한 벡터 기능을 활용했으며 재구아도 이런 기능이 추가되었다면 지금보단 상황이 더 나았을겁니다.
  • 이재용을감옥으로 2016/12/08 19:47 # 삭제

    텍스처 용량과 대역폭을 헷갈리시는 듯 합니다. 텍스처 용량이 커져도 램만 많이 먹지 대역폭은 별 차이 안 납니다.
    말씀하신 스트리밍은 통합 메모리 쓰는 게임기에선 HDD -> 램 경우밖에 없겠네요. 게임 진행에 따라 필요한 텍스처만 하드에서 읽어 오는 건가요? 말씀하신 가상 텍스처는 가상 메모리를 텍스처에 쓴 건데, 엄청 느립니다. 그리고 게임기의 이런 가상 텍스처는 라데온에서 하드웨어로 지원하는 기능이고, 지포스도 언제부턴지 지원합니다. 따라서 PC에도 불칸과 DX12부터 잘 써먹고 있습니다. VRAM이 작은 경우에도 메인 램에서 불러오니, 하드에서 불러오는 게임기와는 비교할 수도 없이 빠릅니다.
  • 이재용을감옥으로 2016/12/08 19:51 # 삭제

    콘솔 게임 그래픽 프로그래머이신 세비씨도 "게임 AI 용도로 따진다면 쿼드코어 3.0GHz 젠은 8코어 1.6GHz 재구아보다 그렇게까지 의미 있는 우세를 점하지 못할것이며 젠이 8코어를 사용하게 된다면 콘솔 APU에 부적합할 정도로 높은 TDP를 가질것입니다."라고 재구아/아톰의 코어빨을 더욱 선호하셨습니다.
    //
    검증한 결과가 있나요? 이 주장은 지금도 거의 검증할 수 있습니다. 젠은 인텔 코어 아키텍처와 비슷하다고 알려져 있으니, 재규어와 코어의 AI 성능을 비교하면 됩니다.
    간단한 계산으로 보면, 젠은 IPC와 클럭이 재규어의 2배이니 코어당 성능은 4배 입니다. 따라서 재규어 8코어는 젠 2코어 만으로도 비슷한 성능이 나옵니다. 암달의 법칩을 생각하면, 실제 성능은 젠 2코어 쪽이 높은 때가 많겠습니다만. 그런데, 재규어 쪽 성능이 더 높다는 주장을 하려면, 실제 검증이 필요합니다.
  • isotoxin 2016/12/08 20:29 #

    그거야 과거 싱글쓰레드 위주 방식일때의 AI 방식이죠. 요즘 AI는 군중 AI 방식으로 처리하기 때문에 IPC/클럭빨보다 코어빨이 훨씬 더 중요합니다. IPC로 계산할땐 2배 격차가 나지만 IPC식 계산은 한가지 맹점이 있습니다. 바로, 오늘날 게임의 AI 패턴은 지극히 단순하다는 점입니다. 연산능력에서 젠이 앞서봐야 AI 프로그래밍 패턴 자체가 너무 단순하다는 점입니다. 대신 개떼로 병렬화가 되었기 때문에 심지어 GPGPU로조차 떼우는게 가능할 정도입니다. AI 연산 능력에서 CPU보다 훨씬 후진 GPGPU도 충분히 소화가 가능하다는 뜻은 연산 위주보단 다중 병렬화가 더욱 유리하다는 뜻입니다. 그래서 명목상 격차는 2배지만 실제 격차는 1.5에 더 흡사하다는 뜻입니다. AI가 더욱 똑똑해지면 그 땐 연산력이 중요해지겠지만 안타깝게도 오늘날 게임들은 여전히 스크립트 방식의 의존도가 매우 큽니다. 게임플레이 프로그래머들 또한 AI 똑똑하게 만들어봐야 플레이어들 열만 받아서 멍청하게 만들었습니다. PC게임쪽에도 비슷한 개념이 있습니다. 게임플레이 코드의 연산능력은 저사양 CPU를 촛점으로 만들어지기 때문에 초고사양 i7 사봐야 상당수의 성능이 낭비가 되버립니다.

    AI가 병렬화가 가능하다는 의미는 그만큼 AI 프로그래밍이 바보라는 의미기도 합니다. 원래 진짜 AI는 브랜칭 예측이 엄청나게 중요하기 때문에 (그뜻은 싱글코어 고클럭, 높은 IPC, 엄청난 캐쉬빨의 의존성이 굉장히 중요해진다는 뜻입니다.) 병렬화의 장점을 가장 받을수 없는 분야로 알려지기도 했습니다.

    아, 참고로 IPC와 성능격차는 정비례하지 않습니다. 하스웰 같은 경우도 하이퍼쓰레딩을 쓰지 않으면 재구아와의 IPC 격차는 1.5배 밖에 나지 않습니다. 그러니 본인의 그러한 계산방식이 정공법이다라고 생각하기에는 그런 정비례 계산방식에 반하는 벤치마크가 더 많습니다. 그러니 실제 검증을 저한테만 요구하는건 당연히 이치에 맞지 않습니다.
  • RuBisCO 2016/12/10 01:09 #

    하나 지적하면 하즈웰과 재규아 코어간의 IPC차이는 겨우 1.5배가 아니라 이미 2배가 넘습니다. 하이퍼쓰레딩을 동원하지 않더라도 이미 한 쓰레드에서 가용한 자원의 격차가 2배가 넘어갑니다. 단순 정수유닛과 명령 발행능력 차이가 그만큼 납니다. 거기에 재규아 코어의 경우는 캐시가 하프클럭으로 작동하기 때문에 또 페널티를 안고 갑니다. 단순 코어빨이라 해도 4C8T로도 동클럭에서 이미 8C 재규어를 압도합니다. 그리고 CPU는 겨우 게임 AI 용도로만 사용되는게 아닌게 또 문제죠.
  • isotoxin 2016/12/10 03:00 #

    다들 그런식으로 계산하니까 B3D 게임 프로그래머들도 주먹구구식으로 IPC 계산한다며 짜증을 내는것입니다. 그래서 유독 특히 IPC와 실제 벤치마크와는 정비례적인 연관성이 전혀 없다는걸 말씀드리는것이었습니다. 하이퍼쓰레딩과 터보까지 깔면 실제 벤치에서의 둘의 격차는 단순히 2배 이상이 아닌 4배까지 납니다. 캐쉬도 하스웰이 훨씬 좋고 OoO (아웃오브오더) 버퍼도 하스웰이 훨씬 좋고 슬립 스테이트도 훨씬 좋죠. 하지만 하스웰의 필살기들을 전부 다 빼버리면 어떻게 될까요? 그게 아톰인거죠. 순수 IPC 비교를 할려면 아톰과 하는것이 제일 정확한것입니다.

    IPC가 계산에 별 의미 없는 또 하나의 사례가 있죠. 지난 세대 엑스박스360에 쓰였던 파워피씨 CPU입니다. 벤치에 따르면 PPC CPU의 IPC는 재구아의 약 0.2배라고 합니다. 그렇다면 재구아가 5배의 IPC 우세가 있죠? 하지만 엑박360은 클럭이 두배니 실제로 둘의 차이는 2.5배라고 칩시다. 근데 실제 콘솔 개발에 있어선 파워PC의 VMX128 벡터 익스텐션이 굉장히 재구아와 흡사해지는것이 가능하다고 합니다. 재구아도 128비트 벡터 연산 작업이 있지만 PPC쪽이 이너 루프쪽에 더욱 밀접하게 있습니다. 그러니 이러한 벡터 연산 익스텐션 때문에 실질적인 IPC적 차이의 밸런스가 변동되는것입니다.

    코어로 따지면 360은 3코어, 재구아는 8코어니 전체적인 IPC적 격차는 6.5죠. 하지만 물리 엔진 벤치 떠보면 3~3.5배 차이 밖에 안납니다. 또 다른 셈이죠.

    http://abload.de/img/ubisoft-cloth-simulatbjes0.jpg

  • RuBisCO 2016/12/10 15:19 #

    당연히 연산유닛 전반을 IPC 계산에 넣고 하는 이야깁니다. 스펙시트 상의 벡터 유닛의 사이클당 연산능력은 같은선에서 비교하기 위해 AVX 명령으로만 제한해도 재규어는 하즈웰의 2분의 1 수준에 그칩니다. 심지어 FMA 명령이 들어가면 그보다 격차는 더 벌어집니다. 유휴자원이 발생한다고 해도 SMT로 쥐어짜기 때문에 격차가 좁혀질 여지가 적습니다. 물론 정수파이프라인도 사정은 동일합니다. 동클럭에서 코어숫자가 두배인 경우라면야 확실히 별 우위가 없거나 열세일 수도 있을겁니다만 3.0Ghz 대 1.6Ghz라면 두배의 코어로도 커버하지 못하는 격차가 발생합니다. 복잡한 연산이건 단순한 연산이건 사정이 둘 다 똑같아요. 병렬화 지향이라고 해도 이를 통헤 얻어낸 전체 쓰루풋의 우위가 충분할때 의미가 있는겁니다. 사실 투입된 자원의 양은 하즈웰 코어 하나가 어지간한 모바일 코어 4개 쑤셔넣고도 남는 덩치에 소비전력도 그만큼 빡센만큼 비교를 할땐 코어 숫자를 두배로 비교하는게 아니라 네배로 비교해야합니다만 어쨋든요.
    (사실 이게 핵심인데 재규어 코어 8개 넣을 생산비용과 소비전력으론 투입을 더 늘리지 않으면 겨우 하즈웰급 코어는 두개밖에 못넣기에 차라리 안넘어가는게 낫기는 합니다.)
  • W16.4 2016/12/10 21:00 # 삭제

    IPC와 싱글 스레드 성능을 헷갈리시는 듯 합니다. IPC = Instruction Per Clock 클럭당 성능이고, 싱글 스레드 성능은 1 스레드로 낼 수 있는 성능이고 IPC * 클럭 입니다.

    재규어 8코어와 젠 2코어 전체 성능에 더해 원가와 전력 까지 비슷하면, 젠 2코어가 나을텐데요. 스레드 나누기도 훨씬 골치가 덜 아프고, 암달의 법칙에 의한 제한도 훨씬 덜합니다.
    위에도 적었지만, 게임기 CPU는 거꾸로 싱글 스레드 성능이 점점 중요해집니다. 병렬화가 쉬운 작업은 많이 GPU로 넘어가고, CPU에 남는 작업 가운데 병렬화가 어려운 비율이 올라갑니다.
  • 로리 2016/12/10 21:08 #

    http://eggry.egloos.com/4124380

    콘솔쪽에 대해서 PC적으로 생각하는 분들이 좀 있는.. 여기 계란소년님 포스팅의 리플을 보심이..이건 참 챗바퀴 도는 느낌이네요.
  • RuBisCO 2016/12/11 00:56 #

    W16.4//코어 갯수 차이가 4배가 되면 이야기가 많이 달라집니다. 쓰루풋에서 우위를 차지할 수 있으니까요. 어떻게든 하드웨어에 맞추어 최적화가 가능한 콘솔에서 이건 꽤 중요합니다. 물론 너무 쓰루풋에 집착하다가 CELL 같은 멍텅구리가 나오기도 합니다만 반대로 그렇게 망가지지만 않는다면 비용이 제한적인 콘솔은 최대의 쓰루풋을 얻는게 중요합니다.
  • isotoxin 2016/12/11 02:34 #

    정말로 IPC와 싱글 쓰레드 당 성능을 혼동하시는군요. IPC 계산할땐 AVX와 FMA 같은 익스텐션은 포함되지 않습니다. AVX 같은 익스텐션끼리 비교하면 엑스박스 360도 벡터 벤치에서 재구아의 0.9배 수준이 나오는 경우도 있습니다. 하지만 실제 제논의 CPU의 IPC는 0.2뿐이죠.

    http://www.anandtech.com/show/6974/amd-kabini-review/5

    애넌드테크의 쿼드코어 카비니 (1.5GHz) vs. 듀얼코어 2020M (아이비브리지 ULB 1.8GHz)의 비교입니다.

    피씨마크 (82% 격차)
    시네벤치 싱글쓰레드 (256% 격차)
    시네벤치 멀티쓰레드 (30% 격차)
    x264 HD (패스1) (205% 격차)
    x264 HD (패스2) (40% 격차)

    이렇게 벤치결과가 서로 중구난방인데 IPC라고 할수 있는 일관성이 전혀 없습니다. AVX2와 FMA를 벤치마크에 포함시킨다면 4배 IPC를 가지는거고 AVX2/FMA를 뺀다면 82% 격차가 나니깐요. 근데 아이비는 2.6GHz 터보부스트를 한다는걸 감안해야겠죠. 아이비의 클럭을 카비니로 평준화 시킨다면 피씨마크에서의 격차는 4%까지 좁혀지는 시나리오가 존재하게 됩니다.

    아이비와 재구아는 이러한 차이가 있습니다.

    SIMD : 아이비 (싸이클 당 2x8 부동소수점) / 재구아 (싸이클 당 2x4 부동소수점)

    유지 가능 스케일러/벡터 uops : 아이비 (싸이클 당 4개) / 재구아 (싸이클 당 2개)

    SMT : 아이비 (하이퍼쓰레딩을 통해 2쓰레드 씩 입수 가능) / 재구아 (하나씩만 가능)

    싸이클 당 SIMD flop : 싱글 코어 아이비 = 듀얼 코어 재구아

    캐쉬로 가면 재구아가 좀 더 유리한 부분도 있습니다.

    L1 캐쉬 = 재구아 (32KB + 32KB = 재구아 코어 혼자 독차지 가능) / 아이비 (32KB + 32KB = 두개의 쓰레드끼리 공유해야 함)

    L2 캐쉬 = 재구아 (듀얼 코어 당 1MB 공유) / 아이비 (2 쓰레드 당 256KB)

    즉, 메모리 병목 현상이 생길땐 아이비브리지는 지금까지 명시된 두배 이상의 성능을 내지 못합니다. 하지만 캐쉬가 대단히 빠르고 또 빵빵한 L3 캐쉬가 있기 때문에 어느 정도 회복이 가능합니다.

    아이비브리지는 또 SMT를 응용한 실시간 작업량 할당이 가능하죠. 한쪽 쓰레드가 캐쉬 미스를 당해버리면 바로 다른 코어가 모든 uop (4개 전부)를 150+ 사이클 동안 입수하는것이 가능합니다. 콘솔 최적화가 가장 많이 된 게임조차도 캐쉬 미스가 좀 있기 때문에 이런 경우엔 하이퍼쓰레딩이 이득이 됩니다. 하지만 하이퍼쓰레딩은 양날의 검이기도 합니다. 비록 한쪽 쓰레드가 캐쉬 미스가 생기는 동안 다른쪽 쓰레드가 모든 자원 입수가 가능하다고 하나 L2 캐쉬만큼은 여전히 분리되어 있습니다. 즉, 단일 쓰레드 혼자서 두개의 캐쉬를 액세스 하는것이 불가능하기 때문에 256K 밖에 접근을 못하며 애초에 싱글 아이비의 캐쉬 크기가 듀얼 재구아를 합친것보다 더 적기 때문에 이러한 상황에선 가용 가능한 L2 캐쉬 사이즈가 절반으로 감소되기 때문에 결국 캐쉬쪽에서 병목현상이 생겨서 캐쉬 쓰레슁이 생기며 하이퍼쓰레딩으로 얻은 이득보다 캐쉬 쓰래슁으로 인한 손실이 더 커지게 되니 결과적으론 손해입니다. 처리 가능한 성능 리소스는 두배로 증가됬지만 정작 캐쉬는 절반으로 감소되었으니 거기서 또 캐쉬를 나눠야 한다는것입니다.

    그리고 싸이클 당 부동소수점 SIMD 성능은 아이비가 재구아보다 2배 더 많이 구동하는게 가능하나 싸이클 당 정수 SIMD 연산 능력만큼은 재구아와 동급입니다? 왜? 8비트,16비트,32비트의 경우엔 정수 SIMD 레인의 숫자가 동급이기 때문입니다. 그렇기 때문에 이 경우엔 2개의 재구아 코어가 아이비의 두배 쓰루풋을 가지는게 가능해집니다. 하지만 이 점을 보완하기 위해서 하스웰서부턴 256비트 정수 연산 기능을 추가하게 됩니다. 하스웰이 FMA를 통해 FLOP을 두배 더 개선시키는건 맞는데, 실제 코드에서 FMA가 100%인 경우는 전혀 없습니다. 50% 이상인 경우가 더 흔하며 이 정도로도 충분히 좋은건 맞죠. 64비트인 경우에도 아이비/하스웰이 재구아보다 낫습니다. 재구아의 64비트 SIMD 레인은 풀스피드로 구동이 되지 않습니다. 그러니 과학용 소프트웨어 구동시엔 굉장히 유리하겠지만 게임 같은 경우는 64비트 이상의 SIMD 연산을 별로 안쓰니 게임 용도론 딱히 의미 없습니다.
  • RuBisCO 2016/12/11 05:34 #

    Instruction Per Cycle. 사이클당 처리 명령이란것은 정확히 알고 있습니다. 하즈웰 코어는 사이클당 4개의 x86 명령을, 재규아 코어는 사이클당 2개의 x86 명령을 디코드합니다. Excution Unit들도 마찬가지로 곱절만큼의 차이가 있는데, 하즈웰 코어는 4개의, 재규아코어는 2개의 ALU를 갖추고 벡터 유닛도 마찬가지로 재규아 코어는 동일한 AVX 명령에서 하즈웰 코어에서 소요되는 것 보다 두배의 사이클이 소요됩니다. 그리고 하즈웰 코어는 이 곱절의 연산유닛을 활용하기 위해서 아까 필살기라고 말씀하신 두둑한 자원들을 갖추고 있기까지 합니다. 해서 부스트가 없는 동일한 클럭에서 비교하게 되면 이렇게 됩니다.
    http://www.notebookcheck.net/Intel-Core-i3-4012Y-Notebook-Processor.102741.0.html
    http://www.notebookcheck.net/AMD-A-Series-A4-5000-Notebook-Processor.92867.0.html
    비등한 명령으로 제한해도 상황이 크게 달라지지 않는다는 이야깁니다. 다만 다수의 벤치마크에서 이상적인 ILP를 확보하진 못하기 때문에 하이퍼쓰레딩 없이는 코어당 성능을 두배를 완전히 초과하지는 못합니다만 거의 두배에 가깝습니다. AVX를 지원하지 못하는 시네벤치, AVX를 지원하는 긱벤치, 일반적인 시나리오에 더 가까운 브라우저 벤치마크인 옥테인이나 크라켄은 JS 한계상 단일쓰레드에 한정되는데 결과는 마찬가지로 그만한 격차가 있습니다.
    덤으로 캐시 이야기를 하자면 하즈웰은 캐시의 레이턴시가 훨씬 작습니다. 이게 게임에선 꽤 강한 장점이죠.
    P.S 2020M은 부스트 지원이 없는 펜티엄 모델입니다. 2.4Ghz 베이스 클럭.
  • isotoxin 2016/12/13 16:08 #

    그리고 그 정도 레이턴시로 못 비빕니다. 클럭 격차가 엄청나기 때문입니다. 샌디브리지도 밥캣과의 클럭 격차가 두배 이상 나는 경우엔 레이턴시가 비슷해집니다. 인텔도 캐쉬 개선만으론 레이턴시 개선시키는데 한계가 있어서 하이퍼쓰레딩을 만든거고요, 하이퍼쓰레딩의 최대 강점은 레이턴시를 줄이는게 아닌, 레이턴시를 감추는것인데 그게 캐쉬 트래슁이 나면 제대로 힘을 못씁니다. 그래서 해당 벤치에도 두배 이하의 격차가 나는 경우가 있는 이유가 그러한 이유 때문입니다. 그 반면에 싱글 쓰레드 위주라던가, 비효율적 코딩이라던가 그런 경우엔 슬립 스테이트,OoO 버퍼가 더 큰 하스웰이 두배 이상의 힘을 내며 AVX/PMA까지 가세하면 3~4배 가까운 경우까지 벌어지는 경우가 생기는것입니다. 2020M은 애넌드테크에서 클럭을 내렸습니다.
댓글 입력 영역
* 비로그인 덧글의 IP 전체보기를 설정한 이글루입니다.



2018 대표이글루_it