That is correct. You will parallelize the processing through the operating system, but NOT through the hardware.
Printable View
That is correct. You will parallelize the processing through the operating system, but NOT through the hardware.
Thanks! I get it now... Bye!
This is COMPLETELY UNTRUE.Quote:
Originally Posted by TheCPUWizard
Look at next red-colored line and consider also about preemptive scheduling.
Quote:
Originally Posted by TheCPUWizard
Henky,
I have only been doing network analysis of etherrnet based systems for about 23 years.....
It does APPEAR that there is a contratiction in the items you quoted, but there is not, if you look at the total network picture. The actual end-2-end total transfer time will be so close that the random variations caused by CSMA/CD will actually overlap the differential rendering it meanless.
Remember that we are talking about comparing a long running volume of data that is effectively traveling from point-2-point, and the issue is total throughput over time.
Note that in the first I am NOT saying to use a single Socket, but that a single thread can effectively serice many sockets. You still get the full benefit of the overlapping of ACK/NAK.
With multiple threads there are (by definition) Context switches which take time. With Completion ports these are minimized.
The actual calculation becomes how long is the single thread busy with one completion request before it can service the second. If this time is long enough that the NIC gets starved for data (resulting in a gap in the transmission), then it has meaning. With the current capabilities of NICs, and the buffering that is inherent in the OS, this is VERY rarely the case.
This is actually very easy to test with a simple network analyzer that examines the timing of the individual packets, and the duty cycle of carrier sense (remember that transmitters are REQUIRED to put gaps into the stream to avoid clogging the network.
Now if you really what to get the last bit of performance out, then the best bet is to split the transmissions over multiple NIC's that are connected to different internet access points (assuming you local connection is the slow point of the chain).
I just never compare between multithread with multiple socket and
single thread with multiple I/O completion port socket.
I have no word to say no. You are absolutely right. Sorry made you impatient:).
Not to worry. Usually if someone questions one of my posts, it means I rushed the answer and did not fully explain myself.... :wave: :wave: :wave: :wave:Quote: