Computer

맥북(맥프레) eGPU 사용기 2) OS 설정 및 벤치마크 편

로볼키 2016. 10. 27. 15:50

맥북(맥프레) eGPU 사용기 1) 하드웨어 설정 편

맥북(맥프레) eGPU 사용기 2) OS 설정 및 벤치마크 편

맥북(맥프레) eGPU 사용기 3) 남은 이야기 + 그래서 오버워치는

 



주의! 

이 글을 따라해서 일어날 수 있는 일에 대해 

저는 어떠한 책임도 지지 않습니다.

USE AT YOUR OWN RISK!




이 모든 시작이 오버워치 때문이었고, 오버워치는 윈도우용이므로, 맥북이지만 윈도우 먼저 설명 갑니다.

(물론 반쪽짜리로 쓰고 싶진 않기에, OS X도 활용해야죠. 아래에 설정법 있습니다.)

간혹 부트캠프냐 물어보는 분들이 계셔서 강조합니다. 당연히 부트캠프 윈도우 얘깁니다. 

편의상 AKiTiO Thunder2 PCIe Box에 GTX970 그래픽카드를 장착한 이것을 eGPU라고 지칭하겠습니다.


세팅 방법은 노트북 및 그래픽카드에 따라 달라질 수 있습니다.

그리고 발생하는 증상 역시 달라질 수 있습니다. 






윈도우에서 eGPU 설정하기 (맥프레 13인치 - 윈도우 8.1 64비트 기준)


순서 

1) 윈도우로 부팅

2) eGPU 연결

3) 그래픽카드에 맞는 드라이버 설치 

4) 시스템 종료 후 eGPU 연결 해제, 재부팅 중 eGPU 연결 (아래 설명/영상 참고)



GTX970 드라이버를 설치하려는데, 드라이버 설치 프로그램에서 먼저 그래픽카드를 인식 시도하고, 인식이 안 되면 드라이버 설치가 안 되더군요? 

eGPU를 썬더볼트 포트에 꽂았는데 인식이 딱 되길래 드라이버 설치. 





드라이버 설치 완료!


하지만 장치관리자에는 위와 같이 떠도 디스플레이가 감지가 안 되길래 재부팅했는데, 부팅 진행이 안 됩니다. 옵션 키 누르고 있어도 OS 선택 화면이 안 뜨고 검은 화면만 나와요.


헉.



그리고 십수 번의 강제종료 및 재부팅을 거친 후에 해결법을 알아냈는데, 

나중에 보니 이미 eGPU 먼저 구성했던 분들이 몇몇 글에 써뒀더군요. 


그 해결법은... 

OS 선택 화면에서 윈도우 선택 후 4~5초 지나고 (윈도우 8.1 부팅 구슬이 한 번 싹 사라지면) 그때 썬더볼트 포트에 꽂으면 됩니다. 현재까지 100% 됩니다.





전원 버튼 누르고 Option 키 누르고 있으면 이 화면이 뜨죠. 아직 eGPU를 꽂으면 안 됩니다.





사진이 허접한데 저 구슬들이 한 번 나와서 돌고 사라지고...를 반복하죠.

한 번 구슬이 전부 사라지면 그때 eGPU를 꽂습니다. 위 Windows를 선택한 후 약 4~5초.

그러면 구슬 넘어가고 사용자 이름 뜨는 화면부터는 외장 디스플레이가 인식됩니다.


물론 부팅 시간은 컴퓨터마다 다른 점을 유의하시고, 최소한 저 구슬이 사라지고 사용자 이름 뜨는 화면 전에는 꽂아야합니다. (저의 부트캠프 윈도우 8.1은 예전엔 구슬이 2번도 안 사라지고 딱 뜨더니, 요즘은 구슬 한 3~4번 사라지고 부팅됩니다.)


사용자 이름이 보이면 이미 늦은거에요.


자 그렇게 부팅을 하면, 외장 디스플레이는 GTX970으로, 내장 디스플레이는 Iris 6100으로 작동합니다.

윈도우+P 키를 이용해서 내장, 외장 디스플레이를 같이 쓰는 것도 가능합니다. 

단, 같은 화면을 내장/외장으로 출력하는 '복제'는 안 되네요. 

화면 확장은 가능.






이 방법은 동영상으로 보시죠.




HWMonitor 프로그램의 화면으로, 그래픽카드의 다양한 정보를 확인할 수 있습니다.



그리고, 현재 작동중인 (꽂혀있는) eGPU 썬더볼트 케이블은 절대 그냥 뽑으면 안 됩니다. 

그냥 뽑으면 블루스크린 봅니다.

그래픽카드에 꽂혀있는 HDMI 케이블(이나 디스플레이포트 등)은 상관 없는데, 썬더볼트 케이블은 꼭 시스템 종료 후 뽑아야 합니다.

