VRAM 설정 가이드¶
BC-250은 CPU와 GPU가 동일한 16GB 메모리를 공유합니다. 이를 "Unified Memory Architecture" 또는 UMA라고 합니다.
하지만 모든 PC 소프트웨어는 CPU와 GPU가 별도의 메모리 풀을 갖는다고 기대하므로, 시스템은 메모리 사용을 RAM과 VRAM으로 분할합니다.
VRAM 분할 변경¶
스톡 3.00 BIOS는 메모리를 8GB RAM과 8GB VRAM으로 분할합니다.
RAM/VRAM 분할 제어는 일반적으로 사용자에게 노출되지 않습니다. 하지만 변경하는 방법이 있습니다.
Memcfg 유틸리티¶
실행 중인 Linux 시스템에서 프로그램을 실행하여 VRAM 분할을 설정할 수 있습니다: fanoush/bc250_memcfg.
BIOS를 다시 플래싱하지 않으므로 초보 사용자에게 더 안전한 선호 옵션입니다.
git clone https://github.com/fanoush/bc250_memcfg
cd bc250_memcfg
make
sudo ./bc250memcfg UMA_SIZE 512
변경을 적용하려면 재부팅하세요.
Linux 프로그램이지만 변경은 CMOS에 저장되므로 한 번만 실행하면 되고 매 부팅마다 실행할 필요가 없습니다.
모드 BIOS에 대한 참고¶
BIOS 설정에서 VRAM 분할 옵션을 언락하려면 BIOS를 플래싱해야 한다는 내용을 읽었을 수 있습니다. 이전에는 옵션을 얻기 위해 필요했지만 지금은 구식입니다.
위 유틸리티 때문에 VRAM 설정을 변경하기 위해 BIOS를 플래싱할 필요가 없습니다.
동적 VRAM¶
512MB VRAM 분할이 필요에 따라 RAM을 VRAM 풀로 자동 재할당하고, 게임을 종료하면 VRAM을 RAM으로 되돌리는 "동적 할당" 모드라고 흔히 말합니다.
실제로 모든 VRAM 분할 설정이 동적입니다! 512MB 모드만 특별한 것은 매우 작은 최소 VRAM 할당을 갖는다는 점입니다.
위 VRAM 분할 설정이 실제로 하는 것은 VRAM으로 사용되는 최소 메모리량을 설정하는 것입니다. 512MB VRAM 분할에서는 게임이 실행되지 않을 때 거의 전체 16GB 시스템 메모리가 일반 RAM으로 사용 가능하고, 8GB 분할에서는 시스템 메모리의 거의 절반이 일반 RAM으로 사용되지 않습니다. 하지만 두 모드 모두 각각 512MB와 8GB를 넘어 동적으로 VRAM을 사용합니다.
그래서 최대 VRAM은 얼마인가요?
기본적으로 Linux는 (VRAM에 전용되지 않은) RAM 용량의 절반까지 동적 VRAM으로 사용합니다. 이는 위에서 선택한 VRAM 분할에 추가로 사용됩니다. 이 총합을 초과하면 디스플레이 드라이버가 크래시합니다.
이 정보를 바탕으로 각 VRAM 분할의 기본 최대 VRAM 사용량(크래시 전):
- 512 MB 분할 → 최대 VRAM 8.25 GB
- 4 GB 분할 → 최대 VRAM 10 GB
- 6 GB 분할 → 최대 VRAM 11 GB
- 8 GB 분할 → 최대 VRAM 12 GB
512MB VRAM 분할로 크래시 해결¶
512MB VRAM 분할의 기본 최대 VRAM 사용량이 8.25 GB이므로, 게임이 8GB 이상 VRAM을 사용하도록 설정되면 한계를 넘어질 수 있습니다. 이것이 512MB VRAM 분할 사용 시 8GB VRAM 분할에서는 괜찮은 게임이 크래시하는 주요 원인입니다.
512MB VRAM 분할을 유지하면서 해결하려면 동적 VRAM 한계를 원하는 값으로 덮어쓰는 Linux 커널 부팅 파라미터가 있습니다.
ttm.pages_limit=valuevalue는 다음 공식으로 계산한 숫자로 바꿉니다:- ttm.pages_limit =
(Desired max dynamic VRAM in GB) * 1024 * 1024 / 4
예를 들어 최대 동적 VRAM을 12GB로 늘리려면 ttm.pages_limit=3014656을 사용합니다.
이것은 8GB VRAM 분할과 동일한 최대 VRAM 사용량이며, 게임 종료 시
거의 모든 VRAM을 일반 RAM으로 되돌립니다.
커널 파라미터 적용¶
커널 부팅 파라미터 적용은 배포판에 따라 다릅니다:
- Bazzite:
- sudo rpm-ostree kargs --delete=ttm.pages_limit --append=ttm.pages_limit=3014656 --reboot
- CachyOS:
- CachyOS는 설치 설정에 따라 여러 부트로더 중 하나를 사용할 수 있습니다.
- CachyOS Boot Manager Configuration 참고
- 기타:
- 배포판의 부트로더를 확인하고 해당 문서를 참고하세요.
어떤 VRAM 분할이 최선인가?¶
위 ttm.pages_limit 커널 파라미터와 함께 256MB 또는 512MB를 사용하면
게임 크래시를 피하면서 가능한 한 많은 RAM을 사용할 수 있습니다.
하지만 메모리 재할당이 덜 필요해 약간 더 나은 성능을 보인다는 보고가 있습니다. 확정적인 데이터는 없으므로 실험보면 됩니다.
VRAM 분할과 관계없이 게임 설정에서 총 VRAM 사용량을 8GB 이하로 유지하는 것이 좋습니다.
낮은 VRAM 분할에서는 게임이 8GB 미만 VRAM을 사용하면 메모리가 일반 RAM 풀로 돌아가서 RAM이 많이 필요한 게임이 swap을 덜 사용합니다. 성능과 스터터링 개선에 도움이 됩니다.
8GB VRAM 분할에서는 게임이 8GB 미만 VRAM을 사용하면 메모리가 낭비됩니다. 8GB 분할로 해당 VRAM은 일반 RAM으로 사용할 수 없습니다.