Sasa Stojanovic
University of Belgrade
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Sasa Stojanovic.
Advances in Computers | 2017
V. Blagojević; Dragan Bojic; Miroslav Bojovic; Milos Cvetanovic; J. Đorđević; Đ. Đurđević; B. Furlan; S. Gajin; Z. Jovanović; D. Milićev; Veljko Milutinovic; B. Nikolić; J. Protić; M. Punt; Z. Radivojević; Ž. Stanisavljević; Sasa Stojanovic; I. Tartalja; Milo Tomasevic; P. Vuletić
Abstract This article represents an effort to help PhD students in computer science and engineering to generate good original ideas for their PhD research. Our effort is motivated by the fact that most PhD programs nowadays include several courses, as well as the research component, that should result in journal publications and the PhD thesis, all in a timeframe of 3–6 years. In order to help PhD students in computing disciplines to get focused on generating ideas and finding appropriate subject for their PhD research, we have analyzed some state-of-the-art inventions in the area of computing, as well as the PhD thesis research of faculty members of our department, and came up with a proposal of 10 methods that could be implemented to derive new ideas, based on the existing body of knowledge in the research field. This systematic approach provides guidance for PhD students, in order to improve their efficiency and reduce the dropout rate, especially in the area of computing.
Information & Software Technology | 2015
Sasa Stojanovic; Zaharije Radivojevic; Milos Cvetanovic
Abstract Context Detection of an unauthorized use of a software library is a clone detection problem that in case of commercial products has additional complexity due to the fact that only binary code is available. Objective The goal of this paper is to propose an approach for estimating the level of similarity between the procedures originating from different binary codes. The assumption is that the clones in the binary codes come from the use of a common software library that may be compiled with different toolsets. Method The approach uses a set of software metrics adapted from the high level languages and it also extends the set with new metrics that take into account syntactical changes that are introduced by the usage of different toolsets and optimizations. Moreover, the approach compares metric values and introduces transformers and formulas that can use training data for production of measure of similarities between the two procedures in binary codes. The approach has been evaluated on programs from STAMP benchmark and BusyBox tool, compiled with different toolsets in different modes. Results The experiments with programs from STAMP benchmark show that detecting the same procedures recall can be up to 1.44 times higher using new metrics. Knowledge about the used compiling toolset can bring up to 2.28 times improvement in recall. The experiment with BusyBox tool shows 43% recall for 43% precision. Conclusion The most useful newly proposed metrics are those that consider the frequency of arithmetic instructions, the number and frequency of occurrences for instructions, and the number of occurrences for target addresses in calls. The best way to combine the results of comparing metrics is to use a geometric mean or when previous knowledge is available, to use an arithmetic mean with appropriate transformer.
Advances in Computers | 2015
Sasa Stojanovic; Dragan Bojic; Miroslav Bojovic
Abstract Node level heterogeneous architectures are gaining popularity because of their excellent performance exhibited in real world applications from various domains. The main advantages of these architectures are better price-performance and power–performance ratios compared to traditional symmetric CPU architectures. This article presents an overview of most interesting node level heterogeneous architectures, focusing on some common architectures, such as the NVIDIA and the ATI graphics processing units, the Cell Broadband Engine Architecture, the ClearSpeed processor, the field programmable gate array accelerator solutions from Maxeler MaxNodes, the SGI systems (RASC), and the Convey Hybrid-Core Computer. The presentation encompasses hardware resources and available software development tools for each of the mentioned architectures with both qualitative and quantitative comparisons. Toward the conclusion, the authors express their viewpoint on the future of heterogeneous computing.
international conference on industrial technology | 2012
Sasa Stojanovic; Dragan Bojic; Miroslav Bojovic; Mateo Valero; Veljko Milutinovic
Node level heterogeneous architectures have become attractive during the last decade for several reasons: Compared to traditional symmetric CPUs, they offer high real-application performance and can be energy and/or cost efficient. In this paper, we give an overview of the state-of-the-art in heterogeneous computing, focusing on commonly found architectures: The Cell Broadband Engine Architecture (CBEA), NVidia graphics processing units (GPUs), and field programmable gate arrays (FPGAs) accelerators solutions from Maxeler MaxNodes (MAX) and SGI systems (RASC). We present a review of hardware, available software tools for each solution, a quantitative and a qualitative comparison of the architectures, and give our view on the future of heterogeneous computing.
symposium on computer architecture and high performance computing | 2014
Vladimir Gajinov; Igor Erić; Sasa Stojanovic; Veljko Milutinovic; Osman S. Unsal; Eduard Ayguadé; Adrian Cristal
Recently proposed hybrid dataflow and shared memory programming models combine these two underlying models in order to support a wider range of problems naturally. The effectiveness of such hybrid models for parallel implementations of dense and sparse algebra problems is well known. In this paper, we show another real world example for which hybrid dataflow models provide better support than traditional shared memory models. Specifically, we compare these models using the game engine parallelization as a case study. We show that hybrid dataflow models decrease the complexity of the parallel game engine implementation by eliminating or restructuring the explicit synchronization that is necessary in shared memory implementations. The corresponding implementations also exhibit good scala-bility and better speedup than the shared memory parallel implementations, especially in the case of a highly congested game world that contains a large number of game objects. Ultimately, on an eight core machine we were able to obtain 4.72x speedup compared to the sequential baseline, and to improve 49% over the lock-based parallel implementation based on work-sharing.
international conference on industrial technology | 2012
Zivojin Sustran; Sasa Stojanovic; Goran Rakocevic; Veljko Milutinovic; Mateo Valero
Dual data cache (DDC) systems have attracted considerable research effort in the past decade or so, with their Divide et Impera tactic. DDC systems divide data according to their access patterns and use different caching strategies on them. In the first part of this paper, one possible classification taxonomy, is proposed and described. The second part of this paper represents a survey of the existing solutions classified according to proposed criteria, presenting their organization, benefits, shortcomings, and intended use.
The Computer Journal | 2015
Zaharije Radivojevic; Milos Cvetanovic; Sasa Stojanovic
License violation analysis may require digital forensics in the performance of a time-consuming search in order to find out whether a binary code of a product contains a procedure that originates from a source code for which a license is required. The conducted experiment shows that the production of a binary code using an arbitrary compiler decreases results of the evaluated solutions up to 10 times. The best performing solution, among those evaluated, uses software metrics for assessing similarities between procedures and ranks procedures from the binary code according to their similarities with the target forensics procedure. This paper tries to improve the ranking by proposing five techniques for making similarities assessment more robust against compiler transformations. The proposed techniques filter stack instructions and transfer instructions, retain partial information about the instruction order, simulate inlining, and eliminate procedures that significantly differ from the searched procedure. The techniques are evaluated using a dataset based on the STAMP benchmark and re-evaluated using a dataset based on the BusyBox toolset. The evaluation shows that the use of the proposed techniques increases recall by 47 and 42% for the first and second datasets, respectively.
telecommunications forum | 2014
Bojan Stankic; Darko Kojic; Milos Cvetanovic; Milos Dukic; Sasa Stojanovic; Zaharije Radivojevic
File format used for images in embedded devices is mostly determined by limited available resources and performances. This paper proposes a new file format named ERLE which is adapted for usage in embedded devices. The format is presented by explaining the benefits of using this file format on embedded devices and drawbacks of using the standard image formats for image processing on small footprint embedded devices. Moreover, ERLE file format sections are described, as well as compression algorithms that are used and main file auxiliary structures for faster random pixel access.
telecommunications forum | 2011
Sasa Stojanovic; Dragan Bojic; Veljko Milutinovic
In this paper we evaluated several free and open source compiler tools in the domain of tightly coupled multicore and fine grain reconfigurable systems. We chose the classic x86, ibm cell, and FPGA accelerator boards as representatives of commodity hardware of today. Our point of view was that of a traditional programmer (vs. hardware developer), so we focused on parallelizing compilers, and computation models such as OpenMP, in order to evaluate not just performance, but also the ease of use and level of automation in exploiting parallelism. Our case studies are based on previous work of Gokhale et. al and are an extension of those in the context of technical advances. The major purpose of our work is to establish an infrastructure which enables us to do experiments that combine FPGA-oriented and multicore-oriented compilation for the maximal execution time improvement of a single scientific program.
telecommunications forum | 2017
Nemanja Trifunovic; Milos Kotlar; Ognjen Andric; Petar Trifunovic; Sasa Stojanovic; Milos Cvetanovic; Zaharije Radivojevic; Marija Punt; Nenad Korolija; Veljko Milutinovic