Menjalankan Linux 64-bit dengan RAM 750 MB: sepadan?

13

Saya memiliki VPS server Debian, dan penyedia menginstal 64-bit Debian 5. Haruskah saya meminta instalasi 32-bit, mengingat bahwa saya hanya memiliki 750 MB RAM dan saya telah mendengar bahwa variabel mengambil lebih banyak RAM pada sistem 64-bit?

Jhonnytunes
sumber
2
Tergantung pada apa yang akan Anda jalankan, sebenarnya. Coba beberapa dari beban Anda dan periksa apakah RAM Anda akan cukup.
Renan
Sakit dijalankan: Postgres, Apache dan Tomcat.
Jhonnytunes
1
Catatan: jika Anda memutuskan untuk meng-upgrade ke lebih banyak RAM nanti, 32-bit bisa bermasalah (ada PAE untuk pole-vaulting di atas batas 4GB, tetapi memiliki beberapa overhead sendiri).
Piskvor meninggalkan gedung
Kedua host VPS saya telah menggunakan kernel khusus terinstal untuk hypervisor mereka sehingga kemungkinan Anda harus tetap berpegang pada versi OS mereka - jika mereka tidak menawarkan 32-bit, saya ragu Anda bisa menginstalnya sendiri.
Rup

Jawaban:

16

Jawaban singkatnya :

Variabel tidak mengambil dua kali lipat ruang dalam perangkat lunak 64-bit vs 32-bit. Keuntungan memori potensial dari beralih ke OS 32-bit tidak akan sepadan dengan usaha.

Jawaban panjangnya :

Angka bisa lebih besar ya, tetapi itu tidak berarti mereka akan menjadi lebih besar. Ini juga berlaku untuk angka, bukan string, dan string adalah (umumnya) yang mengonsumsi memori paling banyak dalam suatu aplikasi.

Selain itu, banyak aplikasi secara eksplisit menentukan ukuran angka yang ingin mereka kerjakan, seperti dalam bahasa seperti C, intdapat ukuran apa saja, termasuk yang lebih kecil dari 32-bit. Dan lebih jauh lagi, pada mesin Linux 64-bit saya, di C intadalah 32-bit. Jadi, Anda harus secara eksplisit meminta long longuntuk mendapatkan nomor 64-bit.

Jadi pada dasarnya, aplikasi tidak akan menggunakan lebih banyak memori hanya karena mereka dikompilasi untuk 64-bit.

EDIT :
Menanggapi klaim Gilles bahwa Firefox 64-bit menggunakan memori dua kali lebih banyak, saya pergi dan melakukan perbandingan antara Firefox 32-bit dan 64-bit pada sistem saya.
Saya menguji dengan meluncurkan 5 tab terbuka untuk http://acid3.acidtests.org/ dan melakukan pengujian 3 kali (sekali dalam 32-bit, sekali dalam 64-bit, dan kemudian ulangi dua kali). Saya memilih situs ini karena intensif JavaScript, dan menggunakan konten statis (setiap rendering halaman akan memberikan data yang sama).

Pada putaran terakhir:

  • 32-bit: 173,244kb rss / 918,348kb kebajikan

  • 64-bit: 184,588kb rss / 966,624kb virt

Saya bisa melakukan pengujian yang lebih luas ya, tapi saya pikir ini menunjukkan dengan cukup baik bahwa perbedaan ukuran antara keduanya adalah marjinal.

