Gunakan SSD sebagai RAM?

13

Bagaimana saya bisa menggunakan ruang disk SSD sebagai RAM untuk menjalankan pekerjaan dengan memori besar di Raspberry Pi? Apakah ini sama di Linux dengan membuat "ramdisk" sesuai T&J ini ?

719016
sumber
4
Jawaban singkatnya adalah: Itu tidak mungkin! Anda dapat menggunakannya sebagai disk swap atau menyimpan file temp di sana tetapi Anda tidak dapat memperpanjang RAM menggunakan drive. Itu tidak mungkin.
Piotr Kula
3
Coba gunakan GParted untuk memformat SSD Anda dengan sebuah linux-swappartisi, kemudian jalankan sudo swapon /dev/sda1(atau apa pun partisi swap.) Ramdisk menggunakan RAM Anda sebagai penyimpanan, ruang swap pada dasarnya adalah sebaliknya - gunakan penyimpanan sebagai RAM.
JamesTheAwesomeDude

Jawaban:

8

Saya berasumsi maksud Anda SD bukan SSD? Membuat partisi Swap pada kartu SD harus berfungsi sebagai semacam RAM untuk drive.

Jika yang Anda maksud SSD tidak ada cara yang benar untuk menghubungkan drive SSD ke Pi di tempat pertama. Jika Anda terhubung dengan USB tidak akan ada peningkatan besar, bahkan HDD normal yang terpasang secara eksternal tidak dapat berjalan dengan kecepatan penuh.

Ryan Walmsley
sumber
7

Ini tidak mungkin.

Memori untuk Raspberry Pi diperbaiki di papan tulis dan tidak ada antarmuka untuk memperpanjang atau menggantinya.

Saya pikir kebingungan berasal dari fakta bahwa SSD (Solid State Disk) menggunakan chip memori untuk menyimpan data. Tapi di situlah kesamaan berakhir. Chip memori pada SSD sangat jauh berbeda dari RAM normal. Tidak mungkin untuk mengganti yang satu dengan yang lainnya.

SSD memiliki antarmuka disk SATA. RAM memiliki antarmuka bus memori. Mereka sangat berbeda, sehingga analogi terbaik yang dapat saya tawarkan adalah seperti membandingkan oven memasak gas dengan microwave.

Saya mencoba menyederhanakan informasi berikut ini, jadi bagi siapa pun yang membaca ini dengan pemahaman yang lebih dalam, harap diingat ini hanya ringkasan tingkat yang sangat tinggi:

Chip SSD adalah Memori Flash dan memiliki kemampuan penyimpanan yang tidak mudah menguap, mirip dengan disk jempol USB. Ini berarti mereka dapat menyimpan data mereka bahkan tanpa daya. Mereka juga membutuhkan chip pengontrol khusus untuk berbicara dengan mereka. Chip ini terhubung ke antarmuka disk SATA dan mengikuti protokol SATA. Dalam analogi saya, SSD adalah oven memasak gas dan bus SATA adalah pasokan gas ke rumah.

Chip RAM khas dikenal sebagai DRAM, yaitu Dynamic RAM (juga dikenal sebagai DDR SDRAM, dll). Mereka menyimpan data untuk waktu yang sangat singkat, yang membuatnya perlu untuk membuatnya off-line (lepaskan chip ini dari sisa sirkuit) untuk menyegarkan data yang disimpan. Ini terjadi beberapa ratus atau ribuan kali per detik dan transparan bagi pengguna. Jika daya padam maka refresh ini berhenti dan datanya hilang selamanya. Chip RAM dinamis mengikuti protokol yang sama sekali berbeda dari chip Memori Flash dan mereka terhubung ke Pengendali Memori Dinamis, yang pada gilirannya, terhubung ke bus memori berkecepatan sangat tinggi. Bus memori ini langsung masuk ke jantung chip CPU. Dalam analogi saya, Dynamic RAM adalah oven microwave dan bus memori berkecepatan tinggi adalah pasokan listrik utama.

CPU Rapsberry Pi memiliki koneksi khusus untuk RAM dan tidak ada yang bisa disambungkan kecuali Dynamic RAM. Koneksi SATA dan USB disimpan secara terpisah.

Jadi meskipun mereka berdua melakukan pekerjaan yang sama (SSD dan RAM menyimpan kode dan data, kompor gas dan microwave memasak makanan dan menghangatkan makanan) mereka melakukan pekerjaan ini dengan cara yang sangat berbeda dan tidak kompatibel. Yang satu tidak bisa digantikan dengan yang lain.

Akhirnya, Disk RAM adalah trik sistem operasi yang berpura-pura bahwa beberapa RAM yang tersedia sebenarnya adalah disk penyimpanan. Ini mengurangi RAM yang tersedia sebagai lenik dengan benar menunjukkan dalam jawabannya.

Vassilis Papanikolaou
sumber
1
Bagaimana dengan Windows (Ready Boost) yang memungkinkan Anda menggunakan Flash Drive sebagai RAM tambahan, bisakah itu berhasil? Atau itu seperti mencoba menambahkan SWAP yang tidak akan membuat perbedaan yang diharapkan dalam kinerja?
sajak
ReadyBoost di Windows tidak berfungsi sebagai RAM, lihat Wikipedia: en.wikipedia.org/wiki/ReadyBoost . Singkatnya: ReadyBoost adalah solusi caching disk untuk mempercepat disk yang lebih lambat. Biasanya ini melibatkan menyalin data dari disk yang berputar ke flash drive untuk mengurangi waktu akses data.
Vassilis Papanikolaou
3

Menambahkan swap ke Raspberry Pi

Anda bisa menggunakan file swap, atau partisi swap. Jika Anda memutuskan untuk menggunakan partisi swap, pastikan Anda membaca dengan seksama, karena Anda tidak ingin merusak data penting.

Membuat file swap

  • dd if=/dev/zero of=/SWAPFILE bs=1024 count=524288
    • Ini akan membuat file kosong 512MB.
    • Ubah jumlah = ke ukuran pilihan Anda.
  • chown root:root /SWAPFILE
  • chmod 0600 /SWAPFILE
  • mkswap /SWAPFILE
  • swapon /SWAPFILE

Membuat partisi swap

  • dd if=/dev/zero of=/dev/sdXN bs=1024
    • Ini akan mengisi seluruh partisi / dev / sdXN
  • mkswap /dev/sdXN
  • swapon /dev/sdXN

Gigih saat boot (tambahkan ke / etc / fstab)

  • vim /etc/fstab
  • Tambahkan salah satu:
    • / SWAPFILE swap default swap 0 0
    • / dev / sdXN swap swap default 0 0

Tes apakah itu aktif

  • free -m
earthmeLon
sumber
1
Sementara SSD cepat dan mungkin bagus untuk ruang swap, berhati-hatilah karena data hanya dapat dituliskan kepada mereka beberapa kali saja.
earthmeLon
Jangan lupa Anda dicekik melalui antarmuka USB2, sehingga SSD akan kurang dari 10% dari kecepatan aslinya. Saya benar-benar tidak berpikir Anda perlu khawatir tentang memakai flash secara tidak sengaja.
John La Rooy
1

Disk RAM benar-benar berlawanan dengan apa yang ingin Anda lakukan. itu menciptakan disk dalam RAM, ketika Anda membutuhkan kecepatan ekstra dan tidak peduli dengan memori.

menggunakan SSD sebagai RAM ... tidak tahu, mungkin membuat partisi swap pada SSD dan biarkan swap di sana.

lenik
sumber