Logo

Publikacije (30)

Nazad
Merima Delić, Edina Omerovic, Azemina Sokolovic, N. Nosovic

This paper presents parallel matrix multiplication in C#. Threaded computation was distributed to all available cores in the shared memory system. Number of threads created to parallelize for-loops is equal to the number of cores in the system. The main aim of this work was to accomplish parallelization similar to what Microsoft .NET V4.o provided in their parallel extensions library and make it easy to use.

A. Ceco, N. Nosovic, Kenan Bradic

Modern data networks are faced with a congestion problem, which causes delays and data packet losses. To overcome this problem, among other congestion avoidance mechanisms, the algorithms for active queue management at the routers in the network have been proposed and implemented. In this paper, several of these algorithms are discussed. Their performances are compared on the basis of ns-2 simulations.

Vedran Ljubovic, N. Nosovic

Software Engineering is an important part of modern Computer Engineering education. A comprehensive course in Software Engineering should include a topic on software metrics. Also, a number of courses practice handing team projects to students. In this paper a number of software metrics are applied to projects developed by students with the purpose of estimating overall team effort. In this way, conclusions are formed about usefulness of these metrics in the context of teaching software engineering.

Adnan Hidic, Damir Zubanovic, Adnan Hajdarevic, Alvin Huseinović, N. Nosovic

Graphics processing units (GPU) are considered to have superior performance over the central processing units (CPU) in performing common scientific computations. Number of factors that can seriously change this conception are usually overlooked. In this paper, some of these factors are taken into account and their impact is measured, analysed and discussed. Matrix multiplication and Shell sorting examples are used to show that GPU superiority is not always clear.

Vedran Ljubovic, N. Nosovic

Software Engineering is an important part of modern Communications Engineering education. In this paper a number of open-source tools for analysis of Subversion source code repositories are evaluated for purpose of determining individual developer contribution to a project. These tools are compared in the context of university bachelor level course in Software Engineering. Finally, they are used to measure actual projects developed by students during the length of course and compare their results with student self-reported time spent working on the project.

This paper presents results of research in development of parallel implementations of genetic algorithms with focus on Map-Reduce programming paradigm. It tries to classify and fit this particular implementation in special model of algorithm having in mind all specific features of programming paradigm used. Besides that, we analyze details of existing proposals for implementation and scaling GA with MapReduce, and show the results of different approach which turned out to be anti-pattern for most general cases.

Aleksa Ćorović, Lejla Kadric, Nermin Lipa, Selma Opanovic, N. Nosovic

A wireless sensor network (WSN) consists of spatially distributed autonomous sensors to monitor physical or environmental conditions, such as temperature, sound, vibration, pressure, motion or pollutants and to cooperatively pass their data through the network to a main location. The more modern WSNs are bi-directional, also enabling control of sensor activity. The development of WSNs was motivated by military applications such as battlefield surveillance; today such networks are used in many industrial and consumer applications, such as industrial process monitoring and control, machine health monitoring, and so on. The possibilities for WSNs have excited scientists and researchers, the business community, military and government officials, and consumers alike for many years. The potential applications for WSNs and transducers (sensors combined with actuator mechanisms) are limited only by the imagination. Sensing alone is not enough for many applications-the ability to act on the sensory data is also required. A small, battery-powered platform capable of actuation is needed. This paper discusses the experiences with the implementation of WSN in bringing new content to museum visitors, making the visit more interesting and thus, attracting more visitors. Visit to a museum will become a much more interesting and fun. On the other hand, exhibits in the museum would be under better control and a lot safer. Every smallest change in temperature and light in the exhibit's surroundings or movement of exhibit piece would be automatically detected.

E. Bajrami, M. Asic, Emir Cogo, Dino Trnka, N. Nosovic

This paper presents results of performance comparison of simulated annealing algorithm execution on central processing unit (CPU) and Graphics Processing Unit (GPU) that uses Compute Unified Device Architecture (CUDA). Algorithm used for measurement is a meta-heuristic embarrassingly parallel algorithm based on idea of material crystallization process when temperature is being increased to melting point and then decreased to minimum pre-defined value. Algorithm was implemented for quad-core CPU using C and on CUDA enabled GPU using C for CUDA. Execution time was used as criteria for performance comparison and was measured in two scenarios: fixed number of points with number of threads as a parameter and vice versa. Results of measurements were analyzed and presented.

Ersin Kurtanovic, Emir Meholjic, N. Hadžić, Borko Davidović, Enes Ljevakovic, N. Nosovic

