title: multi-threading question for large batch process
body: <p>We have a batch process consisting of about 5 calculations that happens on each row of data (20 million rows total).  Our production server will have around 24 processors with decent CPUs.</p>
  
  <p>Performance is critical for us.  Assuming that our algorithms are pretty efficient, what would be the best way to achieve maximum time performance for this?  Specifically, should we be able to achieve better performance through multi-threading, using threadpools, etc?  Also, could use of the Process object to divide up the batch into multiple programs be of benefit?</p>