Person: AKTEMUR, Tankut Bariş
Name
Job Title
First Name
Tankut Bariş
Last Name
AKTEMUR
20 results
Publication Search Results
Now showing 1 - 10 of 20
ArticlePublication Metadata only Automatically learning usage behavior and generating event sequences for black-box testing of reactive systems(The ACM Digital Library, 2019-06) Kıraç, Mustafa Furkan; Aktemur, Tankut Barış; Sözer, Hasan; Gebizli, C. Ş.; Computer Science; KIRAÇ, Mustafa Furkan; AKTEMUR, Tankut Bariş; SÖZER, HasanWe propose a novel technique based on recurrent artificial neural networks to generate test cases for black-box testing of reactive systems. We combine functional testing inputs that are automatically generated from a model together with manually-applied test cases for robustness testing. We use this combination to train a long short-term memory (LSTM) network. As a result, the network learns an implicit representation of the usage behavior that is liable to failures. We use this network to generate new event sequences as test cases. We applied our approach in the context of an industrial case study for the black-box testing of a digital TV system. LSTM-generated test cases were able to reveal several faults, including critical ones, that were not detected with existing automated or manual testing activities. Our approach is complementary to model-based and exploratory testing, and the combined approach outperforms random testing in terms of both fault coverage and execution time.Conference paperPublication Metadata only Seyrek matris-vektör çarpımı için koşut zamanda özelleşmi̇ş kod üreti̇mi̇ ve deneysel opti̇mi̇zasyon(IEEE, 2012) Aktemur, Tankut Barış; Yıldız, Asım; Kamin, S.; Computer Science; AKTEMUR, Tankut Bariş; Yıldız, AsımBu çalışmada seyrek matris-vektor çarpımı için matris içeriğine göre özelleşmiş, yüksek hızlı program üretimi yapan bir kütüphane tasarımı anlatılmaktadır. Kütüphane sinyal işleme uygulamaları, bilimsel hesaplamalar, sonlu eleman analizi gibi mühendislik problemlerinde kullanılan büyük matrisler için kod üretimine olanak verir. Üretilen kod, pek çok seçenek arasından, deneysel optimizasyon yöntemiyle seçilir. Bu sayede koşumun gerçekleştiği makineye en uygun seçimin yapılması hedeflenir.ArticlePublication Metadata only Autotuning runtime specialization for sparse matrix-vector multiplication(ACM, 2016-04) Yılmaz, Buse; Aktemur, Tankut Barış; Garzaran, M. J.; Kamin, S.; Kıraç, Mustafa Furkan; Computer Science; AKTEMUR, Tankut Bariş; KIRAÇ, Mustafa Furkan; Yılmaz, BuseRuntime specialization is used for optimizing programs based on partial information available only at runtime. In this paper we apply autotuning on runtime specialization of Sparse Matrix-Vector Multiplication to predict a best specialization method among several. In 91% to 96% of the predictions, either the best or the second-best method is chosen. Predictions achieve average speedups that are very close to the speedups achievable when only the best methods are used. By using an efficient code generator and a carefully designed set of matrix features, we show the runtime costs can be amortized to bring performance benefits for many real-world cases.ArticlePublication Metadata only VISOR: A fast image processing pipeline with scaling and translation invariance for test oracle automation of visual output systems(The ACM Digital Library, 2018-02) Kıraç, Mustafa Furkan; Aktemur, Tankut Barış; Sözer, Hasan; Computer Science; KIRAÇ, Mustafa Furkan; AKTEMUR, Tankut Bariş; SÖZER, HasanA test oracle automation approach proposed for systems that produce visual output.Root causes of accuracy issues analyzed for test oracles based on image comparison.Image processing techniques employed to improve the accuracy of test oracles.A fast image processing pipeline developed as an automated test oracle.An industrial case study performed for automated regression testing of Digital TVs. Test oracles differentiate between the correct and incorrect system behavior. Hence, test oracle automation is essential to achieve overall test automation. Otherwise, testers have to manually check the system behavior for all test cases. A common test oracle automation approach for testing systems with visual output is based on exact matching between a snapshot of the observed output and a previously taken reference image. However, images can be subject to scaling and translation variations. These variations lead to a high number of false positives, where an error is reported due to a mismatch between the compared images although an error does not exist. To address this problem, we introduce an automated test oracle, named VISOR, that employs a fast image processing pipeline. This pipeline includes a series of image filters that align the compared images and remove noise to eliminate differences caused by scaling and translation. We evaluated our approach in the context of an industrial case study for regression testing of Digital TVs. Results show that VISOR can avoid 90% of false positive cases after training the system for 4h. Following this one-time training, VISOR can compare thousands of image pairs within seconds on a laptop computer.Conference paperPublication Metadata only Shonan challenge for generative programming: short position paper(ACM, 2013) Aktemur, Tankut Barış; Kameyama, Y.; Kiselyov, O.; Shan, C.-C.; Computer Science; AKTEMUR, Tankut BarişThe appeal of generative programming is "abstraction without guilt": eliminating the vexing trade-off between writing high-level code and highly-performant code. Generative programming also promises to formally capture the domain-specific knowledge and heuristics used by high-performance computing (HPC)experts. How far along are we in fulfilling these promises? To gauge our progress, a recent Shonan Meeting on "bridging the theory of staged programming languages and the practice of high-performance computing" proposed to use a set of benchmarks, dubbed "Shonan Challenge". Shonan Challenge is a collection of crisp problems posed by HPC and domain experts, for which efficient implementations are known but were tedious to write and modify. The challenge is to generate a similar efficient implementation from the high-level specification of a problem, performing the same optimizations, but automatically. It should be easy to adjust optimizations and the specification, maintaining confidence in the generated code. We describe our initial set of benchmarks and provide three solutions to two of the problems. We hope that the Shonan Challenge will clarify the state of the art and stimulate the theory and technology of staging just as the POPLmark challenge did for meta-theory mechanization. Since each Shonan Challenge problem is a kernel of a significant HPC application, each solution has an immediate practical application.ArticlePublication Metadata only ADVISOR: An adjustable framework for test oracle automation of visual output systems(IEEE, 2020-09) Genç, A. E.; Sözer, Hasan; Kıraç, Mustafa Furkan; Aktemur, Tankut Barış; Computer Science; SÖZER, Hasan; KIRAÇ, Mustafa Furkan; AKTEMUR, Tankut BarişTest oracles differentiate between the correct and incorrect system behavior. Automation of test oracles for visual output systems mainly involves image comparison, where a snapshot of the output is compared with respect to a reference image. Hereby, the captured snapshot can be subject to variations such as scaling and shifting. These variations lead to incorrect evaluations. Existing approaches employ computer vision techniques to address a specific set of variations. In this article, we introduce ADVISOR, an adjustable framework for test oracle automation of visual output systems. It allows the use of a flexible combination and configuration of computer vision techniques. We evaluated a set of valid configurations with a benchmark dataset collected during the tests of commercial digital TV systems. Some of these configurations achieved up to 3% better overall accuracy with respect to state-of-the-art tools. Further, we observed that there is no configuration that reaches the best accuracy for all types of image variations. We also empirically investigated the impact of significant parameters. One of them is a threshold regarding image matching score that determines the final verdict. This parameter is automatically tuned by offline training. We evaluated runtime performance as well. Results showed that differences among the ADVISOR configurations and state-of-the-art tools are in the order of seconds per image comparison.Book ChapterPublication Metadata only FAS: introducing a service for avoiding faults in composite services(Springer Science+Business Media, 2012) Gülcü, K.; Sözer, Hasan; Aktemur, Tankut Barış; Computer Science; SÖZER, Hasan; AKTEMUR, Tankut BarişIn service-oriented architectures, composite services depend on a set of partner services to perform the required tasks. These partner services may become unavailable due to system and/or network faults, leading to an increased error rate for the composite service. In this paper, we propose an approach to prevent the occurrence of errors that result from the unavailability of partner services. We introduce an external Web service, FAS (Fault Avoidance Service), to which composite services can register at will. After registration, FAS periodically checks the partner links, detects unavailable partner services, and updates the composite service with available alternatives. Thus, in case of a partner service error, the composite service will have been updated before invoking the partner service. We provide mathematical analysis regarding the error rate and the ratio of false positives with respect to the monitoring frequency of FAS for different partner service availabilities. We also provide empirical results regarding these metrics based on several tests we performed using the Amazon Elastic Compute Cloud.Conference paperPublication Metadata only Towards subtyped program generation in F#(ACM, 2011) Aktemur, Tankut Barış; Computer Science; AKTEMUR, Tankut BarişProgram Generation is the technique of combining code fragments to construct a program. In this work we report on our progress to extend F# with program generation constructs. Our prototype implementation uses a translation that allows simulating program generators by regular programs. The translation enables fast implementation and experimentation. We state how a further extension with subtyping can be integrated by benefiting from the translation.Conference paperPublication Metadata only Static analysis of multi-staged programs via unstaging translation(ACM, 2011) Choi, W.; Aktemur, Tankut Barış; Yi, K.; Tatsuta, M.; Computer Science; AKTEMUR, Tankut BarişStatic analysis of multi-staged programs is challenging because thebasic assumption of conventional static analysis no longer holds: the program text itself is no longer a fixed static entity, but rather a dynamically constructed value. This article presents a semanticpreserving translation of multi-staged call-by-value programs into unstaged programs and a static analysis framework based on this translation. The translation is semantic-preserving in that every small-step reduction of a multi-staged program is simulated by the evaluation of its unstaged version. Thanks to this translation we can analyze multi-staged programs with existing static analysis techniques that have been developed for conventional unstaged programs: we first apply the unstaging translation, then we apply conventional static analysis to the unstaged version, and finally we cast the analysis results back in terms of the original staged program. Our translation handles staging constructs that have beenevolved to be useful in practice (typified in Lisp’s quasi quotation): open code as values, unrestricted operations on references and intentional variable-capturing substitutions. This article omits references for which we refer the reader to our companion technical report.Conference paperPublication Metadata only A sparse matrix‐vector multiplication method with low preprocessing cost(Wiley, 2018-11-10) Aktemur, Tankut Barış; Computer Science; AKTEMUR, Tankut BarişSparse matrix-vector multiplication (SpMV) is a crucial operation used for solving many engineering and scientific problems. In general, there is no single SpMV method that gives high performance for all sparse matrices. Even though there exist sparse matrix storage formats and SpMV implementations that yield high efficiency for certain matrix structures, using these methods may entail high preprocessing or format conversion costs. In this work, we present a new SpMV implementation, named CSRLenGoto, that can be utilized by preprocessing the Compressed Sparse Row (CSR) format of a matrix. This preprocessing phase is inexpensive enough for the associated cost to be compensated in just a few repetitions of the SpMV operation. CSRLenGoto is based on complete loop unrolling and gives performance improvements in particular for matrices whose mean row length is low. We parallelized our method by integrating it into a state-of-the-art matrix partitioning approach as the kernel operation. We observed up to 2.46× and on the average 1.29× speedup with respect to Intel MKL's SpMV function for matrices with short- or medium-length rows.