@@ -122,7 +122,7 @@ func main() {
122122 fmt .Println ("" )
123123 fmt .Println (" --create-test-files" )
124124 fmt .Println (" This will create all test files that are required for some disk tests." )
125- fmt .Printf (" ATTENTION: This will use %s of disk space" , getFilesizeDesc (config .DiskTestRoFileSize * config .DiskTestRoFiles ))
125+ fmt .Printf (" ATTENTION: This will use %s of disk space" , getFilesizeDesc (config .DiskTestRoFileSize * config .DiskTestRoFiles , "" ))
126126 fmt .Println ("" )
127127 fmt .Println (" --run" )
128128 fmt .Println (" Runs the tests" )
@@ -186,8 +186,9 @@ func main() {
186186
187187 if config .DiskTestWrdFiles > 0 {
188188 logLinePrefix = "Disk WRD Test: "
189- logPrintf ("Started with %d files, each %s\n " , config .DiskTestWrdFiles , getFilesizeDesc (config .DiskTestWrdFileSize ))
190- logPrintf ("Total Filesize %s\n " , getFilesizeDesc (config .DiskTestWrdFiles * config .DiskTestWrdFileSize ))
189+ logPrintf ("Started with %d files, each %s\n " , config .DiskTestWrdFiles , getFilesizeDesc (config .DiskTestWrdFileSize , "" ))
190+ totalFileSize := config .DiskTestWrdFiles * config .DiskTestWrdFileSize
191+ logPrintf ("Total Filesize %s\n " , getFilesizeDesc (totalFileSize , "" ))
191192 // write all files
192193 totalCount := 0
193194 for {
@@ -215,7 +216,7 @@ func main() {
215216 }
216217 }
217218 results .WrdWriteAvg = results .WrdWriteTotal / config .DiskTestWrdFiles
218- logPrintf ("Writes done in %dms, min: %dms, max: %dms, average: %dms\n " , results .WrdWriteTotal / 1000 , results .WrdWriteMin / 1000 , results .WrdWriteMax / 1000 , results .WrdWriteAvg / 1000 )
219+ logPrintf ("Writes done in %dms, min: %dms, max: %dms, average: %dms, %s \n " , results .WrdWriteTotal / 1000 , results .WrdWriteMin / 1000 , results .WrdWriteMax / 1000 , results .WrdWriteAvg / 1000 , getAvgTransferSpeed ( results . WrdWriteTotal , totalFileSize ) )
219220 // read all files
220221 totalCount = 0
221222 for {
@@ -245,7 +246,7 @@ func main() {
245246 }
246247 }
247248 results .WrdReadAvg = results .WrdReadTotal / config .DiskTestWrdFiles
248- logPrintf ("Read done in %dms, min: %dms, max: %dms, average: %dms\n " , results .WrdReadTotal / 1000 , results .WrdReadMin / 1000 , results .WrdReadMax / 1000 , results .WrdReadAvg / 1000 )
249+ logPrintf ("Read done in %dms, min: %dms, max: %dms, average: %dms, %s \n " , results .WrdReadTotal / 1000 , results .WrdReadMin / 1000 , results .WrdReadMax / 1000 , results .WrdReadAvg / 1000 , getAvgTransferSpeed ( results . WrdReadTotal , totalFileSize ) )
249250 // delete all files
250251 totalCount = 0
251252 for {
@@ -272,15 +273,16 @@ func main() {
272273 }
273274 }
274275 results .WrdDeleteAvg = results .WrdDeleteTotal / config .DiskTestWrdFiles
275- logPrintf ("Delete done in %dms, min: %dms, max: %dms, average: %dms\n " , results .WrdDeleteTotal / 1000 , results .WrdDeleteMin / 1000 , results .WrdDeleteMax / 1000 , results .WrdDeleteAvg / 1000 )
276+ logPrintf ("Delete done in %dms, min: %dms, max: %dms, average: %dms, %s \n " , results .WrdDeleteTotal / 1000 , results .WrdDeleteMin / 1000 , results .WrdDeleteMax / 1000 , results .WrdDeleteAvg / 1000 , getAvgTransferSpeed ( results . WrdDeleteTotal , totalFileSize ) )
276277
277278 logPrint ("Ended" )
278279 logPrintf ("%dms total runtime\n " , (results .WrdWriteTotal + results .WrdReadTotal + results .WrdDeleteTotal )/ 1000 )
279280 }
280281 if config .DiskTestRoFiles > 0 {
281282 logLinePrefix = "Disk Read-Only Test: "
282- logPrintf ("Started with %d files, each %s\n " , config .DiskTestRoFiles , getFilesizeDesc (config .DiskTestRoFileSize ))
283- logPrintf ("Total Filesize %s\n " , getFilesizeDesc (config .DiskTestRoFiles * config .DiskTestRoFileSize ))
283+ totalFileSize := config .DiskTestRoFiles * config .DiskTestRoFileSize
284+ logPrintf ("Started with %d files, each %s\n " , config .DiskTestRoFiles , getFilesizeDesc (config .DiskTestRoFileSize , "" ))
285+ logPrintf ("Total Filesize %s\n " , getFilesizeDesc (totalFileSize , "" ))
284286 totalCount := 0
285287 for {
286288 totalCount ++
@@ -309,7 +311,7 @@ func main() {
309311 }
310312 }
311313 results .RoReadAvg = results .RoReadTotal / config .DiskTestRoFiles
312- logPrintf ("Read done in %dms, min: %dms, max: %dms, average: %dms\n " , results .RoReadTotal / 1000 , results .RoReadMin / 1000 , results .RoReadMax / 1000 , results .RoReadAvg / 1000 )
314+ logPrintf ("Read done in %dms, min: %dms, max: %dms, average: %dms, %s \n " , results .RoReadTotal / 1000 , results .RoReadMin / 1000 , results .RoReadMax / 1000 , results .RoReadAvg / 1000 , getAvgTransferSpeed ( results . RoReadTotal , totalFileSize ) )
313315 logPrint ("Ended" )
314316 logPrintf ("%dms total runtime\n " , results .RoReadTotal / 1000 )
315317 }
@@ -377,13 +379,20 @@ func readConfig() {
377379 results .Config = config
378380}
379381
380- func getFilesizeDesc (size int ) string {
381- str := strconv .Itoa (size ) + " bytes ("
382+ func getFilesizeDesc (size int , unitAffix string ) string {
383+ str := strconv .Itoa (size ) + " bytes" + unitAffix + " ("
382384 if size > 1024 * 1024 {
383385 str += strconv .FormatFloat (float64 (float64 (size )/ 1024.0 / 1024.0 ), 'f' , 2 , 64 ) + " MB"
384386 } else if size > 1024 {
385387 str += strconv .FormatFloat (float64 (float64 (size )/ 1024.0 ), 'f' , 2 , 64 ) + " KB"
386388 }
387- str += ")"
389+ str += unitAffix + ")"
388390 return str
389391}
392+
393+ func getAvgTransferSpeed (us int , bytes int ) string {
394+ if us <= 0 {
395+ return ""
396+ }
397+ return getFilesizeDesc ((bytes / us * 1000 * 1000 ), "/s" )
398+ }
0 commit comments