15 Input and Output
MOST PROGRAMS TODAY spend the majority of their time performing I/O versus pure computational work. This can encompass reading from and writing to files on disk, making Web service invocations, doing raw network socket communication, and so on. For anybody wanting to use parallelism to speed things up, this can pose some unique challenges. There’s one disk on most client machines, after all, so if most of the time is spent waiting for it, how are we to speed things up? If we parallelize across 16 cores, and yet all of those threads just spend most of their time accessing a single disk, I/O will be a bottleneck limiting our speedup.
I/O is interesting (and challenging) for another reason: I/O operations, much like synchronization ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access