(아래 주의해야 할 점 참고)






OS X에서 eGPU 설정하기 (맥프레 13인치 - OS X El Capitan 10.11.6 기준)


순서 

0) 루트리스 해제 

1) OS X로 부팅

2) automate_eGPU 스크립트 설치

3) 시스템 종료, eGPU 연결 후 재부팅



이제 맥에서 설치해봅니다.

아직 macOS 아니고 OS X El Capitan, 10.11.6 기준.

macOS sierra에서는 네이티브로 eGPU를 지원한다는 얘기도 있는데, 안정성이 별로다란 얘기가 있어서, 

정상적으로 쓰는 후기가 더 올라오기 전까지는 엘 캐피탄에 머무르기로 마음먹어봅니다. 


 

일단 저는 구형 NTFS 프로그램 때문에 루트리스를 끄고 쓰는 중이라 바로 스크립트 설치가 가능했지만,

아마도 루트리스 작동중에는 정상적인 설치가 불가능한 것으로 보입니다.

http://macnews.tistory.com/3408 여기 참고해서 루트리스를 끄고 작업 진행해주시면 되겠습니다.



그 후 automate_eGPU 링크에 들어가서 오른쪽 Clone or download 클릭 -> Download ZIP 으로 파일을 받습니다. 

터미널에서 설치하고, 썬더볼트 포트에 eGPU를 꽂고 전원버튼 눌러서 부팅하면 잘 뜹니다. 끝!


해당 링크 글에서는 이 (스크립트로 설치하는) 프로젝트가 discontinued 됐다는데, 저는 오히려 링크를 건너서 들어간 최신 방법(부트로더에서 선택)으로는 eGPU가 인식이 안 되네요.





단순 스크립트 실행이기에 설치 방법은 엄청 간단합니다.

다운받은 파일의 압축을 풀고, 터미널을 실행하고 해당 디렉토리로 이동.

chmod +x automate-eGPU.sh 로 스크립트 실행 권한을 부여하고, 

sudo ./automate-eGPU.sh 로 설치 스크립트를 실행합니다.


그러면 설치 스크립트가 그래픽카드 및 OS를 자동 감지, 설치 드라이버를 다운받도록 하며,

Do you want to download this driver? 에 y 누르고,

Do you want to install? 에 y 누르면 설치 쭉 되고 끝!


시스템 종료 후 eGPU 연결하고 맥 부팅 진행하시면 됩니다. 


이전 사용기들에 직접 커널파일 수정하고 eGPU 설정 집어넣고 하는 부분이 있던데, 

이젠 그렇게까지 하지 않아도 됩니다!






내장/외장 그래픽 모두 잘 인식되는 것을 확인할 수 있습니다. 




부팅 방법은 특별한 것 없이, 전원이 들어온 eGPU를 꽂은 후 부팅 버튼을 눌러주시면 됩니다.





사용시 주의해야 할 점



- 플러그 인 플레이, 또는 핫 플러깅 지원 안 함!!!  


쉽게 말하면  eGPU의 연결/해제를 위해서는 무조건 시스템을 종료한 상태에서 진행 해야만 합니다.

저의 경우 맥 / 윈도우 동일합니다.

eGPU 없이 쓰다가 시스템 종료 없이 eGPU를 꽂는 경우, 100%의 확률로 멈춥니다. 

맥은 커널패닉 아니면 그냥 화면이 얼어버리고, 윈도우는 7 이후로는 쉽게 마주하기 힘든 블루스크린을 봅니다.







서로 다른 블루스크린.
마지막 메시지는 eGPU 사용중에 eGPU를 뺐을 때였고, 
위에 두 개 중 하나는 eGPU 없이 사용하다가 eGPU를 꽂은 때입니다. 



중요하니까 다시 강조합니다. 무조건! 시스템 종료 후에 꽂거나 빼야 합니다.




- 부팅하기 전에 맥/윈도우 부팅을 결정해야 합니다.


 전원버튼을 누른 후 Option 키를 눌러서 OS 선택하는 메뉴는, eGPU가 꽂혀있으면 나타나지 않습니다.  

 오히려 이 경우 화면에 아무 내용도 뜨지 않고, 먹통이 됩니다. 

 즉 맥으로 부팅하려면 부팅하기 전에 미리 eGPU를 꽂아두고 전원버튼만 눌러서 부팅,

 윈도우로 부팅하려면 부팅하기 전에 eGPU 케이블을 뽑아두고 전원+Option 키로 윈도우 선택 후 eGPU 연결

 이렇게 하셔야 합니다. 




