I/O Bound vs CPU Bound
Explore the key differences between I/O bound and CPU bound programs in C#. Understand how each type utilizes computer resources and learn how concurrency and multithreading can improve program performance by optimizing CPU and I/O operations.
We'll cover the following...
I/O Bound vs CPU Bound
We write programs to solve problems. Programs utilize various resources of the computer systems on which they run. For instance a program running on your machine will broadly require:
CPU Time
Memory
Networking Resources
Disk Storage
Depending on what a program does, it can require heavier use of one or more resources. For instance, a program that loads gigabytes of data from storage into main memory would hog the main memory of the machine it runs on. Another can be writing several gigabytes to permanent storage, requiring abnormally high disk I/O.
CPU Bound
Programs which are compute-intensive, i.e. where the program execution requires ...