[Swift-devel] dynamic site selection?

Michael Wilde wilde at mcs.anl.gov
Thu May 16 18:08:39 CDT 2013


Do we have any mechanism that can be used to for an app() invocation to select a specific site?

The immediate application for this is to use Swift itself to drive the remote Swift site testing. 

One way to do this is with something like dynamic profiles, which forces an app() invocation to select a specific site name (assuming the app is cataloged on that site). Eg, a "runtime" settings directive that works like the "profile" directive and passes a site to the scheduler:

app (file log) runTest (file test_package, string site)
{
  runtime "site" = site;
  runTestSuite @log @test_package;
}

string sites["midway","fusion","uc3","beagle","blues"];
...

foreach site in sites {
  log[site] = runTest(testpack[site],site);
}

A perhaps simpler interim step would be the ability to set the command name in the app command template dynamically, thus selecting one of a set of apps cataloged in the tc.data file:

app (file log) runTest (file test_package, string site)
{
  @strcat("runTestSuite_",site) @log @test_package;
}

This avoids having to do the same thing with a set of N app() definitions, one per site, and a routing function with a switch statement. Which is what we'll have to do in the interim.

Are any of these solutions easy to do?

Thanks,

- Mike

-- 
Michael Wilde
Computation Institute, University of Chicago
Mathematics and Computer Science Division
Argonne National Laboratory




More information about the Swift-devel mailing list