This paper describes the procedure and the results of measuring the speed of processing arrays on 1, 2, or 3 hosts, connected in LAN. The measurement scenario was based on having the fixed processing time for each array member in all cases. Also, processing each array member is individual from processing others. For gaining control data, the array was processed on only one host. Afterwards, the array was split in two and three equal pieces for processing on two and three hosts, respectively. The communication between the hosts was established by using socket programming techniques in .NET. The results were impressive because the speed-up in some cases was almost linear.

Nadira Jasika, Naida Alispahic, Arslanagic Elma, Kurtovic Ilvana, Lagumdzija Elma, N. Nosovic

This article introduces the problem of parallelization of Dijkstra's algorithm, a well known algorithm for computing single-source shortest path in a graph. Dijkstra's algorithm can be applied to graphs with a various number of vertices and edges. Dijkstra's shortest path algorithm is implemented and presented, and the performances of its parallel and serial execution are compared. The algorithm implementation was parallelized using OpenMP (Open Multi-Processing) and OpenCL (Open Computing Language) standards. Its performances were measured on 4 different configurations, based on dual core and i5 processors. The experimental results prove that the parallel execution of the algorithm has good performances in terms of speed-up ratio, when compared to its serial execution. Finally, the results show that, because of Dijkstra's algorithm in itself is sequential, and difficult to parallelize, average speed-up ratio achieved by parallelization is only 10%. This proves to be a huge disadvantage of this algorithm, because its use is widespread, and enhancing its performance would have great effects in its many uses.

E. Dedovic, Jasmina Balagija, Nina Cavrk, N. Nosovic

Building scalable applications or improving scalability of existing ones is important and not an easy task to perform. Although every application is unique, they can be categorized in several classes. Similar solutions may be applied when scaling applications which belong to the same class. This paper covers five different techniques for scaling read-heavy web services delivering small amount of data for each request. The techniques analyzed include database scaling, horizontal and vertical architectural scaling, as well as two caching techniques [2]. The service is Ruby on Rails [6] based, but similar approaches may be applied when using other technologies. Advantages and disadvantages of each method are presented, as well as several suggestions related to further research on this topic.

Ensar Ajkunic, Hana Fatkic, Emina Omerovic, Kristina Talic, N. Nosovic

Multi-core processors offer a growing potential of parallelism but pose a challenge of program development for achieving high performance in applications. This pape r presents a comparison of the five parallel programming models for implementing parallel programs in C++ on multi -core computer systems. The models under consideration are Intel®'s Thread Building Blocks (TBB), OpenMPI, Intel®'s Cilk™ Plus, OpenMP and Pthreads. For demonstration purposes multiple parallel implementations of an algorithm for matrix multiplication suitable for parallelization were created. The main goal of this paper is a comprehensive comparison of chosen models with respect to the following criteria: performance and coding effort required.

Adis Hamzić, Alvin Huseinović, N. Nosovic

The Simplex algorithm is commonly used for solving Linear Optimization problems. Linear Optimization methods are used to solve problems in areas such as Economics, Business, Planning and Engineering. Developments of hardware platforms have allowed the use of Linear Optimization methods on problems that presented serious computational challenges in the past. However, solving large optimization problems can be time consuming, which has to be taken into consideration for time-critical applications. With the invention of the GPU assisted computing the situation in this field has progressed. In this paper, implementation and performance analysis of the Simplex algorithm adapted to take the advantage of modern graphics processors versus traditional CPU adapted implementation is presented.

Davor Zlotrg, N. Nosovic, Alvin Huseinović

Graphic card processors have a vital role in that they bring parallelism to a whole new level. Applications need to do a large amount of calculations in parallel. In this paper numeric calculation performance comparison between executing numerical calculations in traditional processor and the graphics processor using CUDA architecture is presented.

TCP protocol is responsible for reliable transport and regulation of data flow from source to destination, through the Internet network. This paper presents the results of comparing performance of different versions of the TCP protocol, designed for the networks with high speeds and over long distances, which are obtained by simulations on NS-2 simulator. The paper demonstrates how the significant performance improvements in high-speed networks can be achieved, using some recent versions of the TCP protocol.

Nema pronađenih rezultata, molimo da izmjenite uslove pretrage i pokušate ponovo!

Pretplatite se na novosti o BH Akademskom Imeniku

Ova stranica koristi kolačiće da bi vam pružila najbolje iskustvo

Saznaj više