[Swift-commit] r3891 - text/parco10submission

noreply at svn.ci.uchicago.edu noreply at svn.ci.uchicago.edu
Fri Jan 7 10:48:49 CST 2011


Author: dsk
Date: 2011-01-07 10:48:49 -0600 (Fri, 07 Jan 2011)
New Revision: 3891

Modified:
   text/parco10submission/paper.tex
Log:
merging in Ian's changes


Modified: text/parco10submission/paper.tex
===================================================================
--- text/parco10submission/paper.tex	2011-01-07 16:41:11 UTC (rev 3890)
+++ text/parco10submission/paper.tex	2011-01-07 16:48:49 UTC (rev 3891)
@@ -80,13 +80,20 @@
 
 \begin{abstract}
 
-The work of scientists, engineers and statisticians often requires executing domain-specific application programs a
-massive number of times on large collections of file-based data.  This  process requires complex data management to pass data to, from, and between application invocations. Distributed and
-parallel computing resources can greatly speed up
-such processing, but their use increases the complexity of the programming effort and presents new barriers. The Swift parallel scripting language reduces these complexities with a
-scripting language for composing ordinary application programs into powerful parallel scripts that can efficiently utilize parallel and distributed resources.
-In this paper we present Swift's implicitly parallel and deterministic programming model, which applies external applications to file collections using a functional, ``in-memory'' style of scripting that abstracts and simplifies distributed parallel execution.
+Scientists, engineers and statisticians must often execute domain-specific application programs 
+many times on large collections of file-based data.  This  activity requires complex orchestration and data management 
+as data is passed to, from, and among application invocations. Distributed and
+parallel computing resources can accelerate
+such processing, but their use increases programming complexity yet further. 
+The Swift parallel scripting language reduces these complexities by (a) making file system structures accessible via language constructs,
+and (b)
+allowing
+ordinary application programs to be composed into powerful parallel scripts that can efficiently utilize parallel and distributed resources.
+We present Swift's implicitly parallel and deterministic programming model, 
+which applies external applications to file collections using a functional style of scripting that abstracts and simplifies distributed parallel execution.
 
+%IAN: Re above--it seems important to me to make point (a).
+
 \end{abstract}
 
 \begin{keyword}
@@ -107,8 +114,8 @@
 % mw: not sure why idempotency matters.  This gets into issues of single-assignment; restartability; and whether or not we treat application invocations as both idempotent and/or referentially transparent.  Since we treat execution of apps as "isolated", and "side-effect-free", neither parallel interleavings nor re-runs should have much effect on them.
 
 Swift is a scripting language designed for composing
-application programs into distributed,
-parallelized applications for execution on clusters, grids, clouds, and supercomputers
+application programs into parallel
+applications that can be executed on multicore processors, clusters, grids, clouds, and supercomputers
 with tens to hundreds of thousands of processors.
 %It is intended to serve as a higher level framework for composing the interaction of
 %concurrently executing programs (even parallel ones) and scripts
@@ -128,14 +135,19 @@
 %inherent complexity of programming on these systems, necessitates a
 %new approach.
 
-While many application needs involve the execution of a single large
-message-passing parallel program, many others require the coupling or
+Many parallel applications involve a single
+message-passing parallel program: a model supported well by the Message Passing Interface (MPI). 
+However, many others require the coupling or
 orchestration of large numbers of application invocations: either many
 invocations of the same program, or many invocations of sequences and
-patterns of several programs. In this model, existing applications are similar to
-functions in programming, and users typically need to execute many of
-them. Scaling up requires the distribution of such workloads among
-many computers or clusters and hence a ``grid'' approach. Even if
+patterns of several programs. The execution of these 
+%In this model, existing applications are similar to
+%functions in programming, and users typically need to execute many of
+%them. 
+Scaling up requires the distribution of such workloads among
+many computers or clusters.
+%and hence a ``grid'' approach.
+Even if
 a single large parallel cluster suffices, users will not always have
 access to the same system (i.e., big machines may be congested, or temporarily unavailable to a user due to maintenance or allocation depletion). This leads to the need to be able to utilize
 whatever resource happens to be available or economical at the moment




More information about the Swift-commit mailing list