ใช้ SSD เป็น RAM หรือไม่


13

ฉันจะใช้พื้นที่ดิสก์ SSD เป็น RAM เพื่อรันงานหน่วยความจำขนาดใหญ่บน Raspberry Pi ได้อย่างไร นี่เป็นสิ่งเดียวกันใน Linux หรือไม่เมื่อสร้าง "ramdisk" ตามคำถามและคำตอบนี้


4
คำตอบสั้น ๆ : มันเป็นไปไม่ได้! คุณสามารถใช้เป็น swap disk หรือเก็บไฟล์ temp ไว้ที่นั่น แต่คุณไม่สามารถขยาย RAM โดยใช้ไดรฟ์ได้ มันเป็นไปไม่ได้
Piotr Kula

3
ลองใช้ GParted เพื่อจัดรูปแบบ SSD ของคุณด้วยlinux-swapพาร์ติชันแล้วเรียกใช้sudo swapon /dev/sda1(หรืออะไรก็ตามที่เป็นพาร์ติชัน swap) Ramdisk ใช้ RAM ของคุณเป็นที่เก็บข้อมูลพื้นที่สวอปนั้นตรงกันข้ามกับ - ใช้ที่เก็บข้อมูลเป็น RAM
JamesTheAwesomeDude

คำตอบ:


8

ฉันถือว่าคุณหมายถึง SD แทน SSD หรือไม่ การสร้างพาร์ติชัน Swap บนการ์ด SD ควรทำงานเป็น RAM สำหรับไดรฟ์

หากคุณหมายถึง SSD ไม่มีวิธีที่แท้จริงในการเชื่อมต่อไดรฟ์ SSD กับ Pi ในตอนแรก หากคุณกำลังเชื่อมต่อด้วย USB จะไม่มีการเพิ่มขึ้นอย่างมากแม้แต่ฮาร์ดไดรฟ์ปกติที่เชื่อมต่อจากภายนอกก็สามารถทำงานด้วยความเร็วสูงสุด


7

สิ่งนี้เป็นไปไม่ได้

หน่วยความจำสำหรับ Raspberry Pi ได้รับการแก้ไขบนกระดานและไม่มีส่วนต่อประสานที่จะขยายหรือแทนที่

ฉันคิดว่าความสับสนนั้นมาจากความจริงที่ว่า SSD (Solid State Disk) กำลังใช้ชิปหน่วยความจำเพื่อจัดเก็บข้อมูล แต่นั่นคือสิ่งที่คล้ายคลึงกันสิ้นสุด ชิปหน่วยความจำบน SSD นั้นแตกต่างจาก RAM ปกติมาก ไม่สามารถแทนที่หนึ่งสำหรับอีก

SSD มีอินเตอร์เฟสดิสก์ SATA RAM มีอินเตอร์เฟสบัสหน่วยความจำ แตกต่างกันมากซึ่งการเปรียบเทียบที่ดีที่สุดที่ฉันสามารถทำได้ก็เปรียบได้กับการเปรียบเทียบเตาอบแก๊สกับไมโครเวฟ

ฉันพยายามลดความซับซ้อนของข้อมูลที่ตามมาดังนั้นสำหรับทุกคนที่อ่านสิ่งนี้ด้วยความเข้าใจที่ลึกซึ้งยิ่งขึ้นโปรดจำไว้ว่านี่เป็นเพียงบทสรุประดับสูงมาก:

ชิป SSD เป็นหน่วยความจำแฟลชและมีความสามารถในการจัดเก็บแบบไม่ลบเลือนเช่นเดียวกับดิสก์ Thumb USB ซึ่งหมายความว่าพวกเขาสามารถเก็บข้อมูลได้แม้ไม่มีพลังงาน พวกเขายังต้องการชิปคอนโทรลเลอร์พิเศษเพื่อพูดคุยกับพวกเขา ชิปนี้เชื่อมต่อกับดิสก์อินเตอร์เฟส SATA และติดตามโปรโตคอล SATA ในการเปรียบเทียบของฉัน SSD เป็นเตาอบแก๊สและรถบัส SATA เป็นก๊าซให้กับบ้าน

ชิปแรมทั่วไปเรียกว่า DRAM เช่น Dynamic RAM (หรือที่เรียกว่า DDR SDRAM ฯลฯ ) พวกเขาเก็บข้อมูลในช่วงเวลาสั้น ๆ ซึ่งทำให้จำเป็นต้องถอดสายออก (ปลดชิปเหล่านี้ออกจากส่วนที่เหลือของวงจร) เพื่อรีเฟรชข้อมูลที่เก็บไว้ สิ่งนี้เกิดขึ้นหลายร้อยหรือหลายพันครั้งต่อวินาทีและโปร่งใสต่อผู้ใช้ หากไฟดับการรีเฟรชนี้จะหยุดลงและข้อมูลจะสูญหายไปตลอดกาล ชิป Dynamic RAM ทำตามโปรโตคอลที่แตกต่างอย่างสิ้นเชิงจากชิปหน่วยความจำแฟลชและพวกเขาเชื่อมต่อกับตัวควบคุมหน่วยความจำแบบไดนามิกซึ่งจะเชื่อมต่อกับบัสหน่วยความจำความเร็วสูงมาก บัสหน่วยความจำนี้เข้าสู่หัวใจของชิปซีพียูโดยตรง ในการเปรียบเทียบของฉัน Dynamic RAM เป็นเตาไมโครเวฟและบัสหน่วยความจำความเร็วสูงคือแหล่งจ่ายไฟหลัก

