[padb] r332 committed - Migrate orte from using setup_pcmd to using setup_job for setting up t...
padb at googlecode.com
padb at googlecode.com
Wed Nov 25 13:16:48 GMT 2009
Revision: 332
Author: apittman
Date: Wed Nov 25 05:15:57 2009
Log: Migrate orte from using setup_pcmd to using setup_job for setting up
the
runtime to attach to a job. Whilst I'm at it add a cleanup_cb and
cleanup_handle
to the hash to replace the cleanup_pcmd function.
http://code.google.com/p/padb/source/detail?r=332
Modified:
/trunk/src/padb
=======================================
--- /trunk/src/padb Tue Nov 24 03:36:15 2009
+++ /trunk/src/padb Wed Nov 25 05:15:57 2009
@@ -430,8 +430,7 @@
$rmgr{orte} = {
is_installed => \&open_is_installed,
get_active_jobs => \&open_get_jobs,
- setup_pcmd => \&open_setup_pcmd,
- cleanup_pcmd => \&open_cleanup_pcmd,
+ setup_job => \&open_setup_job,
};
$rmgr{'lsf-rms'} = {
@@ -2805,9 +2804,7 @@
return keys %open_jobs;
}
-my $open_dfile;
-
-sub open_setup_pcmd {
+sub open_setup_job {
my $job = shift;
open_get_data();
@@ -2822,17 +2819,25 @@
}
close $fh;
- $open_dfile = $fn;
-
my $prefix = find_ompi_prefix();
my $cmd = "orterun -machinefile $fn -np $i $prefix";
- my $hosts = @hosts;
-
- return ( $cmd, $open_jobs{$job}{nprocs}, $hosts,
$open_jobs{$job}{ranks} );
+
+ my %pcmd;
+ $pcmd{nprocesses} = $open_jobs{$job}{nprocs};
+ $pcmd{nhosts} = @hosts;
+ $pcmd{process_data} = $open_jobs{$job}{ranks};
+ $pcmd{command} = $cmd;
+ @{ $pcmd{host_list} } = @hosts;
+ $pcmd{cleanup_cb} = \&open_cleanup_job;
+ $pcmd{cleanup_handle} = $fn;
+
+ return %pcmd;
+
}
-sub open_cleanup_pcmd {
- unlink $open_dfile if ( defined $open_dfile );
+sub open_cleanup_job {
+ my $file = shift;
+ unlink $file;
return;
}
@@ -4858,7 +4863,12 @@
debug_log( 'verbose', undef, 'Completed command' );
+ if ( defined $pcmd{cleanup_cb} ) {
+ $pcmd{cleanup_cb}( $pcmd{cleanup_handle} );
+ }
+
cleanup_pcmd();
+
return $errors;
}
More information about the padb-devel
mailing list