scripting accelerates and simplifies the composition of existing codes to form more powerful applications. parallel scripting extends this technique to allow for the rapid development of highly parallel applications t...
详细信息
scripting accelerates and simplifies the composition of existing codes to form more powerful applications. parallel scripting extends this technique to allow for the rapid development of highly parallel applications that can run efficiently on platforms rang-ring from multicore workstations to petascale supercomputers.
Applications used to evaluate next-generation electrical power grids ("smart grids") are anticipated to be compute and data-intensive. In this work, we parallelize and improve performance of one such applica...
详细信息
ISBN:
(纸本)9780769549965;9781467364652
Applications used to evaluate next-generation electrical power grids ("smart grids") are anticipated to be compute and data-intensive. In this work, we parallelize and improve performance of one such application which was run sequentially prior to the use of our cloud-based configuration. We examine multiple cloud computing offerings, both commercial and academic, to evaluate their potential for improving the turnaround time for application results. Since the target application does not fit well into existing computational paradigms for the cloud, we employ parallel scripting tool, as a first step toward a broader program of adapting portable, scalable computational tools for use as enablers of the future smart grids. We use multiple clouds as a way to reassure potential users that the risk of cloud-vendor lock-in can be managed. This paper discusses our methods and results. Our experience sheds light on some of the issues facing computational scientists and engineers tasked with adapting new paradigms and infrastructures for existing engineering design problems.
scripting is often used in science to create applications via the composition of existing programs. parallel scripting systems allow the creation of such applications, but each system introduces the need to adopt a so...
详细信息
ISBN:
(纸本)9781450323789
scripting is often used in science to create applications via the composition of existing programs. parallel scripting systems allow the creation of such applications, but each system introduces the need to adopt a somewhat specialized programming model. We present an alternative scripting approach, AMFS Shell, that lets programmers express parallel scripting applications via minor extensions to existing sequential scripting languages, such as Bash, and then execute them in-memory on large-scale computers. We define a small set of commands between the scripts and a parallel scripting runtime system, so that programmers can compose their scripts in a familiar scripting language. The underlying AMFS implements both collective (fast file movement) and functional (transformation based on content) file management. Tasks are handled by AMFS's built-in execution engine. AMFS Shell is expressive enough for a wide range of applications, and the framework can run such applications efficiently on large-scale computers.
Web automation applications are widely used for different purposes such as B2B integration, web mashups, automated testing of web applications, Internet metasearch or technology and business watch. One crucial part in...
详细信息
ISBN:
(纸本)9781467380027
Web automation applications are widely used for different purposes such as B2B integration, web mashups, automated testing of web applications, Internet metasearch or technology and business watch. One crucial part in intensive web automation applications, that require real time responses, is for them to execute the navigation sequences in the shortest possible time. The approach of building the automatic web navigation component by using the APIs of conventional browsers, followed by most of the current systems, is not appropriate in that scenario, because it presents performance problems. Other approach consist in creating custom browsers specially designed for web automation, which can develop some improvements based in the peculiarities of the web automation tasks. In this work, we present a new set of techniques and algorithms that allow the parallel evaluation of the scripting code when a custom browser loads a web page. We also outline the components that should be included in the custom browser architecture to implement these techniques. The tests executed with real web sources, to evaluate the validity of our proposal, show that a custom web browser loads the web pages faster when the scripts are executed in parallel using the designed techniques.
Swift/T is a high-level language for writing concise, deterministic scripts that compose serial or parallel codes implemented in lower-level programming models into large-scale parallel applications. It executes using...
详细信息
ISBN:
(纸本)9781479955008
Swift/T is a high-level language for writing concise, deterministic scripts that compose serial or parallel codes implemented in lower-level programming models into large-scale parallel applications. It executes using a data-driven task parallel execution model that is capable of orchestrating millions of concurrently executing asynchronous tasks on homogeneous or heterogeneous resources. Producing code that executes efficiently at this scale requires sophisticated compiler transformations: poorly optimized code inhibits scaling with excessive synchronization and communication. We present a comprehensive set of compiler techniques for data-driven task parallelism, including novel compiler optimizations and intermediate representations. We report application benchmark studies, including unbalanced tree search and simulated annealing, and demonstrate that our techniques greatly reduce communication overhead and enable extreme scalability, distributing up to 612 million dynamically load balanced tasks per second at scales of up to 262,144 cores without explicit parallelism, synchronization, or load balancing in application code.
Message Passing Interface (MPI) is a standardized library specification designed for message-passing parallel programming on large-scale distributed systems. A number of MPI libraries have been implemented to allow us...
详细信息
ISBN:
(纸本)9780791843277
Message Passing Interface (MPI) is a standardized library specification designed for message-passing parallel programming on large-scale distributed systems. A number of MPI libraries have been implemented to allow users to develop portable programs using the scientific programming languages, Fortran, C and C++. Ch is an embeddable C/C++ interpreter that provides an interpretive environment for C/C++ based scripts and programs. Combining Ch with any MPI C/C++ library provides the functionality for rapid development of MPI C/C++ programs without compilation. In this article, the method of interfacing Ch scripts with MPI C implementations is introduced by using the MPICH2 C library as an example. The MPICH2-based Ch MPI package provides users with the ability to interpretively run MPI C program based on the MPICH2 C library. Running MPI programs through the MPICH2-based Ch MPI package across heterogeneous platforms consisting of Linux and Windows machines is illustrated. Comparisons for the bandwidth, latency, and parallel computation speedup between C MPI, Ch MPI, and MPI for Python in an Ethernet-based environment comprising identical Linux machines are presented. A Web-based example is given to demonstrate the use of Ch and MPICH2 in C based CGI scripting to facilitate the development of Web-based applications for parallel computing.
暂无评论