sequential programming
Recently Published Documents


TOTAL DOCUMENTS

43
(FIVE YEARS 7)

H-INDEX

9
(FIVE YEARS 0)

2021 ◽  
Author(s):  
Alexssandro Ferreira Cordeiro ◽  
Pedro Luiz de Paula Filho ◽  
Hamilton Pereira Silva ◽  
Arnaldo Candido Junior ◽  
Edresson Casanova ◽  
...  

Abstract Purpose: analysis of processing time and similarity of images generated between CPU and GPU architectures and sequential and parallel programming methodologies. Material and methods: for image processing a computer with AMD FX-8350 processor and an Nvidia GTX 960 Maxwell GPU was used, along with the CUDAFY library and the programming language C# with the IDE Visual studio. Results: the results of the comparisons indicate that the form of sequential programming in a CPU generates reliable images at a high custom of time when compared to the forms of parallel programming in CPU and GPU. While parallel programming generates faster results, but with increased noise in the reconstructed image. For data types float a GPU obtained best result with average time equivalent to 1/3 of the processor, however the data is of type double the parallel CPU approach obtained the best performance. Conclusion: for the float data type, the GPU had the best average time performance, while for the double data type the best average time performance was for the parallel approach CPU. Regarding image quality, the sequential approach obtained similar outputs, while theparallel approaches generated noise in their outputs.


Author(s):  
Christian Lidström ◽  
Dilian Gurov

AbstractWhen developing complex software and systems, contracts provide a means for controlling the complexity by dividing the responsibilities among the components of the system in a hierarchical fashion. In specific application areas, dedicated contract theories formalise the notion of contract and the operations on contracts in a manner that supports best the development of systems in that area. At the other end, contract meta-theories attempt to provide a systematic view on the various contract theories by axiomatising their desired properties. However, there exists a noticeable gap between the most well-known contract meta-theory of Benveniste et al. [5], which focuses on the design of embedded and cyber-physical systems, and the established way of using contracts when developing general software, following Meyer’s design-by-contract methodology [18]. At the core of this gap appears to be the notion of procedure: while it is a central unit of composition in software development, the meta-theory does not suggest an obvious way of treating procedures as components.In this paper, we provide a first step towards a contract theory that takes procedures as the basic building block, and is at the same time an instantiation of the meta-theory. To this end, we propose an abstract contract theory for sequential programming languages with procedures, based on denotational semantics. We show that, on the one hand, the specification of contracts of procedures in Hoare logic, and their procedure-modular verification, can be cast naturally in the framework of our abstract contract theory. On the other hand, we also show our contract theory to fulfil the axioms of the meta-theory. In this way, we give further evidence for the utility of the meta-theory, and prepare the ground for combining our instantiation with other, already existing instantiations.


Author(s):  
Toheed Ghandriz ◽  
Bengt Jacobson ◽  
Nikolce Murgovski ◽  
Peter Nilsson ◽  
Leo Laine

Author(s):  
Cristian Ramon-Cortes ◽  
Ramon Amela ◽  
Jorge Ejarque ◽  
Philippe Clauss ◽  
Rosa M. Badia

The last improvements in programming languages and models have focused on simplicity and abstraction; leading Python to the top of the list of the programming languages. However, there is still room for improvement when preventing users from dealing directly with distributed and parallel computing issues. This paper proposes and evaluates AutoParallel, a Python module to automatically find an appropriate task-based parallelisation of affine loop nests and execute them in parallel in a distributed computing infrastructure. It is based on sequential programming and contains one single annotation (in the form of a Python decorator) so that anyone with intermediate-level programming skills can scale up an application to hundreds of cores. The evaluation demonstrates that AutoParallel goes one step further in easing the development of distributed applications. On the one hand, the programmability evaluation highlights the benefits of using a single Python decorator instead of manually annotating each task and its parameters or, even worse, having to develop the parallel code explicitly (e.g., using OpenMP, MPI). On the other hand, the performance evaluation demonstrates that AutoParallel is capable of automatically generating task-based workflows from sequential Python code while achieving the same performances than manually taskified versions of established state-of-the-art algorithms (i.e., Cholesky, LU, and QR decompositions). Finally, AutoParallel is also capable of automatically building data blocks to increase the tasks’ granularity; freeing the user from creating the data chunks, and re-designing the algorithm. For advanced users, we believe that this feature can be useful as a baseline to design blocked algorithms.


2019 ◽  
Vol 3 (ICFP) ◽  
pp. 1-28
Author(s):  
Nicholas V. Lewchenko ◽  
Arjun Radhakrishna ◽  
Akash Gaonkar ◽  
Pavol Černý

Author(s):  
Federico Botella ◽  
Antonio Peñalver ◽  
Manuel Quesada-Martínez ◽  
Fulgencio Bermejo ◽  
Fernando Borrás

Author(s):  
Yun-xiang Han ◽  
Xiao-qiong Huang ◽  
Xin-min Tang

In this paper, the problem of finding the optimal trajectory of an aircraft through a specified airspace for a given start and goal position is put forward. The application of sequential programming to optimal trajectory generation is reported with the selection of the grid size and the space boundaries. A totally discrete approach is adopted in contrast to the other models, which use continuous time but resort to diseretization in the computation. The component of the mathematical formulation of the optimization criteria is considered and the procedures used within the control algorithm on the solution are also proposed. Realistic constraints such as turning rate and spatial layout are incorporated into the system model building before applying the sequential programming technique to be used in solving the problem. Simulation examples for multiple aircrafts are presented to demonstrate the use of the proposed trajectory planner and certain optimal control inputs have been acquired.


Author(s):  
David del Rio Astorga ◽  
Manuel F Dolz ◽  
Luis Miguel Sánchez ◽  
J Daniel García ◽  
Marco Danelutto ◽  
...  

Since the ‘free lunch’ of processor performance is over, parallelism has become the new trend in hardware and architecture design. However, parallel resources deployed in data centers are underused in many cases, given that sequential programming is still deeply rooted in current software development. To address this problem, new methodologies and techniques for parallel programming have been progressively developed. For instance, parallel frameworks, offering programming patterns, allow expressing concurrency in applications to better exploit parallel hardware. Nevertheless, a large portion of production software, from a broad range of scientific and industrial areas, is still developed sequentially. Considering that these software modules contain thousands, or even millions, of lines of code, an extremely large amount of effort is needed to identify parallel regions. To pave the way in this area, this paper presents Parallel Pattern Analyzer Tool, a software component that aids the discovery and annotation of parallel patterns in source codes. This tool simplifies the transformation of sequential source code to parallel. Specifically, we provide support for identifying Map, Farm, and Pipeline parallel patterns and evaluate the quality of the detection for a set of different C++ applications.


Sign in / Sign up

Export Citation Format

Share Document