1. 개요
Resizable Base Address RegisterPCI Express 인터페이스에서 지원하는 기술로, PCI Express의 베이스 어드레스 레지스터(Base Address Register)의 규격을 임의대로 확장하는 기술을 의미한다. 인텔과 NVIDIA는 표준 명칭 그대로 사용하고 있지만, AMD는 SAM(Smart Access Memory)이라는 이름으로 사용하고 있다.[1]
2. 상세
2.1. 작동 원리
베이스 어드레스 레지스터는 PCI Express 장치의 메모리 매핑과 관련된 레지스터로 메모리 사용에 지대한 영향을 미친다. 기존에는 이 베이스 어드레스 레지스터의 IO 버스 문제로 한 번에 접근할 수 있는 메모리 크기가 256 MB(메인보드상에선 비트로 표기되어 Above 4G Decoding)까지였지만, Resizable BAR를 이용하면 GPU의 BAR 구성을 임의대로 수정해 더 많은 메모리를 매핑할 수 있게 해준다. 최대로 수정할 경우는 현재 GPU에 달려있는 그래픽 카드 메모리 전체에 접근할 수도 있다. 이 때문에 최신에 가까운 GPU일수록 권장하며, 인텔 Arc A-시리즈 처럼 Resizable BAR 기술 이후에 출시한 GPU는 활성화가 기본사항일 정도다.[2] 또한 CPU가 GPU 메모리에 접근하는 기능이라 인텔과 AMD에서 해당기능을 적극적으로 밀고 있다.2.2. 성능 효과
CPU가 그래픽 카드 메모리의 모든 영역에 접근할 수 있게 함으로써 병목 현상을 해소하며 CPU의 그래픽 램 접근이 자유로워져서 그래픽 카드 활용 능력이 개선된다. 다만 주의할 점은 Resizable BAR는 활성화만 했다고 SW 처리능력이 드라마틱하게 개선되는 공짜 점심이 아닌 것이다. 따라서 마치 멀티코어 프로세서 처럼 그래픽 카드, CPU, 보드, 게임까지 모두 대응해줘야 비로소 성능 효과를 제대로 볼 수 있다.대신 지원하게되면 확실한 성능 상능 효과가 있다. 하단에 서술되듯 초기엔 평균 5% 내외의 상승이였으나 상단에 서술되듯 현재는 40% 이상의 성능 증가 효과도 보여준다.
2.3. 역사
인텔 코어 2세대 즉 UEFI 도입 초창기에 등장한 규격이었으나 아직 Above 4G Decoding이 도입전이였고 그 당시엔 그래픽카드 제조업체도 지원에 시큰둥 했기 때문에 개인사용자들은 사용하지 못했다.AMD는 2020년 11월 라데온 RX 6000 시리즈 런칭 시기부터 'Smart Access Memory'라는 이름으로 먼저 널리 알려진 뒤, NVIDIA는 2021년 2월 RTX 3060 런칭 시기부터 표준 명칭인 'Resizable BAR'로 알려지고 나서 펌웨어 업데이트로 먼저 나온 지포스 30 시리즈 한정으로 확대해 지원하기 시작했다.
CPU와 메인보드도 이에 맞추어 공식적인 지원을 시작했는데, AMD는 라이젠 5000 시리즈부터 먼저 지원했으나, 추후 펌웨어 업데이트로 라이젠 3000 시리즈도 지원하게 되었고, 인텔은 2021년 초부터 8세대 이후 코어 i 시리즈 한정으로 지원하기 시작했다.
2.4. 첫 등장 때 효과와 소비자들의 반응
등장 초창기엔 평균 5% 최대 15% 의 전체 평균 FPS 향상 + 미세한 끊김을 줄여주는 효과[3]가 있다. 다만, 대부분의 구형 게임들은 해당 기술을 이용할수 있게 구현이 되어 있지 않으므로 프레임 차이가 전혀 없거나 오히려 프레임이 하락하는 경우도 있다. 다만 신규로 발매되는 AAA급 타이틀들은 대부분 Resizable BAR과 Smart Access Memory를 지원하기에 최신 AAA급 패키지 게임을 위주로 한다면 켜는 것이 좋고 DX 11 이전의 구형 게임들 위주로 플레이를 한다면 끄는게 좋다.[4][5]그러나 이마저도 최근에 발매된 유명 고사양 게임들 위주로 지원해줄 뿐, 발매된 지 오래된 인기 저사양 게임들은 지원할 필요성을 못 느껴서인지 여전히 지원하지 않아서 Resizable BAR 성능 효과의 평균치를 깎아 먹은 탓에, 인기 게임만 플레이하는 사용자들한테는 시큰둥한 반응이 나타날 수밖에 없다.
AMD가 라이젠 + 라데온 조합으로 먼저 널리 알렸기 때문에 한국에서는 라라랜드 드립이 유행했으나, 초기라서 저평가 받았다. 나중에 NVIDIA와 인텔도 대응하고 몇 달 뒤는 성능 향상 비교하는 리뷰들이 나오면서 SAM의 성능 효과가 그나마 더 컸던 것으로 재평가되었지만, 대다수의 사용자들은 그래봤자 둘 다 도토리 키 재기로 보여서 잊어진 기능처럼 취급하는 반응은 여전했었다.
또한 중소기업 제조사에서 만드는 메인보드들은 비표준으로 메모리 지원용량을 늘려놨기 때문에 하나의 64GB 이상 용량의 메모리를 장착시 Above 4G Decoding와 Resizable BAR를 꺼야한다.
2.5. 현재 반응
이러한 호불호 반응은 초창기엔 Resizable BAR 지원 SW가 적어서 발생하는 일로 초창기 하이퍼스레딩(SMT) 도입시기 반응과 비슷하다. 멀티코어 SW가 대중화된 현재의 하이퍼스레딩은 필수요소가 된 만큼 향후는 Resizable BAR 기술도 필수요소가 될 것으로 보이며, 특히 2020년대 이후로 CSM 모드가 삭제된 UEFI 클래스 3이 기본이 되고 있어 이러한 현상은 가속화될 것으로 보인다.실제로 2023년 전후로는 Resizable BAR의 성능 향상폭이 워낙커서 이를 지원하지 않는 게임에도 강제로 활성화시키는 방법#[6]이 기사화 되는 등# Resizable BAR가 필수 항목으로 자리잡았다.
대용량 메모리 호환 이슈 역시 중소기업 보드제조사들이 억지로 지원용량을 늘리면서 생긴 이슈로 MSI 같은 중견 보드제조사들은 Resizable BAR를 안꺼도 된다며 듣보잡 업체들을 비웃기도 했지만 실제로 MSI 제품도 ASUS제품도 국내 온라인 게임을 할때는 Resizable BAR를 활성화시 프레임이 소폭 하락한다.#
규격 자체는 PCIe 2.0에 도입된 기술이라 지원하지 않는 구형 그래픽카드와 보드의 펌웨어를 개조해서 Resizable BAR를 활성화 시키기도 한다.#1, #2[7].
RTX 20 시리즈와 RX 400, RX 500 시리즈에도 강제로 활성화를 위한 트윅들도 있다.튜링폴라리스
이처럼 성능 향상이 커 구형 하드웨어들도 지원하기 위한 커스텀 펌웨어와 커스텀 드라이버들이 여럿 개발 중이다.
3. 사용 방법
- 메인보드 펌웨어(UEFI 만 해당, BIOS는 구형 펌웨어라 지원하지 않는다.)를 Resizable BAR를 지원하는 공식 펌웨어나 커스텀 펌웨어로 업데이트 한다.
- 자신의 그래픽카드가 Resizable BAR가 나오기 전에 출시한 그래픽카드면 펌웨어를 업데이트 한다. AMD는 RDNA2 세대부터, NVIDIA는 지포스 RTX 3060 후기 시리즈부터 처음부터 설치되어 있으므로 생략한다. 3060 Ti, 3070, 3080, 3090 초기형 제품군의 경우 바이오스 업데이트가 필요하다. Resizable BAR VBIOS가 2021년 3월 30일부터 배포된 점을 고려하면 2021년 4월 생산분부터 기본 적용되었다고 보면 된다.
- 메인보드 회사에서 배포한 최신형 칩셋 드라이버( Resizable BAR 또는 SAM를 지원하는 드라이버)를 설치 한다 (재부팅)
(의외로 신경 안써서 '스마트 엑세스 메모리'가 비활성화 되는 경우가 많다.) - 컴퓨터를 시작할때 UEFI에 들어가서 Above 4G Decoding를 Enabled로 설정하고 Resizable BAR 또는 SAM을 Auto또는 Enabled로 설정한다. 커스텀 펌웨어면 해당 항목이 없기 때문에 상단 항목에 소개되어있는 툴을 사용해 수동으로 보드가 지원하는 Decoding 크기를 찾아야한다.
- ASUS 나 에즈락 보드같은 대다수의 보드들에 경우 바이오스 호환을 위한 UEFI의 CSM이 호환성 모드로 작동하고 있으면 역시나 작동을 안할 수 있다. 이때는 Auto로 설정하거나 아예 비활성화를 하면 해결된다.
- Resizable BAR를 지원하는 그래픽카드 드라이버를 설치한다. 자신의 그래픽카드의 Resizable BAR를 지원하는 그래픽 드라이버가 없으면 커스텀 드라이버를 쓰거나 레지스터에서 강제로 활성화 한다.
4. 지원하는 하드웨어
4.1. GPU
- NVIDIA GeForce 30 시리즈 이상 : 비공식적으로는 튜링 아키텍처 즉 RTX 20 및 GTX 16 시리즈 부터 사용가능하다.#
- AMD Radeon Rx VEGA 시리즈 이상 : 비공식적으로는 Radeon Rx 300 시리즈 이상 활성화가 가능하나 하드웨어적으로만 가능하고 이를 활용할 드라이버가 나오지 않아 사실상 사용이 불가능하다. 현재 커스텀 펌웨어와 커스텀 드라이버들로는 Radeon RX 400 시리즈와 Radeon RX 500 시리즈가 개발중이나 아직 윈도우에서는 그래픽 메모리가 8GB 이상이여야 정상 작동이 가능하고 그 이하는 리눅스를 써야한다. #
- 인텔 ARC Alchemist 시리즈 이상 : 필수수준으로 사용하지 않으면 다이렉트11게임에 경우 최대 40%이상 성능하락이 된다.
4.2. CPU
- Ryzen 3000 시리즈[8] 이상
- 인텔 코어 i 시리즈/2세대 이상 - 단 인텔에서는 인텔 코어 i 시리즈/10세대 이상의 CPU와 메인보드를 권장하며, 제조사에서 공식으로 Resizable BAR를 지원하는 펌웨어를 배포하는 경우는 인텔 코어 i 시리즈/7세대 부터다.
4.3. 메인보드 칩셋
공식 지원하는 메인보드는 모델별로 다르며 구형 칩셋인 경우 베타버전 바이오스로 지원하는 경우도 있다. 대표적으로 Z370중 워크스테이션급 보드인 ASUS WS에선 베타 버전 바이오스에서 지원하며, MSI는 B360 계열 칩셋에서 베타 버전으로 지원 중이다.다만 규격 자체는 UEFI가 적용된 P67 즉 인텔 코어 2세대부터 지원하니 해당 보드에 모딩된 커스텀 펌웨어를 설치하면 쓸수있다.
아래는 제조사에서 Resizable BAR를 지원하는 공식 펌웨어를 배포하는 경우다.
- AMD X399
- AMD A320 (최신 바이오스 업데이트 시)
- AMD 400 시리즈 칩셋 이상
- AMD TRX40 칩셋 이상
5. 지원 OS
UEFI 클래스 3+ 이상의6. 여담
국내외를 막론하고 하드웨어 커뮤니티 사이트는 물론이고 하드웨어 제조사들도 'Resize BAR' 또는 '리사이즈 바'로 줄여 쓰는 경우를 아주 흔하게 볼 수 있다[13]. 다만 AMD에서 먼저 도입한 기능인 만큼 초창기 지원보드들은 AMD 방식인 S.A.M으로 표기된다.특히 인텔 아크 제어 센터에 경우 아예 크기 조정 Bar로 발번역하는 바람에 헷갈려하는 사람도 있다.
[1] CPU 및 GPU 모두 AMD일 때 한정으로 SAM이라는 명칭을 사용하며, 아닐 경우 표준 명칭을 그대로 사용한다.[2] 실제로 ARC A시리즈는 이 Resizable BAR 기능 유무에 따라서 40%가 넘는 성능차이를 보여주기도 한다.[3] 평균 FPS보다 1% Low FPS, 0.1% Low FPS가 떨어지는 걸 줄여줌.[4] 리사이저블 바의 효과는 게임마다 다르기에 각종 리뷰 들을 찾아봐야 한다. 이런 리뷰들을 찾아보고 자신이 플레이하는 게임에서 향상이 있는 경우는 설정하는 게 좋다.[5] 국내 온라인 게임들은 오히려 역으로 프레임 하락이 발생하는 경우가 많으니 신중하게 설정할 것.[6] NVIDIA 그래픽카드 전용 AMD용은 별도로 존재함[7] (첫번째 댓글 참고) 다만 Above 4g decoding도 없거나 사실상 안 되는 구닥다리 보드는 실제 가능한 최대 사이즈를 시행착오로 일일이 알아내야 해서 불편하다.[8] AGESA V2 PI 1.2.0.1 이상의 바이오스 적용시 활성화[9] Asrock 의 Fatal1ty Z270 Gaming K4 한정으로 에즈락 포럼 베타 바이오스에서 지원[10] EVGA를 포함한 일부 브랜드에서 베타 바이오스로 지원[11] 대부분 지원하나 일부 보드는 현 시점에도 지원 바이오스가 나오지 않았다.[12] 개인 사용자들은 윈도우 10 이상이면 사용 가능하다고 생각하면된다.[13] 대표적으로 3대 메인보드 제조사 ASUS, MSI, GIGABYTE가 전부 Resize BAR라는 표기를 사용한다.