- 맥북 덮개 닫고 쓰기(클램쉘 모드) 지원 안 함


 덮개를 닫아도 내장 디스플레이 백라이트만 꺼질 뿐, 실제 디스플레이가 꺼지지 않습니다. 

 잠자기 들어가지도 않구요, 당연히 외장 디스플레이 전환도 안 됩니다. 

 맥북 닫고 외장 디스플레이만으로 작업하고 싶으신 분이 프로그램을 이용해서 내장 디스플레이를 아예 비활성화 시키고 쓴다는 글은 봤네요.




- 내장/외장 디스플레이 동시 사용 시, 내장은 내장그래픽 외장은 외장그래픽 사용!


 각각 사용하는 그래픽카드가 다릅니다. 그러므로 프로그램을 실행할 때 어디서 실행했는지에 따라 달라지는데, 외장 디스플레이에서 실행하는 프로그램은 외장 그래픽카드 (eGPU)를 사용합니다. 

 저는 eGPU를 쓰는 경우엔 내장 디스플레이 단독으로 사용하는 경우 없이, 외장 디스플레이를 같이 사용하는 경우에만 한정하고 사용기를 쓰고 있고 실제 사용 패턴도 그러합니다. 

 eGPU + 내장 디스플레이의 조합은 다른 사용기를 찾아보시는 것을 권장합니다.


 




자 이제 벤치마크 들어갑니다. 


1) 윈도우: Windows 체험 지수

 

 윈도우 8.1부터 컴퓨터 정보 내 체험 지수가 사라졌지만, 커맨드 창에서 명령어를 입력해서 확인하는 방법이 있고, 

 간편하게 링크 의 스크립트를 실행해서 이전처럼 컴퓨터 정보에서 표시되게 할 수 있습니다.

 저는 진작에 저 스크립트를 설치해놨기에, 이미 기존에 갖고 있던 정보가 있습니다. 





기존에 가지고 있던 점수입니다. 그래픽/게임그래픽이 매우 낮은 수준인 것을 알 수 있죠.





그리고 eGPU 장착 후 다시 측정한 체험 지수.

그래픽은 5.6->6.9, 게임 그래픽은 5.9->6.9로 상승하였습니다.

다른 (데스크탑에 장착한) GTX970 사용기들은 7.9도 잘 보이던데, eGPU는 바로 메인보드와 연결되지 않고 AKiTiO Thunder2 PCIe Box와 썬더볼트 케이블로 연결한 것이기에 속도 저하가 있어서 그렇지 않나 싶습니다.


데스크탑이 없으므로 카드의 문제를 확인할 수는 없겠네요.

아, 고주파음은 발생합니다. (...) GTX970 종특이라는듯.




2) 윈도우: 동영상 인코딩


 샤나인코더 x64 3.1버전 을 사용, 인코딩할 동영상 파일은 약 300MB의 파일 두 개. 

 파일 A는 4K 30fps, B는 1080p 60fps 파일로 둘 다 아이폰 SE로 촬영한 MOV 파일입니다. 

 MOV->MP4로 화질 + 음질은 재인코딩, 프레임 및 해상도는 원본 유지. 

 

 설정에 별다른 의미는 없습니다. 그저 가장 마지막으로 쓰던 모드로 테스트했을 뿐...





설정에서 OpenCL 가속을 설정할 수 있습니다. eGPU 사용시 OpenCL 가속을 체크하고 설정합니다.





NVIDIA GeForce GTX970을 선택해줍니다.

내장그래픽 사용할 때엔 Iris 6100 Graphics가 뜨지만, 인코딩 에러로 OpenCL 가속을 사용할 수 없었습니다.

그래서 내장그래픽에선 위 OpenCL 가속에 체크를 해제하고 진행했습니다.


인코딩 결과

 A 인코딩시 eGPU 1분 32초, 내장 1분 34초

 B 인코딩시 eGPU 1분 55초, 내장 1분 57초.


 eGPU가 내장그래픽 대비 약 2초의 성능 향상이 있습니다.

 원본 파일들이 짧아서 시간 차이가 덜 났을수도 있는 것 같고, 향상 효과는 분명히 있네요.





3) OS X에서 Novabench 프로그램으로 GPU Test



맥용 벤치마크 프로그램이 뭐가 있나 검색해서 바로 나온 Novabench. 무료입니다. 





메뉴에 GPU Test가 있어서 이걸 여러 번 반복하여 테스트해봤습니다.





이런 식으로 프레임 체크를 하고...





결과는 이렇게 표시됩니다.


그래서 테스트 결과 내장그래픽은 보통 초당 100 Frames 안으로 나오고, 

eGPU로 테스트하면 초당 490 Frames 전후로 나옵니다.

어림잡아 다섯 배 성능 향상이군요.








자 그래서 이제는 다음 글,

맥북(맥프레) eGPU 사용기 3) 남은 이야기 + 그래서 오버워치는?

으로 이어집니다.







728x90