How to reduce the processing time of a C# application that merges tif image files using VS2010 with .Net Framework 4.0 ?

I am developing a C# application using VS2010 and .Net Framework 4.0

I have attached my C# code.

Basically I am reading a directory that has over 10,000 check images.
For each check, there are 2 check image files (front side of check and back side of check):   XXX represents the filename.  
XXX._Front.TIF
XXX._Rear.TIF

I have a function named "ProcessDirectory" that retrieves each check's file name and then calls a function titled "ProcessImage"
which merges the front check image file and back check image file into 1 check image file per check that shows the front check image on the top and the back check image on the bottom of the merged file.

This executable takes over 90 minutes to run. Can you think of a way to reduce the processing time by modifying the code?
zimmer9Asked:
Who is Participating?
 
David Johnson, CD, MVPConnect With a Mentor OwnerCommented:
90 minutes per image or 90 minutes to process 10K images? Have you profiled your code to see where it is bogging down? What are your disk queue's like? How many iops do you have available? (read/write to an SSD might help). What is your cpu percentage?  Lots of free memory?
Why still using VS2010?
0
 
Fernando SotoRetiredCommented:
What code?
0
 
zimmer9Author Commented:
0
What Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

 
zimmer9Author Commented:
90 minutes to process the 10K images.
0
 
käµfm³d 👽Commented:
Have you profiled your code to see where the most time is being spent?
0
 
Kyle AbrahamsSenior .Net DeveloperCommented:
Also have you tried to go multithreaded?

eg:
get a distinct list of the check images
then pass to a thread to with the file name to do the actual processing.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.