---- 19/01/12 내용추가: RX580을 사용한 eGPU 구축 

---- 19/03/02 내용추가: Windows 10 빌드1809에서 RX580을 사용한 eGPU 구축

---- 19/03/18 내용추가: eGPU 인클로져 내의 스토리지로 부팅하고 AMD 그래픽카드로 배틀그라운드 플레이하기

---- 19/05/24 내용추가: macOS Security Update 2019-003 설치 이후 인클로져 스토리지 부팅 불가

---- 19/06/28 내용추가: Windows 1809 설치방법 재구성 및 실사용 성공

---- 19/07/20 내용추가: AMD 그래픽카드 드라이버 다운그레이드로 윈도우 업데이트 정상적으로 가능


아.. 솔직히 이 포스팅을 적어야 할지 많은 고민을 했다.

왜냐하면 macOS에서 삽질한 정도보다 훨씬 쉽게 인식을 해서 말이다. (엔비디아 그래픽카드 한정)


여러 커뮤니티를 보면 썬볼3 브릿지 하나를 disable해야 내장이 나온다 어쩌구

연결해도 안되더라 뭐 이런 이야기들이 진부했는데 난 정말 깔끔하게 끝났다.


나의 eGPU를 위한 Bootcamp 설정 과정은 이러하다.

1. Windows 설치 (via Boot Camp Assistant)

2. 드라이버 설치 및 시스템 종료

3. eGPU연결

4. Windows로 부팅

5. 출력된 모니터로 드라이버 설치

6. 시스템 종료 및 eGPU 제거

7. 부팅 시 Windows 동그라미 빠르게 1번 돌고나서 eGPU 연결

8. 사용 가능


정말 간단하다. 맥은 엄청난 삽질을 했는데 윈도우는 위 절차를 따르면 외장,내장 다나온다..

부트캠프 단순 부팅도 eGPU없이 잘 된다.


자, 또 빼먹어선 안될 벤치마크 순서이다.



파스 점수는 1060 논오버 점수인 13000점에서 약간 밑도는 11000점 정도이고, 오버 때리면 그냥 1060 성능 나온다.

(정말 발군의 성능... 이지퓨쓰면 지퓨 성능 70~80%밖에 안나온다는 사람 어디갔어!!!)





장치관리자에서 정상적으로 물려 있는 모습을 확인할 수 있다.

특히나, 썬더볼트 컨트롤러에 잘 물려있는 모습!! (PCIe Controller x4)



파스를 돌리는 겸 온도체크를 위해 GPU-Z를 썼다.



모니터 3개가 전부 정상적으로 출력 가능하다.

물론 연결하는 타이밍만 잘 맞추면.



마미손?!



배그 대기실에서 101프레임 정도 뽑아주신다.

옵션도 전혀 타협안하고 쓰던대로 썼는데 프레임 떨어지는 느낌이 하나도 없다.



배그 켰을 때 온도다.

eGPU 온도가 문제가 아니고 CPU온도가 문제다. 아무래도 랩탑이다 보니 발열은 어쩔 수 없는 듯.



요건 아이들시 온도. 참고용!!



비행기 136프레임 나온다. 정말 잘나옴..

(옵션: 텍스쳐, 거리보기, 안티 울트라 외 전부 최소 옵션)


결론은 대성공이다.

배그 자체를 노트북 환경에서 충분히 즐길 수 있다는 것 자체가 이미 충분한 기술 발전이 이뤄졌다고 볼 수 있을 것 같다.

대신 문제는 온도... 정말 저 온도 보고있자니 내 맥북이 망가질 것 같아 맘이 넘 아프다...ㅜㅜ


(아래부터는 AMD 그래픽카드 한정으로 설정 방법입니다.)


---- 19/01/12 내용추가: Windows 10 빌드1809에서 RX580을 사용한 eGPU 구축


AMD RX580을 친구로부터 구했다. 맥에 사용해 보려고 (그렇게 잘 붙는다길래)