CPU Rapsberry Pi มีการเชื่อมต่อพิเศษสำหรับ RAM และไม่มีอะไรนอกจาก Dynamic RAM ที่สามารถเชื่อมต่อได้ การเชื่อมต่อ SATA และ USB เก็บแยกกัน

ดังนั้นแม้ว่าพวกเขาทั้งสองทำงานเดียวกัน (รหัสและข้อมูลการจัดเก็บ SSD และ RAM หม้อหุงแก๊สและไมโครเวฟปรุงอาหารและอุ่นเครื่องอาหาร) พวกเขาทำงานนี้ในวิธีที่แตกต่างและเข้ากันไม่ได้โดยสิ้นเชิง หนึ่งไม่สามารถทดแทนอื่น ๆ

ในที่สุด RAM ดิสก์นั้นเป็นเคล็ดลับของระบบปฏิบัติการที่อ้างว่า RAM ที่มีอยู่บางตัวนั้นเป็นดิสก์จัดเก็บข้อมูล สิ่งนี้จะช่วยลด RAM ที่มีอยู่ในขณะที่ lenik ชี้ไปที่คำตอบของเขาอย่างถูกต้อง


1
แล้วเมื่อไรที่ Windows (Ready Boost) อนุญาตให้คุณใช้แฟลชไดรฟ์เป็นแรมพิเศษมันจะทำงานได้อย่างไร หรือเป็นเช่นพยายามเพิ่ม SWAP ซึ่งจะไม่สร้างความแตกต่างหวังในประสิทธิภาพ?
rhymsy

ReadyBoost บน Windows ไม่ทำงานตามที่ RAM, ดูวิกิพีเดีย: en.wikipedia.org/wiki/ReadyBoost โดยสรุป: ReadyBoost เป็นโซลูชั่นแคชดิสก์เพื่อเพิ่มความเร็วดิสก์ที่ช้าลง โดยทั่วไปเกี่ยวข้องกับการคัดลอกข้อมูลจากดิสก์หมุนไปยังแฟลชไดรฟ์เพื่อลดเวลาในการเข้าถึงข้อมูล
Vassilis Papanikolaou

3

การเพิ่ม swap ให้กับ Raspberry Pi

คุณสามารถใช้ไฟล์สลับหรือพาร์ติชันสลับได้ หากคุณตัดสินใจที่จะใช้พาร์ทิชัน swap ให้แน่ใจว่าคุณอ่านอย่างระมัดระวังเนื่องจากคุณไม่ต้องการทำลายข้อมูลสำคัญใด ๆ

การสร้างไฟล์สลับ

  • dd if=/dev/zero of=/SWAPFILE bs=1024 count=524288
    • สิ่งนี้จะสร้างไฟล์เปล่า 512MB
    • เปลี่ยนcount =เป็นขนาดที่คุณต้องการ
  • chown root:root /SWAPFILE
  • chmod 0600 /SWAPFILE
  • mkswap /SWAPFILE
  • swapon /SWAPFILE

การสร้าง swap partition

  • dd if=/dev/zero of=/dev/sdXN bs=1024
    • นี่จะเป็นการเติมพาร์ติชันทั้งหมดของ / dev / sdXN
  • mkswap /dev/sdXN
  • swapon /dev/sdXN

คงอยู่ขณะบูต (เพิ่ม / etc / fstab)

  • vim /etc/fstab
  • เพิ่มอย่างใดอย่างหนึ่ง:
    • / SWAPFILE swap swap เป็นค่าเริ่มต้น 0 0
    • / dev / sdXN swap swap เป็นค่าเริ่มต้น 0 0

ทดสอบว่ามันใช้งานอยู่หรือไม่

  • free -m

1
ในขณะที่ SSD นั้นเร็วและอาจดีสำหรับพื้นที่สว็อป แต่ขอเตือนว่าข้อมูลสามารถเขียนได้ในเวลา จำกัด เท่านั้น
earthmeLon

อย่าลืมว่าคุณได้เร่งความเร็วผ่านอินเตอร์เฟส USB2 ดังนั้น SSD จะมีความเร็วน้อยกว่า 10% ของความเร็วดั้งเดิม ฉันไม่คิดว่าคุณต้องกังวลเกี่ยวกับการใส่แฟลชโดยไม่ตั้งใจ
John La Rooy

1

RAM disk นั้นตรงกันข้ามกับสิ่งที่คุณต้องการทำ มันสร้างดิสก์ใน RAM เมื่อคุณต้องการความเร็วที่เพิ่มขึ้นและไม่สนใจหน่วยความจำ

ใช้ SSD เป็น RAM ... ไม่อาจสร้าง swap partition บน SSD และปล่อยให้มันอยู่ตรงนั้นได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.