750MB의 RAM으로 64 비트 Linux를 실행하는 것 : 그만한 가치가 있습니까?


13

데비안 서버 VPS가 있고 공급자가 64 비트 데비안 5를 설치했습니다. 750MB의 RAM 만 있고 64 비트 시스템에서 변수가 더 많은 RAM을 사용한다고 들었을 때 32 비트 설치를 요청해야합니까?


2
실제로 실행할 대상에 따라 다릅니다. 로드 중 일부를 시도하고 RAM이 충분한 지 확인하십시오.
Renan

Postgres, Apache 및 Tomcat을 실행합니다.
Jhonnytunes 1

1
참고 : 나중에 더 많은 RAM으로 업그레이드하기로 결정하면 32 비트에서 문제가 발생할 수 있습니다 (4GB 제한을 초과하는 폴 볼트에 대한 PAE가 있지만 약간의 오버 헤드가 있습니다).
Piskvor

두 VPS 호스트 모두 하이퍼 바이저에 설치된 사용자 지정 커널을 사용 했으므로 OS의 버전을 고수해야 할 가능성이 있습니다. 32 비트를 제공하지 않으면 직접 설치할 수 있습니다.
Rup

답변:


16

짧은 대답 :

변수는 64 비트 대 32 비트 소프트웨어에서 두 배의 공간을 차지하지 않습니다. 32 비트 OS로 전환하여 얻을 수있는 잠재적 인 메모리 이득은 그만한 가치가 없습니다.

긴 대답 :

숫자가 더 클 수 있지만 그게 아니라는 것을 의미하지는 않습니다. 또한 이것은 문자열이 아닌 숫자에 적용되며 문자열은 (일반적으로) 응용 프로그램에서 가장 많은 양의 메모리를 소비합니다.

또한 많은 응용 프로그램은 C와 같은 언어에서 int32 비트보다 작은 크기를 포함하여 원하는 크기의 크기를 명시 적으로 지정합니다 . 그리고 64 비트 Linux 컴퓨터에서 C의 int경우 32 비트입니다. 따라서 long long64 비트 숫자를 얻으려면 명시 적으로 요청 해야합니다.

따라서 기본적으로 응용 프로그램은 64 비트로 컴파일 되었기 때문에 더 많은 메모리를 사용하지 않습니다.

편집 :
64 비트 Firefox가 두 배의 메모리를 사용한다는 Gilles의 주장에 따라, 나는 내 시스템에서 32 비트와 64 비트 Firefox를 비교했습니다. http://acid3.acidtests.org/에
열려있는 5 개의 탭을 시작 하여 테스트하고 테스트를 3 번 ​​(32 비트에서 1 회, 64 비트에서 1 회, 2 회 반복) 테스트를 수행했습니다. JavaScript를 많이 사용하고 정적 콘텐츠를 사용하기 때문에이 사이트를 선택했습니다 (각 페이지 렌더링마다 동일한 데이터가 제공됨).

마지막 실행에서 :

  • 32 비트 : 173,244kb rss / 918,348kb virt

  • 64 비트 : 184,588kb rss / 966,624kb virt

나는 더 광범위한 테스트를 할 수는 있지만, 이것이 둘 사이의 크기 차이가 미미할 정도로 충분히 입증한다고 생각합니다.


1
이것은 과장된 것입니다. 일부 프로그램은 64 비트 모드에서 거의 두 배의 메모리를 차지하며 조작하는 데이터 종류에 따라 다릅니다. Firefox와 Chrome에서 메모리의 두 배 이상을 차지한다는 것을 알았습니다 (이유는 조사하지 않았습니다 : 코드 크기?). Apache의 경우 추가 메모리 소비는 적을 수 있지만 측정하지는 않았습니다.
Gilles 'SO- 악마 그만해'

@giles는 거의 없습니다. 방금 32 비트 및 64 비트 파이어 폭스를 시작했습니다. 32 비트는 시작 후 133,340kb를 사용합니다. 64 비트는 시작 후 133,412kb를 사용합니다.
Patrick

최근에 Firefox 4에서 확인한 것 같습니다. 다른 유휴 시스템을 사용하여 측정했습니다 (약 64 비트 프로그램 만 실행하면 일부 공유 라이브러리가 이미로드되었으므로 64 비트 실행 파일을 선호해야 함). 그리고 몇 개의 탭 (일부 JS, 플래시 없음)을로드 한 후 사용 가능한 메모리 양을 비교합니다. (free_memory_with_ff_64-free_memory_without_ff)> 2 * (free_memory_with_ff_32-free_memory_without_ff)
Gilles 'SO- 악마 그만해'

4
@Gilles 테스트에 결함이 있다고 생각합니다. 파이어 폭스가 모든 마지막 작은 비트의 데이터를 정수 (문자열, 크기를 변경하지 않는 문자열)로 저장하고 모든 단일 정수가 32 비트에서 64 비트로 변경된 경우에도 크기는 최대 두 배가됩니다. 그것에 대한 설명은 두 배 이상입니다.
Patrick

2
"숫자는 더 클 수 있지만 그것이 그럴 것이라는 의미는 아닙니다." -그러나 모든 포인터는 이제 32 비트였던 64 비트가 될 것입니다.
Rup

5

RAM이 4gig 미만인 시스템의 경우 64 비트 설치보다 32 비트를 선택합니다.

64 비트 DOES는 포인터의 특성으로 인해 더 많은 메모리를 사용합니다.이 범위는 바닐라 LAMP 설치에 추가로 약 10-50MB입니다.

램이 제한된 시스템 (예 : 256meg)에서는 크기가 큰 청크가 될 수 있습니다.

기술적으로 PAE의 경우 64gig까지 동일하게 적용되지만 응용 프로그램의 주소 지정 가능 공간은 여전히 ​​모든 경우에 4gig로 제한됩니다. 따라서 4gig 이상이면 PAE 오버 헤드와 관련된 성능 향상을 위해 64 비트를 사용하는 것이 좋습니다.

간단히 말해서 : <4gig = 32bit | > 4gig = 64 비트


3

공급자가 64 비트 데비안 5를 설치 한 경우이 버전을 유지하는 것이 좋습니다.

64 비트와 32 비트의 차이점은 메모리 관리자에만있는 것이 아닙니다.


2

더 빠른 속도로 실행되는 소수의 응용 프로그램을 제외하고 64 비트 시스템의 유일한 이점은 4GB 이상의 메모리를 처리 할 수 ​​있다는 것입니다. 일부 주소 공간이 커널에 예약되어 있으므로 프로세스는 약 2GB 또는 3GB의 주소 공간 만 가져옵니다 (커널 구성에 따라 더 많거나 적음). 데이터베이스 및 웹 서버 사용 사례의 경우 스왑을 많이 계획하지 않으며 많은 수의 크 런칭을 수행하지 않습니다. 따라서 750MB의 RAM 만 있으면 64 비트 시스템을 사용할 경우 아무런 이점이 없습니다.

코드 크기는 i386 (32 비트)과 amd64 (64 비트) 코드에서 거의 같습니다. 64 비트 프로그램에서 사용하는 데이터 메모리는 다소 큽니다. 얼마나 더 큰 응용 프로그램에 따라 다릅니다. 유스 케이스에는 눈에 띄지 만 큰 차이는 없을 것으로 예상됩니다.

약간의 비용이 들지만 64 비트를 사용하면 이점이 없으므로 32 비트 시스템을 사용하는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.