TRIM untuk pengguna tingkat lanjut

Di Komputer! Total masalah 4/2010 kami menguji lima SSD dengan dukungan untuk TRIM. Demi kesederhanaan, kami mengasumsikan lokasi dalam pengujian sebagai tempat SSD dapat menyimpan data. Sebenarnya yang disebut 'halaman' dan 'blok' digunakan untuk ini. Pada artikel ini kita akan melihat lebih dekat bagaimana halaman, blok dan hubungan dengan TRIM bekerja.

TRIM adalah perintah yang memastikan bahwa SSD mempertahankan kinerja tulis yang optimal. Pengoperasian TRIM hanya benar-benar dapat dipahami jika Anda mengetahui struktur SSD. SSD menyimpan informasi di 'halaman', yang dikelompokkan dalam 'blok'. Untuk memahami konsep ini, Anda harus terlebih dahulu mempertimbangkan komposisi SSD Multi Level Cell (MLC) seperti yang diuji di Komputer! Total 4/2010. MLC SSD terdiri dari milyaran sel memori, yang masing-masing dapat menyimpan beberapa bit. Kumpulan yang teratur dari sel-sel ini disebut halaman dan merupakan unit terkecil untuk menyimpan atau membaca kembali file dalam SSD. Sebuah halaman biasanya berukuran 4 KB. Jadi jika Anda menyimpan file berukuran 1 KB, file ini akan memakan waktu 4 KB di SSD.

Blok

Blok adalah unit penting untuk SSD, karena ini adalah kumpulan 'halaman' terkecil yang harus dibaca SSD untuk menghapus data. Sebuah blok terdiri dari 128 halaman ini dan memiliki ukuran 512 KB. Sekarang, SSD berfungsi sebagai modul memori dalam jumlah x dalam array RAID. Ini berarti bahwa file telah tersebar di beberapa modul memori untuk kecepatan membaca maksimum. Windows 'berbicara' ke SSD melalui Logical Block Addressing (LBA), dan melacak blok mana yang sedang digunakan dan yang tersedia. Karena SSD berfungsi dengan halaman, pengontrol SSD harus mengubah perintah LBA. Perintah Windows untuk menimpa file diterjemahkan oleh SSD (jika memungkinkan) untuk menulis ke halaman kosong. Jika tidak ada halaman kosong, halaman harus dikosongkan terlebih dahulu.

Tertunda dalam menulis

Masalah terjadi ketika tidak ada cukup halaman kosong yang tersedia untuk menyimpan file ketika ada lebih dari cukup ruang yang tersedia menurut indeks Windows. Bagaimanapun, sebuah file tidak pernah benar-benar dihapus saat perintah diberikan. Ini hanya terjadi jika ruang yang ditempati oleh file yang dipermasalahkan ditimpa oleh data baru. Masalahnya adalah SSD tidak dapat secara langsung menimpa halaman yang berisi bagian file yang tidak lagi digunakan. SSD harus terlebih dahulu membaca blok dan menempatkannya di memori cache-nya sendiri, karena data hanya dapat dihapus di sana. Dalam memori cache, halaman yang relevan dikosongkan dan kemudian seluruh blok dengan halaman kosong dikembalikan ke SSD,setelah itu halaman ini tersedia untuk data baru. Ini memperlambat proses menulis dengan faktor tiga atau lebih.

MEMANGKAS

Penyelamat untuk situasi ini adalah TRIM. Ini adalah perintah yang dikirim Window 7 ke SSD selama penghapusan. Perintah ini memberi tahu pengontrol SSD halaman mana yang benar-benar dapat dihapus dan membuat SSD berfungsi dengan membaca blok dan mengosongkan halaman yang diisi dengan file (dan yang dapat ditimpa oleh Windows). Dengan cara ini, SSD tetap dalam kondisi optimal dengan memiliki stok halaman kosong yang cukup dan tugas tulis selalu dapat dijalankan secara optimal. Kami menunjukkan kepada Anda langkah demi langkah apa yang terjadi ketika SSD menulis dan menghapus file dan bagaimana TRIM memastikan bahwa selalu ada cukup halaman yang gratis.

1. SSD Kosong

Bayangkan jika kita memiliki SSD dengan kapasitas penyimpanan persis 1 blok. Blok kosong 512 KB di SSD terdiri dari 128 halaman kosong 4 KB.

2. Tulis file

Kami ingin menulis file 12 KB, yang akan mengisi 3 halaman dengan 4 KB (biru).

3. Tulis file lain

Kami kemudian ingin menulis file 8 KB lainnya (ungu). Total kami telah menggunakan 20 KB. Jadi kami masih memiliki 512 KB - 20 KB = 492 KB gratis, atau 123 halaman gratis.

4. Hapus file

Kami sekarang akan menghapus file 8 KB (ungu). Menurut Windows, SSD kami masih memiliki 512 KB - 12 KB = 500 KB tersedia. Namun, SSD kami masih mencatat 123 halaman kosong dan 2 halaman dengan data yang dapat dihapus.

5. Simpan file

Kami sekarang menulis 4 KB (hijau). Dua halaman yang berisi informasi dengan 'data yang akan dihapus' dilewati oleh SSD. Pertama halaman kosong diisi.

6. POTONG di tempat kerja

Dengan dukungan untuk TRIM, Windows 7 mengirimkan perintah TRIM bersama dengan tindakan hapus. Akibatnya, pengontrol SSD mengetahui bahwa data ini sebenarnya dapat dihapus. Ketika SSD tidak ada hubungannya untuk sementara waktu, SSD akan memindahkan seluruh blok 512 KB, yang sebagian telah ditetapkan sebagai hapus oleh perintah TRIM, ke memori cache. Di sini file (ungu) yang dihapus oleh perintah TRIM sebenarnya akan dihapus.

7. Halaman dihapus

Sekarang 2 halaman tersebut dapat dikosongkan dan seluruh blok dikembalikan. Bisa dibayangkan ketika Anda akan menghapus file 10MB, kami harus menghapus total 2560 halaman. Jika ini kemudian juga dibagi menjadi blok yang berbeda, maka banyak data harus dibaca. Meskipun satu blok hanya berisi file 4 KB, 512 KB harus dibaca untuk menghapus bagian 4 KB. TRIM memastikan bahwa ini terjadi saat Anda tidak menggunakan SSD.

8. Kosongkan ruang lagi

Sekarang 2 halaman tersebut hanya siap untuk ditulis kembali.

9. Simpan file ke ruang kosong

Jika file berukuran 12 KB sekarang ditulis, ada cukup halaman yang bebas untuk menulis file (oranye).