我已經使用「dd」來創建測試文件並跨HDD執行備份。沒問題。dd - 瞭解塊大小
目前,我試圖用它來測試NFS傳輸速率。起初,我正在改變塊大小(「bs」的論點)......但是這讓我想到了,爲什麼我需要改變這個論點?
,我想模擬一個典型的用例是:
- X節點的存儲器中大數據結構
- 節點X想要將其寫入到位於NFS安裝目錄中的文件
在這種情況下,用於2D陣列的典型的C/C++代碼將是:
FILE *ptr = fopen("path_to_nfs_area", "w");
for (int i = 0; i < data.size(); ++i)
fwrite(data[i], sizeof(float), width, ptr);
...
因此,在這種情況下,我們以32位增量寫入緩衝區(sizeof(float)) - 因爲這是一個FILE對象,所以它可能也被緩衝了(也許這不是一件好事,但可能無關緊要這個討論)。
我很難從「dd」寫入「bs」塊中的if->與寫入內存變量(並使用dd模擬此變量)的應用程序之間的跳轉。
是否有意義的說,改變「bs」的值比系統PAGE_SIZE小是沒有意義的?
這是我目前的理解,所以我不明白爲什麼改變「DD」塊大小會事宜:
嘗試使用'nfsstat'進行基準測試。 –