6 resultados para Dones directives
em Greenwich Academic Literature Archive - UK
Resumo:
This paper briefly describes an interactive parallelisation toolkit that can be used to generate parallel code suitable for either a distributed memory system (using message passing) or a shared memory system (using OpenMP). This study focuses on how the toolkit is used to parallelise a complex heterogeneous ocean modelling code within a few hours for use on a shared memory parallel system. The generated parallel code is essentially the serial code with OpenMP directives added to express the parallelism. The results show that substantial gains in performance can be achieved over the single thread version with very little effort.
Resumo:
This paper describes an interactive parallelisation toolkit that can be used to generate parallel code suitable for either a distributed memory system (using message passing) or a shared memory system (using OpenMP). This study focuses on how the toolkit is used to parallelise a complex heterogeneous ocean modelling code within a few hours for use on a shared memory parallel system. The generated parallel code is essentially the serial code with OpenMP directives added to express the parallelism. The results show that substantial gains in performance can be achieved over the single thread version with very little effort.
Resumo:
The shared-memory programming model can be an effective way to achieve parallelism on shared memory parallel computers. Historically however, the lack of a programming standard using directives and the limited scalability have affected its take-up. Recent advances in hardware and software technologies have resulted in improvements to both the performance of parallel programs with compiler directives and the issue of portability with the introduction of OpenMP. In this study, the Computer Aided Parallelisation Toolkit has been extended to automatically generate OpenMP-based parallel programs with nominal user assistance. We categorize the different loop types and show how efficient directives can be placed using the toolkit's in-depth interprocedural analysis. Examples are taken from the NAS parallel benchmarks and a number of real-world application codes. This demonstrates the great potential of using the toolkit to quickly parallelise serial programs as well as the good performance achievable on up to 300 processors for hybrid message passing-directive parallelisations.
Resumo:
In this work we show how automatic relative debugging can be used to find differences in computation between a correct serial program and an OpenMP parallel version of that program that does not yield correct results. Backtracking and re-execution are used to determine the first OpenMP parallel region that produces a difference in computation that may lead to an incorrect value the user has indicated. Our approach also lends itself to finding differences between parallel computations, where executing with M threads produces expected results but an N thread execution does not (M, N > 1, M ≠ N). OpenMP programs created using a parallelization tool are addressed by utilizing static analysis and directive information from the tool. Hand-parallelized programs, where OpenMP directives are inserted by the user, are addressed by performing data dependence and directive analysis.
Resumo:
This chapter discusses the code parallelization environment, where a number of tools that address the main tasks, such as code parallelization, debugging, and optimization are available. The parallelization tools include ParaWise and CAPO, which enable the near automatic parallelization of real world scientific application codes for shared and distributed memory-based parallel systems. The chapter discusses the use of ParaWise and CAPO to transform the original serial code into an equivalent parallel code that contains appropriate OpenMP directives. Additionally, as user involvement can introduce errors, a relative debugging tool (P2d2) is also available and can be used to perform near automatic relative debugging of an OpenMP program that has been parallelized either using the tools or manually. In order for these tools to be effective in parallelizing a range of applications, a high quality fully inter-procedural dependence analysis, as well as user interaction is vital to the generation of efficient parallel code and in the optimization of the backtracking and speculation process used in relative debugging. Results of parallelized NASA codes are discussed and show the benefits of using the environment.
Resumo:
In the past 15 years in the UK, the state has acquired powers, which mark a qualitative shift in its relationship to higher education. Since the introduction and implementation of the Further and Higher Education Act 1992, the Teaching and Higher Education Act 1998 and the Higher Education Act 2004, a whole raft of changes have occurred which include the following: Widening participation; the development of interdisciplinary, experiential and workplace-based learning focused on a theory-practice dialogue; quality assurance; and new funding models which encompass public and private partnerships. The transformation of higher education can be placed in the context of New Labour’s overall strategies for overarching reform of public services, as set out in the Prime Minister’s Strategy Unit’s discussion paper The UK Government’s Approach to Public Service Reform (2006). An optimistic view of changes to higher education is that they simultaneously obey democratic and economic imperatives. There is an avowed commitment through the widening participation agenda to social inclusion and citizenship, and to providing the changing skills base necessary for the global economy. A more cynical view is that, when put under critical scrutiny, as well as being emancipatory, in some senses these changes can be seen to mobilise regulatory and disciplinary practices. This paper reflects on what kinds of teaching and learning are promoted by the new relationship between the state and the university. It argues that, whilst governmental directives for innovations and transformations in teaching and learning allegedly empower students and put their interests at the centre, reforms can also be seen to consist of supervisory and controlling mechanisms with regard both to our own practices as teachers and the knowledge/ learning we provide for the students.