메인 메모리와 GPU 메모리의 최적 분할은 무엇입니까?


73

Raspberry Pi의 비디오 메모리에 128MB, 64MB 또는 32MB를 할당 할 수 있다는 것을 읽었습니다.

이 컴퓨터의 주요 사용 사례가 교육적이라는 점을 감안하면 가벼운 파이썬 스크립트와 웹 브라우징을 실행할 것입니다. 32MB의 메모리로만 전환하면 기능이 손실 될 가능성이 있습니까?

3D를 사용하거나 비디오를 재생하고 싶지 않습니다.


2
교환 성 을 조정하십시오 : D
earthmeLon

1
잠깐, 이건 42 표입니다. 질문이 아니라 답입니다!
모자를 가진 사람

@Krysztof Adamski의 답변에 따르면 config.txt에서 다른 총 메모리 크기에 대해 특정 분할을 지정하여 동일한 카드가 배치 될 때 적절한 분할을 생성 할 수 있습니다. 다른 RPis-배포판을 준비 할 때 유용합니다.
SlySven

답변:


58

비디오 재생과 같이 그래픽으로 많은 작업을 수행하지 않는 한 눈에 띄는 차이가 없을 것으로 예상됩니다.

그러나 실행중인 응용 프로그램 및 사용자 기대치에 따라 성능 제한이 달라 지므로 최적의 설정을 측정하기가 어렵습니다.

가장 좋은 방법은 실험입니다.

분할을 변경하려면 사용중인 펌웨어에 따라 두 가지 방법이 있습니다. 가능 하면 최신 펌웨어가 있는지 확인하십시오 . 어떤 이유로 든 업데이트 할 수없는 경우 아래 두 옵션을 모두 포함했습니다.

새로운 펌웨어 (2012 년 10 월 이후)

  • /boot/config.txt다음 줄을 편집 및 추가 또는 편집하십시오.

    gpu_mem=16
    
  • 값은 , 또는 16일 수 있으며 GPU에 사용 가능한 RAM의 양을 나타냅니다.64128256

이전 펌웨어 (2012 년 10 월 이전)

비디오 메모리를 변경 하려면 이미지 start.elf/boot/파티션 에서 파일 을 교체해야합니다 . 가능한 .elf파일은 /boot/Pi 의 디렉토리에 있어야합니다 . start.elf파일을 다른 파일 중 하나로 바꾸어 전환 합니다.

세 가지 메모리 모델이 있으며 다음은 Raspberry Pi 토론 게시판 에서 가져온 권장 사항 입니다 .

  1. Linux 데스크톱 배포판 용 비디오 224MB RAM 및 32MB VRAM 또는 비디오를 재생할 필요가없고 3D를 렌더링 할 필요가없는 무거운 (비 GUI) 응용 프로그램.  
  2. 비디오를 재생하거나 3D 효과를 원하는 데스크탑 배포판의 경우 192MB RAM 및 64MB VRAM (기본값).  
  3. 광범위한 멀티미디어를 수행하거나 3D 렌더링 게임을하는 응용 프로그램 및 게임용 128MB RAM 및 128MB VRAM.  

 그리고 하나 더 :

거의 제로 그래픽 전력을위한 240MB RAM 및 16 VRAM. 화면을 렌더링하기에 충분한 GPU 메모리가 있지만 그다지 많지는 않습니다. GUI 이외의 추가 성능 향상이 필요할 때 사용하십시오.


새로운 512MB 모델에 대한 답변을 업데이트했습니다.
Jivings

자막 은 메모리 요구를 증가시키는 것으로 보입니다 . 자막이 포함 된 1080p 동영상의 경우 64MB로 충분하지 않았습니다.
Raphael

51

RAM은 다음 두 가지 이유로 Linux 성능에 매우 중요합니다.

  • 캐시. Linux는 대부분 여유 메모리없이 실행됩니다. 응용 프로그램에서 일부 메모리를 사용하지 않으면 캐시 속도가 향상되어 속도가 빨라집니다. 따라서 어떤 메모리도 낭비되지 않습니다. 응용 프로그램에 더 많은 메모리가 필요한 경우 캐시가 해제되므로 캐시로 인해 더 많은 RAM이 필요한 응용 프로그램이 실행되지 않습니다. 물론 캐시를 많이할수록 더 좋습니다.

  • 오늘날 많은 응용 프로그램 (특히 데스크탑 응용 프로그램)을 실행하려면 많은 메모리가 필요합니다. 오늘날 대부분의 데스크톱 시스템 (또는 스마트 폰)은 Rapsberry Pi보다 훨씬 더 많은 메모리를 가지고 있습니다. 예를 들어 웹 브라우저는 가벼워도) 더 큰 웹 사이트를 열 자마자 수십 MB의 메모리를 사용합니다.

  • 각 응용 프로그램마다 약간의 메모리가 필요합니다. 따라서 더 많은 응용 프로그램을 실행할수록 더 많은 메모리를 사용합니다.

따라서 항상 가능한 많은 ARM 메모리를 원합니다. 그러나 GPU는 원하는 기능에 따라 자체 요구 사항이 있습니다.

256MB 버전

