[Swift-devel] direct mode

Mihael Hategan hategan at mcs.anl.gov
Thu Aug 7 20:56:15 CDT 2014


Hi,

This is a report on the direct mode situation. I wanted to send this
before the meeting tomorrow, so we can discuss the issues.

It is fairly easy to implement a manual direct mode, where one would use
direct:// in the mapper file specification. This requires a modification
of filename()/filenames(), as well as skipping the staging of files with
direct://.

It seems more difficult to implement a general direct staging mode.
Here's why:

- since staging modes are now per-site, the exact result of filename()
can only be properly assessed after site selection, which happens after
filename() is invoked. This can be addressed by having filename() return
an object that gets resolved from execute2(), and I have some
uncommitted code for this.
- the notion of direct cannot readily be used in all places. Some parts
of swift still assume certain paths for certain things, such as the
wrapper log, stdout and stderr files (if not specified by the user), the
location of _swiftwrap (expected to be in the job directory). This would
require either a modification to all places that expect such default
locations, or a fallback staging mode (i.e. direct as much as you can,
and then proxy or file for things that can't be direct).

Mihael




More information about the Swift-devel mailing list