Re: [問題] 關於SSD的瞭解

看板Storage_Zone (儲存裝置)作者 (喵喵叫的蜜蜂貓)時間15年前 (2010/11/22 15:13), 編輯推噓5(503)
留言8則, 6人參與, 最新討論串2/3 (看更多)
後面回的很長,先講一下我想問的 就是目前各大SSD控制卡廠商 對於AMD晶片組的相容性有誰弄得比較好或是有在弄的? 白白都是SF-1200,在AMD晶片組下效能整個哭哭 ※ 引述《iamstudent (stu)》之銘言: : 現在的SSD雖然價格偏貴 : 但是至少已經下降到可以買的程度了 : 所以做了一點功課 : 爬了不少文章之後有點心得 : 不過也有一些問題 : 所以想請教一下版上先進 : 看看這些想法是不是對的 : 1 一般硬碟的傳輸速度,讀和寫是差不多的。 一般硬碟的讀取還是會比寫入快一點 取得磁粉的方向,跟改變磁粉的方向所需要的時間還是會有些微的差距 但這個差距在機械限制(讀取頭移位 & 轉盤定位)前顯得微不足道 : 7200轉大概是 90~100MB/s : 10000轉可以到130MB/s : 而同轉速下,容量比較大的硬碟則通常會快一點? 這樣講不對,應該說「同轉速下,資料密度比較高的硬碟比較快」 同樣1T硬碟,單碟500G的會比單碟333G的快(連續讀/寫速度) : 而一般SSD的讀取速度能有200MB/s 但是寫入就只有70~110MB/s : ocz vertex2 可以有200MB/s的寫入則是例外 : 一般SATA2 可以有3Gb/s,也就是375MB/s的傳輸速度 : 整體來說,也就是SATA3 (6Gb/s) 其實沒有必要,對嗎? 寫入速度隨著SF-1200等控制器出現後,過去只有SLC(=昂貴)才能擁有的寫入效能 可以用不到NTD.1k/1GB買到,未來還會繼續下降 SATA-3目前並不普及,再加上Intel要在下一代晶片才開始提供SATA-3 (Sandy Bridge 預計2011Q1) 所以各廠商都還呈現觀望態度(這是個人臆測) 事實上已經有不少SSD達到SATA-2的實際傳輸上限了 SATA-3還有新的指令集與省電處理,不光是提高速度一項而已 : 2 HDD Access Time大約都是20ms左右 轉速越快通常時間越短,兩萬轉的SCSI HDD可以到3ms吧 : SSD Access Time一般都是0.1ms : 但是這個Access Time主要是用來看出什麼用的? : 是小檔的存取還是硬碟反應? Access Time=從系統送出【我要存取資料】到硬碟回復【我準備好了】所需要的時間 (讀取頭到達定位) 當在存取小檔案的時候,準備完成幾乎等於存取完成 如果是存取大檔案,還會有額外的寫入跟讀取時間 : 3 真正比較能夠表現平常使用的情況,其實是4k多重讀寫的速度。 : 所以連續讀寫其實不重要? : 因為SSD通常不會拿來當作資料碟 有它的價值,不過SSD的應用確實比較少需要連續讀寫 : 4 關於trim : 因為SSD寫入時,就算只要寫入一個Byte : 也要把一個最小單位區域(2k or 4K)清除 : 當該區塊有資料時,就要先移動到其他地方放置 (這邊我自己覺得應該是不對的) 這是對的,SSD的資料儲存是用映射方式,以防止特定區塊抹除次數太多 SSD在寫入資料的方式是: 1.SSD從映射表把該區域的資料讀取到快取 2.(快取中)寫入變更 3.(從快取)寫入到空區塊(佇列首位) 4.更改映射表指向到新寫入的區塊 5.將舊區塊排入(空區塊)佇列尾端 : 所以SSD快要滿的時候,寫入速度就會變慢到大概70% : trim指令是讓OS可以通知SSD,在空閒時間去清除區域 : 目前只有win 7和linux有trim,而XP沒有 過去電腦在刪除檔案資料時,並不是真的從硬碟中把資料完全清掉 而是把檔案開頭清零,並且從檔案結構表中刪除 未來寫入資料時,就直接把舊資料覆蓋 而在SSD上,對於有舊資料(就算那些資料沒有意義)的區塊做寫入 就必須多一個讀取動作,導致寫入變慢 所以才有TRIM指令,通知SSD「這個區塊已經空了」 (SSD要把區塊清零是瞬間的事情,不像HDD要花時間寫入) : 但是也有給XP專用的優化程式(對嗎?) 就是去檢查檔案結構表,把已經沒有用的區塊清零 : 一旦使用SSD組Raid0,trim就無法使用 應該有支援TRIM的RAID卡了(吧?) : 目前在控制器上面,寫的比較好的是intel與sandFocus : 另外,只有寫入速度會變慢 : 而讀取速度是不會變慢的? SSD的讀取速度是不會變慢的,除非發生你第五點的問題 : 5 買了SSD要使用win7格式化 : 因為winXP的格式化會把sector的起點放在31.5k的位置 : 並不是2k或是4k的整數倍 : 這會讓邏輯上與實體上的sector沒有對齊 : 導致存取的區域數會提高 正解 : 6 假設拿來當作系統碟使用 : 長時間使用後的寫入速度 : SSD Raid0 > SSD with trim > SSD without trim ? : 至於系統效能,主要還是看讀取速度? : 所以其實長時間影響不大? RAID會導致Access Time增加,對於系統碟未必是優勢 尤其現在SSD單顆就可以把SATA2連續存取速度峰頂 RAID之後反而是負面影響 : 7 理論上SSD組Raid之後讀取速度會到400MB/s (會超越SATA2速度上限) : 如果是使用主機板內建的raid功能 : 會導致SSD的效能卡在南橋而沒有意義? 肯定的 : 所以要用SSD組Raid0 : 就要用Raid卡 : 或者原生就走PCI-e的Raid SSD : 例如ocz RevoDriver (內建Raid0,讀540MB/s 寫400MB/s) 直接買PCI-E介面的SSD不是更簡單... 另外現在的SSD內部本身就是RAID0(對裡面的Flash同時存取) 與其在外部搞RAID,不如買顆更高級的 : 8 有執行3D程式時錄影的需求 : 但是SSD因為寫入沒有比一般HDD快多少(也是約100MB/s) : 所以為此買SSD幫助不大? 是的,連續寫入仍以傳統硬碟為佳 : 9 如果把SSD當作系統碟,為了減少寫入提高壽命 : 要把虛擬記憶體和環境變數的TEMP設定到HDD上 : 但是這樣不就很矛盾? : 實際上這應該是最常發生的存取動作 : 卻又搬到HDD上,不就又是使用HDD的速度了? 早期的SSD真的只是Flash to SATA轉接卡,所以很容易因為連續抹除而壞區塊 現在的SSD都有很多平衡跟安全機制,加上製作工藝的提升,都敢保到三年或五年 所以說,盡管享受吧....像我不光Temp,連Pagefile都丟到SSD去了 最好是看能不能保固內去換一個新的.... 而且SSD不像HDD,馬達說停就停,不小心摔到磁頭就把磁盤刮壞掉 區塊有損壞容易早期發現早期應對 : 一個可行的辦法是開RamDisk : 把虛擬記憶體搬到RamDisk上我確認過沒有問題 : 但是把TEMP環境變數設定到RamDisk : 會不會發生有程式寫入RamDisk等待下次重開機時要呼叫 : 而資料卻隨著記憶體的重開機一起消失? : 因為感覺還有不少程式,安裝-時會要求重開機的 會發生這種問題,是程式自己設計有問題 TEMP內檔案的存活時間,只應到操作程式關閉為止 : 10 如果HD Turn 測SSD比預期的速度慢 : 找出有個預設64的選項,改成8就ok了 哪個項目啊.... 11 SSD還有一個重要的測試標的:IOPS 理論上既然SSD的Access Time 是 0.1ms 那一秒鐘應該能夠下一萬個指令? 事實上當然不是這樣,硬碟存取有很多各式各樣的指令 HDD是慢速設備,IOPS(Input/Output Operations Per Second)不會過千,也不需要高 (每秒可執行的輸入/輸出指令數) 但SSD是高速設備,IOPS從數千到數萬都有可能 在進行高度密集的隨機存取時就會顯現差異 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.180.163

11/22 15:33, , 1F
血淚控訴RevoDriver 實測絕對沒有那個數據!
11/22 15:33, 1F

11/22 16:40, , 2F
revo要在特定設定下才會跑出官方數據
11/22 16:40, 2F

11/22 18:51, , 3F
印象中,第5點如果一開始沒用Win7格式化,是不是有個
11/22 18:51, 3F

11/22 18:52, , 4F
軟體程式可以事後補救,有網友記得那程式名稱是什麼嗎
11/22 18:52, 4F

11/22 19:18, , 5F
Paragon Aligment Tool
11/22 19:18, 5F

11/22 19:21, , 6F
Thanks..剛剛慢慢爬文,#1CrKmoVF 這裡也找到了
11/22 19:21, 6F

11/23 12:36, , 7F
不知道為何我看了想打哈欠
11/23 12:36, 7F

11/24 17:40, , 8F
我倒是很開心有人願意回答這些問題
11/24 17:40, 8F
文章代碼(AID): #1CwXWjuX (Storage_Zone)
文章代碼(AID): #1CwXWjuX (Storage_Zone)