RAM이 256MB 인 구형 RaspberryPi의 경우 4 가지 분할을 사용할 수 있습니다.

  • 240 / 16 -mimial GPU 메모리에서 ARM이 얻을 수있는 최대 RAM 크기 (240MB)입니다. 3D 그래픽이나 하드웨어 비디오 가속이 필요하지 않은 일반 컴퓨팅에 가장 적합합니다. 1920x1200x16bpp 프레임 버퍼 해상도를 처리하기에 충분한 메모리가 있습니다. 32bpp도 작동하지만 GPU에 사용 가능한 공간이 매우 적으므로 권장하지 않습니다.

  • 224 / 32-240 /16 분할에 찬성하여 더 이상 사용되지 않습니다. 3D 및 하드웨어 비디오 디코딩이 내장되어 있지만 실제로 사용할 메모리가 충분하지 않기 때문에 사용에 별다른 의미가 없습니다. 240/16 분할에 문제가 있거나 최고 해상도에서 32bpp 프레임 버퍼를 사용하려는 경우가 아니면 나중에 삭제 될 수 있습니다.

  • 192 / 64- 하드웨어 비디오 가속 또는 3D 그래픽을 사용하려면 64MB 이상의 GPU 분할이 필요합니다. 최고 해상도에서 하드웨어 가속 비디오를 재생하거나 텍스처와 같은 작업을 위해 많은 GPU 메모리가 필요한 경우 GPU 메모리가 충분하지 않을 수 있습니다.

  • 128 / 128- 최대 RAM GPU를 얻을 수 있습니다. 고해상도의 3D 그래픽 카드 및 하드웨어 가속 비디오 재생을 위해 많은 메모리가 필요할 때 사용하십시오. 이 분할은 RaspBMC가 제대로 작동하거나 문제없이 omxplayer로 fullHD 비디오 콘텐츠를 재생하는 데 필요합니다.

512MB 버전

새 버전의 RaspberryPi에는 512MB의 RAM이 있습니다. 이 버전을 위해 설계된 4 개의 추가 스플릿이 있습니다.

  • 16분의 49664분의 448 - 같은 240/16192/64256메가바이트에 대한 분할 각각 그러나 ARM 할 수 256메가바이트 더 많은 RAM과 함께. GPU는 16 MB / 64 메가 바이트 RAM을 가지고 있기 때문에, 모든 한계는 240/16/ 192/64여전히 적용됩니다.
  • 384 / 128-256MB의 128/128 분할과 유사 합니다. 모든 그래픽 칩 기능을 갖추어야하지만 합리적인 양의 ARM 메모리가 있어야합니다. 이것은 아마도 현재 가장 보편적 인 부분 일 것입니다.
  • 256 / 256- 큰 질감과 비슷한 것들과 같이 실제로 필요한 경우 보너스 그래픽 카드 메모리. 256MB의 ARM 메모리는 이전 RaspberryPis에서 가질 수있는 것보다 크지 만 여러 경우에이 메모리가 사용될 것이라고는 생각하지 않습니다.

동적 분할

새로운 버전의 펌웨어 패키지는 대부분의 start_*.elf파일을 제거 start.elf하고 start_cd.elf( 및 fixup*.elf추가 된 파일 도) 만 남겨 둡니다 . 이제부터는 수동으로 올바른를 선택할 필요가 없습니다 start_*.file. 대신, 파일의 gpu_mem*옵션을 사용 config.txt하여 GPU로 전송되는 메모리 양을 선택 해야합니다 . 나머지 메모리는 ARM에 할당됩니다. 이 옵션에 대해 다음 범위에서 임의의 숫자를 사용할 수 있어야합니다.

**512MB of RAM**: 16M-448M
**256MB of RAM**: 16M-192M

현재 하드 코딩 된 분할 값은 없지만이 답변의 나머지 부분에 대한 대부분의 정보는 GPU에 할당해야 할 메모리 양을 결정할 때 여전히 유효해야합니다.

start_cd.elffixup_cd.elf파일은 해당 파일의 컷 다운 버전이며 gpu_mem=16.

256 및 512MB 버전 모두에서 하나의 SD 카드 사용

다른 RaspberryPi 버전에 대해 하나의 SD 카드 이미지를 사용하는 경우 gpu_mem_256gpu_mem_512옵션을 사용할 수 있습니다. 첫 번째는 256MB 버전에서만 사용되며 두 번째는 512MB 버전에서만 사용됩니다.


예, eatch 스위치 전에 수동 구성 파일 변경을 지루하지 않고 XBMC와 LXDE를 모두 사용하려는 경우 또는 Pi가 매일 사용하려는 기본 컴퓨터 인 경우 업그레이드하는 것이 좋습니다.
avra

6
유용한 지침. 명확하게-헤드리스 달리기를위한 최적의 분할은 무엇입니까? 예를 들어 rpi 카메라 모듈에 GPU 요구 사항이 있습니까?
지리학

지금이 gpu_mem_1024, 아니 놀랍게도 1024 메가 바이트와 RPI - 현재 (? 하나가 나오지 않을 경우 I는 추측)은 RPI 2 B입니다
SlySven

에 따르면 elinux.org/RPiconfig#Camera , 카메라 모듈은 다음과 같은 라인이 필요합니다 /boot/config.txt: start_x=1gpu_mem=128이상. 또한 /usr/bin/raspi-config카메라를 활성화하는 옵션이 있습니다.
mpb
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.