i'm testing bandwidth using fio benchmark tool. here is my hardware spec
cpu : Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.3GHZ ,
ssd : Intel Solid State Drive 750 series, 400GB, 20nm Intel NAND Flash Memory MLC. NVMe PCIe 3.0*4 ADD-In card.
I could invalidate the buffer/page cache parts of the files to be used prior to starting I/O when i made the fio file.
And i used O_DIRECT flag(non-buffered IO) to bypass the page cache and used linux native asynchronous I/O request.
when i test with one core, fio output says that bandwidth which core0 received is 1516.7MB/s.
it doesnt exceed bandwidth limitation of intel SSD 750. it doesn't matter.
but, when i do this with 3cores, the total bandwidth of cores is exceeds intel SSD 750 bandwidth limitation.
total amount of bandwidth of 3cores is about 3000MB/s.(core0: 1000mb/s, core1: 1100mb/s, core2: 1000mb/s)
according to intel SSD 750 spec, it says my intel SSD bandwidth can go up to 2200MB/s. 3000MB/s exceeds 2200MB/s.
i don't know how this is happened.
is there somebody help me?
The scenario that you are describing is not possible as the SSD itself has hardware and software limitations that set the maximum limit in the performance, in this case 2200 MB/s for the sequential reads. This means that the SSD cannot handle a higher bandwidth simply because of its structure.
Having said that, the value of 3000 MB/s you are reporting is not correct. Your test result shows that every core has a bandwidth around 1000 MB/s, therefore the average bandwidth is 1000 MB/s, but you cannot combine them to say that the total bandwidth is 3000 MB/s. Although you have different cores working in parallel, they cannot access the SSD all at the same time. The core0 will access the SSD at some point, then the core1, then the core2, then the core1 again and so on, all of them with an average bandwidth of 1000 MB/s.
I hope this information clarifies your concern. If there is anything else I can help you with, feel free to ask.
Have a nice day.