그런데 정말 정직하게도 '맥'에만 찹쌀떡마냥 잘 붙는다. 윈도우는 그냥 어떤 방법을 써도 내장이 죽어버리는 문제가 ㅠㅠ


잡는 단계는 아래와 같다.

1. Bootcamp로 윈도우 설치 (via Bootcamp Assistant)

2. 드라이버 모두 설치하고 재부팅

3. AMD 사이트에서 글카 드라이버 다운받고 압축풀기 (설치 X)

4. 무선인터넷 자동연결 해제

5. egpu를 핫 플러긴하고 디바이스 잡힌거 드라이버 수동 설치 (장치관리자 - 드라이버 업데이트 - packages내 드라이버 폴더 지정)

6. AMD 글카 잡힌거 확인

7. 연결한 채로 재부팅

8. 내장 그래픽 코드 43으로 오류나면서 내장 사용 불가하고 코드 43, 터치바 사용 불가. 나머지 사용 가능.

9. 외장 글카 출력 정상이니까 이제 사용하면 됨

* 외장 글카 셋업 한번 진행하면 egpu없이 윈도우 부팅이 불가함 (화면 표시가 안됨)


DSDT override하는 방법도 있긴 한데 적용하면 egpu없이 부팅만 가능할 뿐 핫플러그인 작동 안함, 내장글카 사용 불가, 터치바 사용가능.




---- 19/03/02 내용추가


Windows 1809 (최신 빌드)에서는 AMD eGPU환경에서 배틀그라운드가 작동하지 않는 것을 확인했다.

그래서 빌드 순서를 조금 달리해서 설치하니 해결됨


이전과는 다르게 터치바도 잘 작동하고, dGPU(Radeon Pro)만 작동하지 않는다.


1. Windows 설치

2. Bootcamp driver 설치

3. DDU로 그래픽 드라이버 삭제

4. 시스템 종료하고 AMD eGPU연결

5. bootcampdrivers.com에서 드라이버를 받고 설치 [중요]

6. 화면이 black-out될 수 있는데 약 5분 정도 대기 후 강제종료/재부팅, 정상이라면 그냥 재부팅

7. AMD eGPU에 연결된 모니터만 정상 출력되는데, 장치관리자에서 PCIe Controller (x16)을 비활성화 [중요]

8. 배틀그라운드가 잘 실행되는지 확인


최신 드라이버에서 장치 충돌이 발생하는 것 같다. 계속 BSOD (KERNEL_SECURITY_CHECK_FAILED)가 발생하여 실행되지 않음.



---- 19/03/18 내용추가: eGPU 인클로져 내의 스토리지로 부팅하고 AMD 그래픽카드로 배틀그라운드 플레이하기

(엔비디아 & AMD 그래픽카드 공통, AMD 그래픽카드 기반 설명)


필자는 게임을 하되 내장그래픽으로 돌릴수도 없는 게임과 관련 소프트웨어가 맥북 내부에 설치되는것을 원치 않았다.

용량 낭비같기도하고... 파티셔닝된 윈도우만 해도 60~120기가씩이나 되니 말이다.

맥북을 512기가를 사놓고 낭비를 하는것은 내 입장에서 너무나 싫다. (차라리 1TB를 샀으면 이런 걱정을 안할 것을...)


다른 방법(iGPU활성화 및 eGPU-iGFX 가속)으로 내장까지 출력이 가능하도록, 내장 디스플레이로 eGPU를

사용 가능하도록 할 수 있다. 다만 이 방법은 EFI bootloader를 바꿔야 하며 나는 그럴 생각이 없었다.

최대한 설치하는 Windows에서 tricky한 방법을 사용하고 싶었다.


혹시나 OMEN Accelerator 환경에서 인클로져 내장 Storage로 부팅하며 상황에 따라 유연하게

eGPU를 사용하려는 분들이 있을 것 같아 남긴다.

