ทำไมโซลิดสเตทไดรฟ์จึงช้าลงเมื่อคุณเติมให้เต็ม
มาตรฐานมีความชัดเจน: โซลิดสเตทไดรฟ์ช้าลงเมื่อคุณเติมให้เต็ม เติมโซลิดสเตตไดร์ฟของคุณให้ใกล้ความจุและประสิทธิภาพการเขียนจะลดลงอย่างมาก เหตุผลอยู่ที่วิธีการทำงานของ SSD และหน่วยความจำแฟลช NAND.
การเติมความจุของไดร์ฟเป็นหนึ่งในสิ่งที่คุณไม่ควรทำกับไดรฟ์โซลิดสเตต ไดรฟ์โซลิดสเตตเกือบเต็มจะทำให้การเขียนข้อมูลช้าลงมากทำให้คอมพิวเตอร์ของคุณช้าลง.
บล็อกเปล่าและบล็อกที่เต็มไปบางส่วน
เมื่อคุณเขียนไฟล์ไปยังโซลิดสเตทไดรฟ์ของคุณจะค้นหาบล็อกว่างเปล่าและเติมให้เต็ม การเขียนบล็อกว่างเปล่าเป็นการดำเนินการเขียนที่เร็วที่สุด นั่นเป็นสาเหตุที่ระบบปฏิบัติการใหม่ (Windows 7 และใหม่กว่า) รองรับคุณสมบัติ TRIM ซึ่งจะลบข้อมูลไฟล์โดยอัตโนมัติจากโซลิดสเตทไดรฟ์ทันทีที่คุณลบไฟล์ในระบบปฏิบัติการของคุณ สิ่งนี้ทำงานแตกต่างจากฮาร์ดไดรฟ์แบบแม่เหล็กซึ่งมีไฟล์บิตที่ถูกลบวางอยู่บนฮาร์ดไดรฟ์.
พวกเขาไม่ได้นั่งอยู่บนไดรฟ์โซลิดสเตต - TRIM ทำให้แน่ใจว่าบล็อกว่างเปล่าเพื่อให้ SSD สามารถเขียนข้อมูลใหม่ไปยังบล็อกว่างเปล่าได้อย่างรวดเร็วในอนาคต การเขียนเซกเตอร์ที่เขียนไปแล้วนั้นเร็วพอ ๆ กับการเขียนไปยังเซกเตอร์ว่างในฮาร์ดไดรฟ์ mechnical แต่ไดรฟ์โซลิดสเตตต้องลบบล็อกก่อนที่จะเขียนลงไป.
หน่วยความจำแฟลช NAND เขียนข้อมูลในหน้า 4 KB ภายในบล็อกขนาด 256 KB ในการเพิ่มหน้าเพิ่มเติมไปยังบล็อกที่กรอกข้อมูลบางส่วนไดรฟ์โซลิดสเตตจะต้องลบบล็อกทั้งหมดก่อนที่จะเขียนข้อมูลกลับไปที่บล็อก.
เมื่อโซลิดสเตทไดรฟ์ของคุณเต็มแล้วบล็อกว่างจะมีน้อยลง ในสถานที่ของพวกเขาเต็มไปด้วยบล็อกบางส่วน โซลิดสเตทไดรฟ์ไม่เพียง แต่เขียนข้อมูลใหม่ไปยังบล็อกที่เต็มไปด้วยบางส่วนซึ่งจะลบข้อมูลที่มีอยู่ แทนที่จะเป็นการดำเนินการเขียนอย่างง่ายโซลิดสเตตต้องอ่านค่าของบล็อกลงในแคชของมันปรับเปลี่ยนค่าด้วยข้อมูลใหม่แล้วเขียนกลับไป โปรดจำไว้ว่าการเขียนไฟล์มีแนวโน้มที่จะเกี่ยวข้องกับการเขียนไปยังบล็อกจำนวนมากดังนั้นสิ่งนี้สามารถแนะนำการล่าช้าเพิ่มเติมจำนวนมากได้.
TRIM ไม่รวมบล็อกที่เต็มไปด้วยบางส่วน
หากคุณเติมไดรฟ์ให้เต็มความจุหรือใกล้ความจุอาจเป็นไปได้ว่าคุณจะจบลงด้วยบล็อกที่ถูกกรอกข้อมูลบางส่วนหลังจากที่คุณลบไฟล์ คำสั่ง TRIM จะนำไดรฟ์โซลิดสเตตเพื่อลบข้อมูลไฟล์เมื่อไฟล์ถูกลบ ไม่บังคับให้ไดรฟ์ทำการล้างข้อมูลใด ๆ.
กล่าวอีกนัยหนึ่งให้เติมไดรฟ์โซลิดสเตตเป็นความจุก่อนที่จะลบไฟล์และคุณอาจท้ายด้วยบล็อกที่เต็มไปด้วยบางส่วน ไดรฟ์จะไม่ออกนอกเส้นทางเพื่อรวมบล็อกที่เติมบางส่วนเหล่านี้ลงในบล็อกเต็มซึ่งจะช่วยให้บล็อกว่างเปล่า ไดรฟ์จะยังคงเต็มไปด้วยบล็อกที่เต็มไปบางส่วนและประสิทธิภาพการเขียนจะลดลง.
การสะสมมากเกินไปและการเก็บขยะ
เพื่อป้องกันไม่ให้ผู้บริโภคกรอกข้อมูลโซลิดสเตทไดร์ฟและจบลงด้วยประสิทธิภาพที่ลดลงอย่างรุนแรงผู้ผลิต SSD กำลังออกนอกเส้นทางเพื่อตอบโต้เรื่องนี้.
ไดรฟ์โซลิดสเตตระดับผู้บริโภคมักจะจัดเก็บประมาณ 7% ของที่เก็บแฟลชทั้งหมดและทำให้ผู้ใช้ไม่สามารถใช้งานได้ สิ่งนี้เรียกว่า "overprovisioning" - มีการเพิ่มฮาร์ดแวร์หน่วยเก็บข้อมูลพิเศษลงในไดรฟ์ แต่ไม่สามารถมองเห็นได้ในคอมพิวเตอร์เนื่องจากมีที่เก็บข้อมูลที่สามารถใช้ได้ พื้นที่สำรองทำให้มั่นใจได้ว่าไดรฟ์จะไม่สามารถทำงานได้อย่างสมบูรณ์ - จะมีความจุสำรองอยู่เสมอเพื่อช่วยให้การเขียนมีเสถียรภาพ.
คอนโทรลเลอร์ของโซลิดสเตทแต่ละตัวมีอัลกอริทึมการรวบรวมขยะเพื่อพยายามลดปัญหานี้ เมื่อไดรฟ์เต็มมันจะมองหาบล็อกที่เต็มไปด้วยบางส่วนและเริ่มรวมบล็อกเหล่านั้นให้ว่างบล็อกว่างให้ได้มากที่สุด ไดรฟ์โซลิดสเตทที่แตกต่างกันเรียกใช้การดำเนินการเหล่านี้ในเวลาและเกณฑ์ต่าง ๆ - ขึ้นอยู่กับตัวควบคุมของไดรฟ์.
หลักฐานเปรียบเทียบสมรรถนะ
Anandtech ทำการวัดประสิทธิภาพที่หลากหลายพร้อมไดรฟ์ที่แตกต่างกันเพื่อย้ำความสัมพันธ์ระหว่างพื้นที่ว่างของไดรฟ์โซลิดสเตตและความสอดคล้องของประสิทธิภาพการทำงานการเขียน เมื่อกรอกข้อมูลในไดรฟ์ที่ว่างเปล่าพวกเขาพบว่าประสิทธิภาพการเขียนสูงในช่วงต้นของกระบวนการและลดลงอย่างมีนัยสำคัญเนื่องจากการดำเนินการเขียนอย่างต่อเนื่องเพื่อเติมไดรฟ์.
การจัดสรรพื้นที่ว่างเพิ่มเติมบนไดรฟ์ช่วยให้ประสิทธิภาพการทำงานยังคงสอดคล้องเนื่องจากมั่นใจว่าไดรฟ์ควรมีบล็อกว่างเปล่าเพียงพอเสมอ.
พวกเขาพบว่า“ ประสิทธิภาพขั้นต่ำจะดีขึ้นอย่างมากเมื่อคุณมีพื้นที่ว่าง 25% สำหรับไดรฟ์ [ผู้บริโภค] เหล่านี้” คำแนะนำสุดท้ายของพวกเขาคือคุณควร“ วางแผนที่จะใช้เพียง 75% ของความจุของไดรฟ์ ระหว่างความสอดคล้องของประสิทธิภาพและความสามารถ”
หากคุณมีโซลิดสเตทไดรฟ์คุณควรพยายามหลีกเลี่ยงการใช้ความจุมากกว่า 75% ซื้อไดรฟ์ขนาดใหญ่ที่มีพื้นที่เก็บข้อมูลมากกว่าที่คุณต้องการและคุณจะมั่นใจได้ว่าคุณมีประสิทธิภาพการเขียนที่สม่ำเสมอ โชคดีที่ SSD เริ่มมีราคาถูกลงเรื่อย ๆ ดังนั้นมันจึงไม่แพงอย่างที่เคยเป็นมา.
เครดิตรูปภาพ: ตัวเรียงลำดับเพลงที่ Wikimedia Commons, Simon Wüllhorst on Flickr