http://qs321.pair.com?node_id=1130411

bit.surfer has asked for the wisdom of the Perl Monks concerning the following question:

Hi,
I have a perl script which repeatedly calls an application I have written. Each time I pass different arguments to my application (i.e. number of threads to use or different input parameters). I'm trying to figure out how to capture the process information such as the number of I/O read /write bytes and other information that is available in the task manager. Loosely, my script is as follows (I've edited to abbreviate it - such as my command construction and some post-processing).

I've tried to use the Win32::Process::Info module - but just don't seem to be able to make it work. In the code below I want to determine the process information of the command executed by "system" at the point it is finishing (i.e. I want the final values). Any pointers?
Thx.

#!/usr/bin/perl use Win32::Process::Info; use strict; use warnings; my @models = { "model1", "model2"}; my @cpus = ( 2, 4); foreach my $model (@models) { foreach my $cpu (@cpus) { my $cmdstring = "\"myapp.exe\""; $cmdstring .= " NPROCESSORS=$cpu"; $cmdstring .= " $model"; $cmdstring .= " > nul"; system($cmdstring); } }