Page 1 of 1

Virtualization As a Way To Multi-Task

Posted: 25. Nov 2009, 22:14
by sflaum@flauminc.com
I have a long-running (i.e. several hours), compute-bound program which is now mostly single threaded.It would be easy to partition the processing into parallel tasks. In theory, I could then run each partition simultaneously on a different processor. Unfortunately, much of the processing is done in Excel and you cannot run multiple instances of Excel in one instance of Windows.

Therefore I'm thinking of running parallel tasks in different virtual machines. One master task would create several virtual machines and parcel out the work to them, plus merge the results. I suppose the master task could start the subordinate virtual machines, and the processing program (including an instance of Excel) could start when each machine boots. Also, I suppose I could pass data back and forth in files; the volume of data to be shared is moderate and the tasks could poll the disk. My app is written in VB6 and VB 2008.

How practical would this be -- i.e. how difficult to program, and would it use the multiple cores effectively?

Thanks.

Re: Virtualization As a Way To Multi-Task

Posted: 26. Nov 2009, 02:58
by MarkCranness
sflaum@flauminc.com wrote:How practical would this be -- i.e. how difficult to program, and would it use the multiple cores effectively?
Honestly, I would say that programming a master task around virtual machines around an Excel program to do compute intensive tasks would be creating a bigger mess around what must already be a big mess.

I would re-write the Excel in a proper programming language. Choose your programming language:
http://gmarceau.qc.ca/blog/2009/05/spee ... ty-of.html
http://shootout.alioth.debian.org/u32q/fun.php?d=
http://shootout.alioth.debian.org/