Mark Crovella, Thomas J. LeBlanc · 1993
Traditional performance debugging and tuning of parallel programs is based on the measure-modify approach, in which detailed measurements of program executions are used to guide incremental changes to the program that result in better performance. Unfortunately, the performance of a parallel algorithm is often related to its implementation, input data, and machine characteristics in surprising ways, and the measure-modify approach is unsuited to exploring these relationships fully: it is too heavily dependent on experimentation and measurement, which is impractical for studying the large number of variables that can affect parallel program performance. In this paper we argue that the problem of selecting the best implementation of a parallel algorithm requires a new approach to parallel program performance evaluation, one with a greater balance between measurement and modeling. We first present examples that demonstrate that different parallelizations of a program may be necessary to achieve the best possible performance as one varies the input data, machine architecture, or number of processors used. We then present an approach to performance evaluation based on lost cycles analysis, which involves measurement and modeling of all sources of overhead in a parallel program. We describe a measurement tool for lost cycles analysis that we have incorporated into the runtime environment for Fortran programs on the Kendall Square KSR1, and use this tool to analyze the performance tradeoffs among implementations of 2D FFT and parallel subgraph isomorphism. Using these examples, we show how lost cycles analysis can be used to solve the problems associated with selecting the best implementation in a variable environment. In addition, we show that this approach can capture large amounts of performance data using only a small number of measurements, and that it is flexible enough to allow conclusions to be drawn from empirical data in some cases, and analytic results in other cases.
Cited by 24
Korochkin Dmitry, S. B. Korochkin · 2002
In this paper, we describe the results of experimental performance analysis of Ada and Java parallel program on SMP systems. Speed up of Ada and Java set programs to solving some linear algebra problems are presented.
Cited by 2
Biegel, Bryan, VanderWijngaart, Rob F., Feng, Huiyu et al. · NASA STI Repository (National Aeronautics and Space Administration)
The contents include: 1) A brief history of NPB; 2) What is (not) being measured by NPB; 3) Irregular dynamic applications (UA Benchmark); and 4) Wide area distributed computing (NAS Grid Benchmarks-NGB). This paper is presented in viewgraph form.
Cited by 0Open access
Shanthi Makka, Bharat Bhushan Sagar · International Journal of Intelligent Systems and Applications · 2017
We have proposed a new approach to identify segments, which can be executed simultaneously, or coextending to achieve high computational speed with optimized utilization of available resources. Our suggested approach is divided into four modules. In first module we have represented a program segment using Abstract Syntax Tree (AST) along with an algorithm for constructing AST and in second module, this AST has been converted into Program Dependence Graph (PDG), the detailed approach has been described in section II, The process of construction of PDG is divided into two steps: First we construct a Control Dependence Graph (CDG, In second step reachability definition algorithm has been used to identify data dependencies between the various modules of a program by constructing Data Dependence Graph (DDG). In third module an algorithm is suggested to identify parallel modules, i.e., the modules that can be executed simultaneously in the section III and in fourth module performance analysis is discussed through our approach along with the computation of time complexity and its comparison with sequential approach is demonstrated in a pictorial form.
Cited by 1Open access
Jeffrey K. Hollingsworth, R. Bruce Irvin, Barton P. Miller · 1991
article The integration of application and system based metrics in a parallel program performance tool Share on Authors: Jeffrey K. Hollingsworth View Profile , R. Bruce Irvin View Profile , Barton P. Miller View Profile Authors Info & Claims ACM SIGPLAN NoticesVolume 26Issue 7July 1991 pp 189–200https://doi.org/10.1145/109626.109645Published:01 April 1991 14citation285DownloadsMetricsTotal Citations14Total Downloads285Last 12 Months1Last 6 weeks1 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access
Cited by 28
Ben van Werkhoven, Jason Maassen, Michael Kliphuis et al. · 2013
Abstract. The Parallel Ocean Program (POP) is used in many strongly eddying ocean circulation simulations. Ideally one would like to do thousand-year long simulations, but the current performance of POP prohibits this type of simulations. In this work, using a new distributed computing approach, two innovations to improve the performance of POP are presented. The first is a new block partitioning scheme for the optimization of the load balancing of POP such that it can be run efficiently in a multi-platform setting. The second is an implementation of part of the POP model code on Graphics Processing Units. We show that the combination of both innovations leads to a substantial performance increase also when running POP simultaneously over multiple computational platforms.
Cited by 3Open access
Jeffrey K. Hollingsworth, R. Bruce Irvin, Barton P. Miller · ACM SIGPLAN Notices · 1991
article Free Access Share on The integration of application and system based metrics in a parallel program performance tool Authors: Jeffrey K. Hollingsworth View Profile , R. Bruce Irvin View Profile , Barton P. Miller View Profile Authors Info & Claims ACM SIGPLAN NoticesVolume 26Issue 7July 1991 pp 189–200https://doi.org/10.1145/109626.109645Online:01 April 1991Publication History 14citation287DownloadsMetricsTotal Citations14Total Downloads287Last 12 Months3Last 6 weeks0 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Cited by 5Open access
T. Nash, H. Areti, R. Atac et al. · University of North Texas Digital Library (University of North Texas) · 1988
Abstract Not Provided
Cited by 3Open access
Ben van Werkhoven, Jason Maassen, Michael Kliphuis et al. · Geoscientific model development · 2014
Abstract. The Parallel Ocean Program (POP) is used in many strongly eddying ocean circulation simulations. Ideally it would be desirable to be able to do thousand-year-long simulations, but the current performance of POP prohibits these types of simulations. In this work, using a new distributed computing approach, two methods to improve the performance of POP are presented. The first is a block-partitioning scheme for the optimization of the load balancing of POP such that it can be run efficiently in a multi-platform setting. The second is the implementation of part of the POP model code on graphics processing units (GPUs). We show that the combination of both innovations also leads to a substantial performance increase when running POP simultaneously over multiple computational platforms.
Cited by 16Open access
Adam K. L. Wong, Andrzej Gościński · The International Journal of High Performance Computing Applications · 2007
Although individual PCs of a cluster are used by their owners to run sequential applications (local jobs), the cluster as a whole or its subset can also be employed to run parallel applications (cluster jobs) even during working hours. This implies that these computers have to be shared by parallel and sequential applications, which could lead to the improvement of the execution performance and resource utilization. However, there is a lack of experimental study showing the behavior and performance of executing parallel and sequential applications concurrently on a non-dedicated cluster. The result of such research would be beneficial for the development of new global scheduling algorithms. We present the result of an experimental study into scheduling of a mixture of parallel and sequential applications on a non-dedicated cluster. The aim of this study is to learn how the concurrent execution of a communication intensive parallel application and sequential applications influences their execution performance and utilization of the cluster.
Cited by 0
Zheng-Qing Fu, John P. Rose, Bi‐Cheng Wang · Acta Crystallographica Section D Biological Crystallography · 2005
SGXPro consists of four components. (i) A parallel workflow engine that was designed to automatically manage communication between the different processes and build systematic searches of algorithm/program/parameter space to generate the best possible result for a given data set. This is performed by offering the user a palette of programs and techniques commonly used in X-ray structure determination in an environment that lets the user choose programs in a mix-and-match manner, without worrying about inter-program communication and file formats, during the structure-determination process. The current SGXPro program palette includes 3DSCALE, SHELXD, ISAS, SOLVE/RESOLVE, DM, SOLOMON, DMMULTI, BLAST, AMoRe, EPMR, XTALVIEW, ARP/wARP and MAID. (ii) A client/server architecture that allows the user to utilize the best computing facility available. (iii) Plug-in-and-play design, which allows easily integration of new programs into the system. (iv) User-friendly interface.
Cited by 24
Nagy, Botond Ágoston, Nagy, Benedek Ágost · 2019
Cited by 0Open access
Noriyuki Kushida, Hiroshi Okuda · Japan Journal of Industrial and Applied Mathematics · 2023
Cited by 0
Bin Cheng, Xingang Wang, Ying Li et al. · 2009
The performance analysis of parallel system is critical for tuning, optimizing and algorithm modifying of parallel program. A formal modeling method based on TCPN is proposed in this paper, which makes it possible to organize a complicated parallel system as a set of hierarchical modules and includes a time concept to represent the time taken to execute events and further analyze the performance of the system. In view of the fact that the performance of parallel systems is not only determined by the performance of the hardware itself, but also by the structure of the parallel program and the assignment of program parts to resources, TCPN describes the parallel program and the resources respectively and brings less effect to modify the program structure because of running environment changes.
Cited by 0
Michel Pahud, Guidec Thierry Cornu · 2010
During the last decade, performance prediction has been repeatedly quoted as a key factor to developing parallel systems [1, 2, 3]. Predicting the performance of a parallel program as a function of the number of processors and of the problem size is crucial for choosing the best hardware configuration and for tuning various parameters. This paper presents a method for achieving performance analysis for parallel irregular applications. The model is closely related to the Bulk Synchronous Programming (BSP) model [4]. It is based on the measurement of basic communication and computation routines. The computational workload of each processor and the load imbalance are modeled analytically. The method is used for predicting the performances of ParFlow++, an irregular, parallel radio-wave propagation algorithm. 2 Wave propagation with ParFlow-t--b The ParFlow simulation method is based on the so-called Lattice Boltzman Model. It describes a physical system in terms of motion of fictitious, microscopic
Cited by 0
Ibrahim Deyab · Assiut Journal of Sport Science and Arts /Assiut Journal of Sport Science and Arts · 2021
The current study aimed to design a specific training program to improve the level of performance of some skills on the parallel device (handstand stability - L-angle foothold - hands-free standing from a V-shaped angle) for juniors under 10 years in gymnastics , The research sample was chosen by the intentional method of The beginners of gymnastics under (10) years, boys from Al-Zuhour Sports Club, who are registered with the Gymnastics Federation, and their strengths reached (12) players. They were divided into two groups, one experimental (6 players) and the other control (6 players). The researcher used the experimental method with an experimental design for two groups, one experimental and the other control. The researcher used the medical scale, the stammer, the stopwatch, and tests to measure the physical and skill level, and the program consisted of (8) weeks three times a week, and the researcher concluded that the qualitative training program led to the development of physical abilities and the improvement of the level of skill performance on the parallel device, and the researcher recommended the application of The training program is under discussion for beginners gymnastics in the Arab Republic of Egypt.
Cited by 0Open access
Jorge Ortega Arjona · 2008
There are many possibilities to design a parallel program in order to obtain the best performance possible. The selection of a program structure, as an organisation of processes, impacts on the performance to be achieved, and depends on the problem to be solved. Now, in order to select a program structure as the best in terms of performance, the software designer requires performance modelling techniques to evaluate different alternatives. If the structure of the parallel program can be modelled as a set of interacting processes, described in terms of UML State Diagrams, this paper presents a performance modelling to estimate the average execution time of a parallel program. Performance modelling is achieved by calculating the average execution time of a parallel program, described as a set of processes which run with deterministically and exponentially distributed execution
Cited by 0
De Programas Paralelos · 2007
There are many possibilities to design a parallel program in order to obtain the best performance possible. The selection of a program structure, as an organisation of processes, impacts on the performance to be achieved, and depends on the problem to be solved. Now, in order to select a program structure as the best in terms of performance, the software designer requires performance modelling techniques to evaluate different alternatives. If the structure of the parallel program can be modelled as a set of interacting processes, described in terms of UML State Diagrams, this paper presents a performance modelling to estimate the average execution time of a parallel program. Performance modelling is achieved by calculating the average execution time of a parallel program, described as a set of processes which run with deterministically and exponentially distributed execution times.
Cited by 0
Zoltan Juhasz, Stephen Turner, et al. · 2008
Developing parallel discrete event simulation programs is a difficult and time consuming process often ending with disappointment as the achieved performance is often lower than expected. Developers need performance prediction tools that are capable of providing information on the future performance of the parallel program prior to implementation. This paper describes a performance analyser tool developed to predict the performance of parallel discrete event simulation programs. Its unique feature is that it does not require the existence of the parallel program; it gathers the necessary program information from a trace file generated by a sequential simulation run. This enables one to determine, using a sequential simulation program, whether or not a parallel implementation is suitable, and if so, which approach is the best for the given simulation problem. The parallel version then only has to be developed if proved to be successful. The paper describes the analyser program, its architecture, functionality and use.
Cited by 0
Adnan Adnan, Intan Sari Areni, Zulkifli Tahir · Jurnal RESTI (Rekayasa Sistem dan Teknologi Informasi) · 2022
This paper presents a simple method to reduce performance loss due to a parallel program's massive critical sections of parallel numerical integration. The method is to transform a fine grain parallel loop into a coarse grain parallel loop which is nesting a sequential loop. The coarse grain parallel loop is by nesting a loop block to make task granularities coarser than that naive one. In addition to the overhead reduction, the method makes the parallel work fraction significantly larger than the serial fraction. As a result, nesting a serial loop within a parallel loop improves the parallel program’s performance. Compared to the naïve method, which does not scale performance of parallel program of numerical integration, the nesting serial loop method scales a parallel program up to 3.26 times fold relative to its sequential program on quad-core processor. This result shows that the proposed method makes parallel program much faster compared to the naïve method.
Cited by 1Open access