title: Separate CPU and IO time
body: <p>I have an application with a lot of IO. This application is multithreaded and has a single thread dedicate to IO requests and hence some of the time, IO and CPU is overlapped.</p>
  
  <p>It is written in C for Linux.</p>
  
  <p>I would like to know how much useful work the CPU is doing. For instance, if we made a perfect RAID system we may be able to reduce significantly (if not eliminate) the IO factor. Afterwards, we are limited by the main memory and CPU throughput. How can I know this? How can I measure this?</p>
  
  <p>Thanks
  Bob</p>