Community
cancel
Showing results for 
Search instead for 
Did you mean: 
ClayB
Black Belt
82 Views

Performance of I/O Completion Ports

Back in August, we has some questions and information on I/O Completion Ports under Win32 Threads. (See... http://softwareforums.intel.com/ids/board/message?board.id=42&message.id=120)
Has anyone had any experience with these and been able to compare them to alternative methods for performance? Completion ports seem to be a convenient method for setting a pool of threads to perform tasks related to asyncrhonous I/O. But is it the best method? Would a "hand crafted" pool of threads with a work queue be more productive? Are completion ports just a simple syntactic sugar that is more expensive than doing the same by hand? Are there special cases when some other method would be better than completion ports (reading multiple files, reading blocks of a single file, "listening" at sockets for activity)?
Anyone care to share their experiences with using I/O Completion Ports? The good, the bad and, the ugly are welcome.
-- clay
Tags (1)
0 Kudos
1 Reply
v_lavrnic
Beginner
82 Views

Hello

I just recently join this forum so that is why such late reply. I read a few books, papers etc. about network IO and bottom line is: IOCP is the best. Yes it is little complicated in the beginning but if you reuse your code this should not be a problem. For further reading I suggest Microsoft Windows Network Programming 2nd Edition, Chapter 6: Scalable Winsock Applications where You can find various network IO models compared.

VL

Reply