Patrick
sumber
1
Ini terlalu dibesar-besarkan. Beberapa program memang membutuhkan memori hampir dua kali lipat dalam mode 64-bit, tergantung pada jenis data yang mereka manipulasi. Saya perhatikan bahwa Firefox dan Chrome mengambil lebih dari dua kali memori (Saya tidak pernah menyelidiki alasannya: ukuran kode?). Untuk Apache, konsumsi memori tambahan kemungkinan kecil (tapi saya belum mengukur).
Gilles 'SANGAT berhenti menjadi jahat'
@ giles sulit. Saya baru saja meluncurkan firefox 32-bit dan 64-bit. 32-bit menggunakan 133,340 kb setelah diluncurkan. 64-bit menggunakan 133,412kb setelah diluncurkan.
Patrick
Ini mungkin telah meningkat baru-baru ini, saya pikir saya terakhir memeriksa dengan Firefox 4. Saya mengukur dengan mengambil sistem yang tidak digunakan (menjalankan hampir hanya program 64-bit, yang seharusnya mendukung eksekusi 64-bit karena beberapa perpustakaan bersama sudah dimuat) dan membandingkan jumlah memori bebas setelah memuat beberapa tab (beberapa JS, tanpa Flash): Saya menemukan itu (free_memory_with_ff_64 - free_memory_without_ff)> 2 * (free_memory_with_ff_32 - free_memory_without_ff).
Gilles 'SANGAT berhenti menjadi jahat'
4
@Gilles Saya pikir ada beberapa kekurangan dalam ujian. Sekalipun firefox menyimpan setiap bit data terakhir sebagai integer (tanpa string, yang tidak akan mengubah ukuran), dan setiap integer tunggal berubah dari 32-bit menjadi 64-bit, ukurannya paling banyak akan berlipat ganda. Tidak ada penjelasan lebih dari dua kali lipat.
Patrick
2
"Angka bisa lebih besar ya, tapi itu tidak berarti angka itu akan jadi." - tetapi semua petunjuk sekarang pasti akan menjadi 64-bit di mana mereka dulu 32.
Rup
5

Saya memilih instalasi 32-bit daripada 64-bit untuk sistem dengan ram kurang dari 4gig.

64-bit TIDAK menggunakan lebih banyak memori, karena sifat dari pointer itu, ini berkisar antara kira-kira 10 dan 50 megabyte tambahan untuk instalasi LAMP vanilla.

Pada sistem dengan ram terbatas, misalnya 256meg, ini bisa menjadi potongan yang cukup besar.

Secara teknis, dengan PAE hal yang sama berlaku hingga 64gig, namun ruang beralamat untuk aplikasi masih terbatas pada 4gig dalam hal apa pun. Oleh karena itu dengan apa pun di atas 4gig, 64-bit disarankan untuk memanfaatkan peningkatan kinerja, tidak terkecuali yang terkait dengan overhead PAE.

Singkatnya: <4gig = 32bit | > 4gig = 64bit.

tomwof
sumber
3

Jika penyedia menginstal 64-bit Debian 5, saya sarankan Anda tetap menggunakan versi ini.

Perbedaan antara 64bit dan 32bit tidak hanya di memory manager.

angelcervera
sumber
2

Kecuali untuk beberapa aplikasi pengolah angka yang berjalan lebih cepat, satu-satunya keuntungan dari sistem 64-bit adalah Anda dapat mengatasi lebih dari 4GB memori. Karena beberapa ruang alamat dicadangkan untuk kernel, suatu proses hanya mendapat sekitar 2GB atau 3GB ruang alamat (atau lebih atau kurang, tergantung pada konfigurasi kernel). Untuk kasus penggunaan database dan server web, Anda tidak berencana bertukar banyak, dan Anda tidak akan melakukan banyak angka. Jadi, dengan hanya 750MB RAM, Anda tidak akan melihat manfaat menggunakan sistem 64-bit.

Ukuran kode hampir sama antara kode i386 (32-bit) dan amd64 (64-bit). Memori data yang digunakan oleh program 64-bit agak lebih besar; seberapa besar tergantung pada aplikasi. Saya berharap untuk melihat perbedaan yang nyata, tetapi tidak besar untuk kasus penggunaan Anda.

Mengingat bahwa ada sedikit biaya dan tidak ada manfaat untuk menggunakan 64 bit, saya sarankan Anda menggunakan sistem 32-bit, jika tidak terlalu banyak kesulitan untuk didapatkan.

Gilles 'SANGAT berhenti menjadi jahat'
sumber