나도 참 많은 삽질을 했지만.. 가능하다면 방법을 알려야지.

이 방법은 eGPU 인클로저 내부에 Storage 기능이 지원되는 모든 제품에 사용할 수 있다.


이 방법은 윈도우 업데이트를 하지 못하도록 제한한다. (배틀그라운드 플레이를 위한 방법이기 때문)

배틀그라운드를 플레이하지 않으시는 분들은 7번의 사항을 제외하고 윈도우 업데이트를 할 수 있도록 진행하면 된다.

eGPU에 연결된 외장 모니터만 사용이 가능하고, 외장 모니터가 없는 경우 아래 방법은 진행이 불가하다.


1. Parallels등의 가상화 솔루션을 통해서 윈도우를 설치하고 Windows 10 1809 (최신)빌드와 1803빌드를 받는다.

   맥 환경에서 Bootcamp Assistant를 이용해 윈도우용 드라이버를 다운받고 DDU와 AMD 드라이버 최신 버전을 다운받는다.

2. 가상화 솔루션의 USB redirection기능을 이용해서 인식된 eGPU 인클로져의 USB Storage를 가상 머신에 리디렉션한다.

3. rufus를 이용해서 Windows To Go를 인식된 디스크에 설치한다.

4. Windows 1809부터는 UASP 스토리지로부터의 부팅에 문제가 있다.

   (Reference: https://www.tenforums.com/general-support/123835-1809-windows-go-still-broken.html)

   그러므로 1803빌드의 WppRecorder.sys를 DISM를 통해 추출해야 한다.

   WppRecorder.sys의 경로는 Windows\System32에 존재한다.

5. WppRecorder.sys를 Windows To Go가 설치된 파티션 내에 System32로 복사한다.

   이 때, 권한 문제가 발생하는데 파일 소유권을 TrustedInstaller로부터 이전 후 권한을 부여하면 덮어쓸 수 있다.

6. 윈도우로 부팅한다. 단, 이후 진행 작업에서 인터넷에 연결되어 있으면 안되므로 랜선이 연결되어 있다면 제거한다.

7. OOBE가 끝나고 바탕화면이 나오면 gpedit.msc를 입력, Windows 관리에서 Windows update의

   "자동 업데이트 구성"을 사용 안함으로 설정한다. [선택]

8. Bootcamp driver를 설치한다. 대부분의 드라이버는 잘 설치되는데, Apple Virtual USB Controller에서 설치를 멈춘다.

   USB 컨트롤러가 초기화를 해야 하는데, 컨트롤러 아래에 메인OS가 설치된 드라이브가 있기 때문에 hangup이 발생하는 것.

   5분 정도 기다렸다가 더 이상 프로그래스 바가 움직임이 없다고 생각되면 강제종료(전원버튼 꾹)한다.

   혹시나 화면이 나갔다면 약 10분 정도 두고 강제종료한다.

9. 부팅을 시도하고 화면이 안들어오면 계속 강제종료한다.

   3회 강제종료 후 윈도우로 부팅을 시도하다 보면 복구 도구로 진입되는데, 이때 안전모드로 진입한다.

10. DDU로 그래픽 드라이버를 제거한 후 리부팅한다.

11. 최신 AMD 그래픽카드 드라이버를 압축 해제한다. (엔비디아의 경우 11~13과정 무시하고 드라이버 패키지 실행 후 설치)

12. 장치 관리자를 통해 압축 해제한 폴더에서 그래픽카드 드라이버를 직접 설치한다. (패키지 설치파일로 설치 불가)

13. 폴더 내 설치파일 중 ccc2_install.exe가 있는데 이를 실행하여 설치한다. (AMD Settings)

14. 외장모니터 출력이 정상적으로 된다. 이제 인터넷을 연결하고 사용하면 된다.

15. 장치 관리자를 보면 알 수 없는 장치 3개만 남은 것을 볼 수 있는데, 특별한 이유가 아니면 드라이버를 설치할 필요가 없다.

   Apple T2 Chip, NVMe controller, NVMe storage로 총 3개이므로 내장 SSD를 사용하고 싶다면 폴더를 지정해

   NVMe Controller만 수동으로 설치해주면 된다.


[중요] 배틀그라운드의 BattleEye 솔루션이 게임 시작 시에 특정 환경에서 블루스크린을 뜨게 하는데,

        윈도우 업데이트를 시도하면 문제가 발생한다. 배틀그라운드를 할 거라면 절대로 윈도우 업데이트를 하지 말 것.


[중요] GPU0에 우선순위가 있는 프로그램을 실행할 경우 장치 관리자에서 시스템 장치 > PCIe x16 컨트롤러를 비활성화한다.

        사용할 수 없는 GPU를 사용하려고 하는 문제가 가끔 씩 존재하는 듯 하다. 이를 방지하기 위한 차원임.


매번 문제 생길 때 마다 다시 이 작업을 하기 너무 힘드니까, 고스트(Ghost64)로 백업을 해 놓는 것을 추천한다.

단, UEFI환경에서 고스트는 부트로더를 복원하지는 못한다.

bcdboot를 통해 boot entry를 만들어 주면 쉽게 해결이 가능함. (마지막 파티션이 EFI 파티션이므로 참고할 것)


이제 한동안 eGPU를 건들 일은 없을 것 같다. 약 3주간 안정적으로 잘 작동하고 있고 게임 성능도 출중하다.

모두 원하는 구성으로 eGPU를 사용하시기 바란다. 끝.


---- 19/05/24 내용추가

현재 2018년형 맥북 기준 Security Update 2019-003을 설치 시 eGPU 인클로져 내에 설치된 스토리지에서 OS를 읽어올 수 없는 문제가 발생하고 있다. 해결 방법은 확인 중에 있음.


맥북 펌웨어 업데이트가 함께 진행된 패치인데, Bootable USB Configuration 관련 설정이 변경되어 문제가 발생하고 있다.

일단 부트캠프를 내장 SSD내에 작은 용량으로 설치해서 사용중.


---- 19/06/28 내용추가

기존 빌드가 정상작동 하지 않는 탓에 테스트빌드, 1903 모두 시도해보았는데 게임마다 프레임도 불안정하고 배틀그라운드가 아예 안켜진다. (블루스크린)

그래서 기존 1809빌드를 아래와 같은 방법으로 다시 시도해서 성공했다.


1. 3/18 추가내용대로 진행

2. 단, 드라이버 설치 시 이더넷 연결하지 않고 부트캠프의 칩셋 드라이버만 설치 (Intel/Chipset)

3. 장치 관리자에서 PCI Express Controller x16 비활성화

4. Bootcamp 드라이버 설치

5. 설치 중 x16이 다시 살아나면, 즉시 사용안함 설정 (RP560X를 설치하지 않기 위함)

6. 안잡힌 드라이버는 수동으로 잡아주기

7. AMD 그래픽 드라이버 설치


새로운 방법으로 설치한 것이 정상적인지, 파스 점수도 정상적으로 집계된다.



---- 19/07/20 내용추가

윈도우 업데이트가 배틀그라운드 BattleEye서비스와 충돌이 있는 것으로 예상했는데, 구 드라이버 + 최신 빌드 (1903)으로 플레이가 되는 현상(!)을 확인했다.

AMD 그래픽 드라이버 (Adrenalin 19.1.1) 버전으로 다운그레이드하고 설치하면 배그가 정상적으로 실행된다.


이로써 윈도우 업데이트 문제도 해결되어서 골든 빌드 완성!!


사양

MacBook Pro 15' 2018 (i7-8850H, Radeon RP560X)

HP OMEN Accelerator GA-1029kl (Thunderbolt 3)

Sapphire RX580 8GB NITRO+

Samsung 850 EVO 256GB (as OS Drive)