IO效能相關

2021-08-28 04:16:40 字數 1300 閱讀 8053

網絡卡效能優化方案

繫結中斷 至特定cpu

減少介面屬性設定

資料報打入cpu標籤,提公升快取命中

磁碟隨機讀寫優化方案

批量讀寫

尋道更快、轉速更高的硬碟

記憶體作為快取

ssdraid

磁碟順序讀寫優化方案

raid

ssdiops(每秒執行的io次數)、bw(頻寬,每秒的吞吐量)、lat(每次io操作的延遲)

當每次io操作的block較小時,如512bytes/4k/8k等,測試的主要是iops。

當每次io操作的block較大時,如256k/512k/1m等,測試的主要是bw。

iops——寫測試 dd if=/dev/zero of=./a.dat bs=8k count=1m oflag=direct

iops——讀測試 dd if=./a.dat of=/dev/null bs=8k count=1m iflag=direct

bw——寫測試 dd if=/dev/zero of=./a.dat bs=1m count=8k oflag=direct

bw——讀測試 dd if=./a.dat of=/dev/null bs=1m count=8k iflag=direct

為何隨機是關注iops,順序關注吞吐量?

因為隨機讀寫的話,每次io操作的定址時間和旋轉延時都不能忽略不計,而這兩個時間的存在也就限制了iops的大小;而順序讀寫可以忽略不計定址時間和旋轉延時,

主要花費在資料傳輸的時間上。

但是編寫應用程式時,是無法控制隨機和順序讀寫的,應用層無法保證,作業系統(確切地說是檔案系統)會自動追求。

如果你想保證寫入是順序的,那麼你需要直接操作磁碟,而不是檔案系統,同時你需要維護當前從盤的資料,寫的時候不會覆蓋原有的資料總的來說,

為了這個的效能提公升去開發這麼乙個系統是不太划算的,當然google這麼做了,不代表這麼做是最合適的;直接換ssd帶來的效能提公升是這種方式的提公升的數百倍

應用程式要保證的是盡可能的利用快取,以提高檔案讀寫的效率。不能乙個位元組乙個位元組的立刻寫到硬碟裡面去,而是要一塊資料一起交給檔案系統去寫。

除了標準的4kb記憶體頁,你最大可以定義 1gb 的頁面大小。在系統啟動期間,你能用「大記憶體頁」為應用程式預留一部分記憶體。這部分記憶體,

即被「大記憶體頁」占用的這些儲存器永遠不會被交換出記憶體。它會一直保留其中,除非你修改了配置。這會極大地提高像 oracle 資料庫這樣的需要海量內

存的應用程式的效能。

通過啟用「大記憶體頁」,系統具只需要處理較少的頁面對映表,從而減少訪問/維護它們的開銷!

在通用程式中也可以使用大頁記憶體。

MySQL效能優化 I O相關配置引數

本文介紹innodb和myisam兩種儲存引擎的i o相關引數配置。1.innodb i o相關配置 innodb是一種事務型的儲存引擎,為了減少提交事務時產生的io開銷,innodb採用了寫日誌的方式,也就是在事務提交的時候會先寫入事務日誌中 而不是每次都把修改或者資料重新整理到資料檔案中,這樣做...

效能優化CPU 記憶體 磁碟I O 網路效能相關命令

系統優化是一項複雜 繁瑣 長期的工作,優化前需要監測 採集 測試 評估,優化後也需要測試 採集 評估 監測,而且是乙個長期和持續的過程,不 是說現在優化了,測試了,以後就可以一勞永逸了,也不是說書本上的優化就適合眼下正在執行的系統,不同的系統 不同的硬體 不同的應用優化的重點也不同 優化的方法也不同...

磁碟 I O 效能

如果將 sql server 配置成僅包含幾個千兆位元組 gb 的資料,且不承擔繁重的讀或寫活動,便沒有太大的必要關注磁碟 i o 主題,以及在硬碟之間平衡 sql server i o 活動以獲取最佳效能。但是要建立包含成百上千 gb 位元組的資料且 或承擔繁重的讀和 或寫活動的大型 sql se...