Laman » bagaimana untuk » Kenapa Pemacu Pepejal Negeri Perlahan Memandangkan Anda Mengisi Mereka

    Kenapa Pemacu Pepejal Negeri Perlahan Memandangkan Anda Mengisi Mereka

    Tanda arasnya adalah jelas: Solid-state drives melambatkan ketika anda mengisi mereka. Isikan pemacu keadaan pepejal anda ke kapasiti berhampiran dan prestasi menulisnya akan berkurang secara dramatik. Sebabnya terletak pada cara kerja penyimpan SSD dan Flash NAND.

    Mengisi pemacu keupayaan adalah salah satu perkara yang tidak boleh dilakukan dengan pemacu keadaan pepejal. Pemacu keadaan pepejal hampir penuh akan mempunyai banyak operasi menulis yang perlahan, memperlahankan komputer anda.

    Blok Kosong dan Blok Sepenuhnya Dipenuhi

    Apabila anda menulis fail ke pemacu keadaan pepejal anda, ia mencari blok kosong dan mengisinya. Menulis ke blok kosong adalah operasi menulis yang paling cepat. Itulah sebabnya mengapa sistem operasi baru (Windows 7 dan kemudian) menyokong ciri TRIM, yang secara automatik memadamkan data fail dari pemacu keadaan pepejal sebaik sahaja anda memadamkan fail dalam sistem pengendalian anda. Ini berfungsi dengan berbeza dari pemacu keras magnetik, di mana bit fail yang dipadam duduk di cakera keras.

    Mereka tidak duduk di atas pemacu keadaan pepejal - TRIM memastikan bahawa blok itu dikosongkan supaya SSD dengan cepat boleh menulis data baru ke blok kosong pada masa akan datang. Menulis ke atas sektor yang sudah tertulis hanya secepat menulis kepada sektor kosong pada cakera keras mechnical, tetapi pemacu keadaan pepejal mesti memadam blok sebelum menulis kepadanya.

    NAND Memori kilat menulis data dalam halaman 4 KB di dalam blok 256 KB. Untuk menambah halaman tambahan ke blok yang dipenuhi sebahagian, pemacu keadaan pepejal mesti memadamkan seluruh blok sebelum menulis data kembali kepadanya.

    Memandangkan pemacu keadaan pepejal anda memenuhi, blok kosong yang lebih sedikit dan kurang disediakan. Di tempat mereka sebahagiannya diisi blok. Pemacu keadaan pepejal tidak boleh hanya menulis data baru ke blok yang sebahagiannya diisi - yang akan memadamkan data sedia ada. Daripada operasi menulis mudah, pemacu keadaan pepejal perlu membaca nilai blok ke dalam cachenya, mengubah nilai dengan data baru, dan kemudian tuliskannya kembali. Perlu diingat bahawa menulis fail mungkin melibatkan menulis ke banyak blok, jadi ini dapat memperkenalkan sejumlah besar penangguhan tambahan.

    TRIM Tidak Menyatukan Blok Sepenuhnya yang Diisi

    Jika anda mengisi pemacu ke kapasiti atau kapasiti berhampiran, kemungkinan anda akan berakhir dengan banyak blok yang penuh setelah anda memadam fail. Perintah TRIM hanya mengarahkan pemacu keadaan pepejal untuk mengalih keluar data fail apabila fail dipadam. Ia tidak memaksa pemacu untuk melakukan apa-apa operasi pembersihan.

    Dengan kata lain, isikan pemacu keadaan pepejal kepada keupayaan sebelum memotong fail dan kemungkinan akan berakhir dengan banyak blok yang dipenuhi. Pemacu tidak akan keluar dari jalan untuk menyatukan blok yang dipenuhi sebahagiannya ke blok penuh, membebaskan blok kosong. Pemacu masih akan penuh dengan blok sebahagian dan prestasi penulisan akan dihina.

    Overprovisioning and Collection Sample

    Untuk menghalang pengguna daripada mengisi pemacu keadaan pepejal dan berakhir dengan prestasi yang sangat teruk, pengeluar SSD akan keluar dari cara mereka untuk mengatasi ini.

    Pemacu keadaan pepejal pengguna gred sering menyisihkan kira-kira 7% daripada jumlah flash flash mereka dan menjadikannya tidak tersedia kepada pengguna. Ini dikenali sebagai "overprovisioning" - perkakasan penyimpanan tambahan ditambah ke pemacu tetapi tidak dapat dilihat oleh komputer sebagai storan yang tersedia yang boleh digunakan. Kawasan ganti memastikan bahawa pemacu tidak boleh menjadi sepenuhnya penuh - akan sentiasa ada beberapa kapasiti ganti untuk membantu mengekalkan prestasi stabil.

    Setiap pengawal pemacu keadaan pepejal mempunyai algoritma pengumpulan sampah untuk mengatasi masalah ini. Apabila pemacu menjadi penuh, ia akan mencari blok yang dipenuhi separa dan mula menyatukannya, membebaskan sebanyak mungkin blok kosong. Pemacu keadaan pepejal yang berbeza menjalankan operasi ini pada masa dan ambang yang berlainan - yang bergantung kepada pengawal pemacu.

    Benchmark Bukti

    Anandtech melakukan pelbagai tanda aras dengan pemacu yang berbeza untuk mengusik hubungan antara kawasan ganti pemacu keadaan pepejal dan konsistensi prestasi operasi tulisnya. Apabila mengisi kekosongan kosong, mereka mendapati prestasi menulis yang tinggi awal dalam proses dan kejatuhan yang ketara kerana operasi tulis terus mengisi pemacu.

    Mengetepikan lebih banyak kawasan ganti pada pemacu membantu prestasi supaya tetap konsisten, kerana memastikan pemacu sentiasa mempunyai blok kosong yang cukup.

    Mereka mendapati bahawa "prestasi minima meningkat dengan ketara sekali apabila anda memukul 25% kawasan ganti untuk pemacu [pengguna] ini." Cadangan akhir mereka adalah bahawa anda harus "merancang untuk menggunakan hanya kira-kira 75% daripada kapasiti [memandu] anda jika anda ingin keseimbangan yang baik antara konsistensi dan keupayaan prestasi. "


    Jika anda mempunyai pemacu keadaan pepejal, anda harus cuba mengelak daripada menggunakan lebih daripada 75% kapasitinya. Beli pemacu yang lebih besar dengan simpanan yang lebih banyak daripada yang anda perlukan dan anda akan memastikan bahawa anda sentiasa mempunyai prestasi menulis yang konsisten. Untungnya, SSD secara beransur-ansur menjadi lebih murah, jadi ini tidak mahal seperti dulu.

    Kredit Imej: Sorter Muzik di Wikimedia Commons, Simon Wüllhorst di Flickr