This paper provides a new way to generate permutations of a given input in lesser time using the concept of parallel programming. More than forty algorithms have been proposed to date for generating permutations of N ...
详细信息
ISBN:
(数字)9781538680759
ISBN:
(纸本)9781538680766
This paper provides a new way to generate permutations of a given input in lesser time using the concept of parallel programming. More than forty algorithms have been proposed to date for generating permutations of N elements. Few of these algorithms have been implemented using C++ language and the time taken for processing the input has been compared for these algorithms. Also, the problems and drawbacks of these algorithms have been explained which are related to the code and execution time. This report is not only a survey of permutation methods but also provides a way to compare different algorithms for a given input using some time-related functions.
This work is devoted to the problem of detecting and processing faults of computing nodes during execution of parallel programs on distributed computing systems. The fault tolerance tools of PBS/TORQUE are considered....
详细信息
ISBN:
(纸本)9781728129877
This work is devoted to the problem of detecting and processing faults of computing nodes during execution of parallel programs on distributed computing systems. The fault tolerance tools of PBS/TORQUE are considered. The functional model for faults handling optimization are proposed.
In case of a forced emergency landing situation it is crucial to identify suitable landing fields rapidly and precisely. To safely land an aircraft, various options are possible. A premium choice would be a published ...
详细信息
ISBN:
(纸本)9781538641125
In case of a forced emergency landing situation it is crucial to identify suitable landing fields rapidly and precisely. To safely land an aircraft, various options are possible. A premium choice would be a published airfield. But there are situations where such a location is unreachable - e.g. in regions with few widely scattered airfields or if the airplane's altitude is too low to reach a nearby airfield. In these cases, other flat terrains may be suitable to safely land the plane. If a satisfactory landing field is known, an Emergency Landing Assistant can be used to calculate an optimized route from the current position [3]. In this paper we present a parallel processing approach based on POSIX threads to identify suitable emergency landing fields. As input of the algorithm elevation data of a surface model is used. The landing fields are charaterized by a set of algorithm parameters which are based on different types of slope among the data points within a certain landing field. The recognized landing fields are scored according to their bumpiness measured by the variance of the altitude values and stored in a geo database for later usage in an emergency case.
In this work we use the GPU porting task for the operative Japanese weather prediction model "ASUCA" as an opportunity to examine productivity issues with OpenACC when applied to structured grid problems. We...
详细信息
ISBN:
(纸本)9783319748962;9783319748955
In this work we use the GPU porting task for the operative Japanese weather prediction model "ASUCA" as an opportunity to examine productivity issues with OpenACC when applied to structured grid problems. We then propose "Hybrid Fortran", an approach that combines the advantages of directive based methods (no rewrite of existing code necessary) with that of stencil DSLs (memory layout is abstracted). This gives the ability to define multiple parallelizations with different granularities in the same code. Without compromising on performance, this approach enables a major reduction in the code changes required to achieve a hybrid GPU/CPU parallelization - as demonstrated with our ASUCA implementation using Hybrid Fortran.
To use modern multiprocessor and distributed computer architectures effectively it is necessary to parallelize the program code in such a way as to achieve a minimum execution time of the program on a given architectu...
详细信息
ISBN:
(纸本)9781538656839
To use modern multiprocessor and distributed computer architectures effectively it is necessary to parallelize the program code in such a way as to achieve a minimum execution time of the program on a given architecture. In this case if the executing devices have different performance characteristics in a distributed system, during parallelization it should be taken into account this difference and the optimization of the execution time of the entire algorithm should be carried out. The method for solving such an optimization problem is proposed in the article.
The importance of concurrent and distributed programming is increasing on Computer Science curricula. This exploratory research identifies additional notions required by the official topics of "parallel and Concu...
详细信息
ISBN:
(数字)9781728147871
ISBN:
(纸本)9781728147888
The importance of concurrent and distributed programming is increasing on Computer Science curricula. This exploratory research identifies additional notions required by the official topics of "parallel and Concurrent programming" course, taught at the University of Costa Rica. This paper characterizes previous knowledge that students had about these notions and the extracurricular effort that they made to overcome the lack of notions. Findings show that students were able to overcome the lack of notions at expense of more extracurricular effort. Exploratory evidence indicates that students' election of professors in previous courses influenced their performance and extracurricular effort in the parallel programming course.
In recent years, open-source applications have replaced proprietary software in many fields. Especially open-source software tools based on Linux operating system have wide range of utilization. In terms of CNC soluti...
详细信息
ISBN:
(纸本)9788001064740
In recent years, open-source applications have replaced proprietary software in many fields. Especially open-source software tools based on Linux operating system have wide range of utilization. In terms of CNC solutions, an open-source system LinuxCNC can be used. However, the LinuxCNC control software and the graphical user interface (GUI) could be developed only on top of Hardware Abstraction Layer. Nevertheless, the LinuxCNC community provided Python Interface, which allows for controlling CNC machine using Python programming language, therefore whole control software can be developed in Python. The paper focuses on a development of a multi-process control software mainly for in-house developed loading devices operated at our institute. The software tool is based on the LinuxCNC Python Interface and Qt framework, which gives the software an ability to be modular and effectively adapted for various devices.
Volcanoes are very complex geophysical systems where fluids of different nature interact with porous rock at different physical conditions and within a complex matrix of conduits. Two types of seismicity are generated...
详细信息
ISBN:
(纸本)9781538661222
Volcanoes are very complex geophysical systems where fluids of different nature interact with porous rock at different physical conditions and within a complex matrix of conduits. Two types of seismicity are generated by this complex interactions. The first type is characterized by fracture of the elastic media, in which we have the volcano-tectonic events (VT) that produce two distinctive phases: a compressional phase (P wave) and a shear wave (S wave) that travels with different velocities within solid media. The second type is characterized by low frequencies, in which we have a wide variety of long period events (LP) and volcanic tremors. These signals are produced by fluid motion within restricted paths and have normally emergent onsets and no distinctive P or S wave phases. Classical earthquake source location procedures take advantage of the distinctive phases and their different propagation velocity. However, for LP events and tremors, those procedures can not be used. Therefore, complex algorithms have to be applied, demanding much more computer resources and time than the classical location methods. In this work, we present the analysis and design of a LP and tremor location application based on amplitude decay. We demonstrate that the algorithm is highly parallelizable allowing to develop a parallel implementation using the Python programming language and the de-facto standard for parallel computing, the MPI standard. We show experimentally that it exhibits almost linear scalability with respect to the number of events and the number of cores.
Recently Smart Mobile Access Point (SMAP) based architectures have emerged as a promising solution for creating smart solutions supporting monitoring of special phenomena. SMAP allow us to predict communication activi...
详细信息
ISBN:
(纸本)9781538693803
Recently Smart Mobile Access Point (SMAP) based architectures have emerged as a promising solution for creating smart solutions supporting monitoring of special phenomena. SMAP allow us to predict communication activities in a system using the information collected from the network, and select the best approach to support the network at any given time. To improve the network performance, SMAPs can autonomously change their positions. They communicate with each other and carry out distributed computing tasks, constituting a mobile fog-computing platform. However, the communication cost becomes a critical factor. In this paper, we propose a compound method to select the best near-optimal placement of SMAPs with the goal to maximize the monitoring coverage and to minimize the communication cost. Our approach combines a parallel implementation of the Imperialist Competitive Algorithm (ICA) with Kruskal's Algorithm.
We advocate the use of formal patterns and transformations for programming modern many-core processors like Graphics Processing Units (GPU), as an alternative to the currently used low-level, ad hoc programming approa...
详细信息
ISBN:
(数字)9783319743134
ISBN:
(纸本)9783319743134;9783319743127
We advocate the use of formal patterns and transformations for programming modern many-core processors like Graphics Processing Units (GPU), as an alternative to the currently used low-level, ad hoc programming approaches like CUDA or OpenCL. Our new contribution is introducing an intermediate level of low-level patterns in order to bridge the abstraction gap between popular high-level patterns (map, fold/reduce, zip, etc.) and imperative, executable code for many-cores. We define our low-level patterns based on the OpenCL programming model which is portable across parallel architectures of different vendors, and we introduce semantics-preserving rewrite rules that transform programs with high-level patterns into programs with low-level patterns, from which executable OpenCL programs are automatically generated. We show that program design decisions and optimizations, which are usually applied ad-hoc by experts, are systematically expressed in our approach as provably-correct transformations for high-and low-level patterns. We evaluate our approach by systematically deriving several differently optimized OpenCL implementations of parallel reduction that achieve performance competitive with OpenCL programs which are manually written and highly tuned by performance experts.
暂无评论