Kamer Kaya

dblp:53/6185 · DBLP profile ↗
← Back
65ranked-venue papers
5as first author
18since 2021 · last 2026
0000-0001-8678-5467ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 34 · 3 first-author · 11 since 2021Databases, data management, data science and information retrieval · 15 · 1 first-author · 3 since 2021Artificial intelligence and machine learning · 9 · 3 since 2021Software engineering, systems software and programming languages · 7Applied, interdisciplinary, general and emerging computing · 5Theory of computation · 3 · 1 first-author · 1 since 2021Human-computer interaction and ubiquitous computing · 2Security and privacy · 1
YearPublicationVenuePosition
2026 BLEST: Blazingly Efficient BFS using Tensor Cores
abstract
Breadth-First Search (BFS) is a fundamental graph kernel that underpins a wide range of applications. While modern GPUs provide specialised Matrix-Multiply-Accumulate (MMA) units, e.g., Tensor Cores (TC), with extremely high throughput, they target dense operations, making them non-trivial to use for irregular, unstructured graph computations. In particular, fully utilising TCs for BFS requires an efficient mapping of the edge operations onto TCs while avoiding redundancy, load imbalance, and synchronisation. We present Blest, a TC-accelerated framework that reformulates the pull-based BFS pipeline around a bitmap-oriented structure and a carefully engineered execution layout. Blest introduces Binarised Virtual Slice Sets (BVSS) to enforce warp-level load balancing and to eliminate frontier-oblivious work assignment. To improve both memory efficiency and update locality across diverse graphs, we apply two complementary graph reordering strategies: a compression-oriented ordering for social-like graphs and a bandwidth-reducing ordering for non-social graphs. At the compute level, we develop a batched SpMSpV multiplication pattern that uses the bitwise TC tiles to handle dot products without wasting output entries, thereby reducing the number of required MMA calls. Finally, Blest combines kernel fusion with a lazy vertex update scheme to reduce host-side synchronisation, mitigate atomic overheads, and improve cache locality. Experiments show that Blest delivers, on average, 3.58 ×, 4.64 × and 4.9 × speedup over BerryBees, Gunrock, and GSWITCH, respectively, across a broad set of real-world graphs.
Deniz Elbek, Kamer Kaya
ICS2
2026 Providing Secure Information Exchange for Transportation Management in a Decentralised Platform
abstract
454
David Gray Marchant, Tim Clausing, Victor Tvrdy, Arne Lamm, Falk Bethke, Oliver Steensen-Bech Haagh, Michael Kirkedal Thomsen, Kamer Kaya, Cansu Tanrikulu
VEHITS9
2026 Special Issue on High-Performance Computing Conference (BAŞARIM 2024)
abstract
ABSTRACT This editorial is for the Special Issue on the 8th High‐Performance Computing Conference (BAŞARIM 2024), held on May 15–17, 2024, at the Middle East Technical University Culture and Convention Center in Ankara.
Pinar Karagöz, Kamer Kaya, Murat Manguoglu, Cevat Sener
Concurr. Comput. Pract. Exp.2
2025 MCMC for Bayesian Estimation of Differential Privacy from Membership Inference Attacks
Ceren Yildirim, Kamer Kaya, Sinan Yildirim, Erkay Savas
ECML/PKDD (5)2
2025 Distributed landmark labeling for social networks
Arda Sener, Hüsnü Yenigün, Kamer Kaya
J. Parallel Distributed Comput.3
2025 DiFuseR: a distributed sketch-based influence maximization algorithm for GPUs
Gökhan Göktürk, Kamer Kaya
J. Supercomput.2
2024 Fast and error-adaptive influence maximization based on Count-Distinct sketches
Gökhan Göktürk, Kamer Kaya
Inf. Sci.2
2023 Special issue on High-Performance Computing Conference (BASARIM 2022)
abstract
Summary This is an editorial for the Special Issue on the 7th High‐Performance Computing Conference (BAŞARIM 2022) organized on May 11–13, 2022, at Sabanci University Altunizade Digital Campus, İstanbul.
Kamer Kaya, Cevat Sener, Hüsnü Yenigün
Concurr. Comput. Pract. Exp.1
2022 Degree-Aware Kernels for Computing Jaccard Weights on GPUs
abstract
Graphs provide the ability to extract valuable met-rics from the structural properties of the underlying data they represent. One such metric is the Jaccard Weight of an edge, which is the ratio of the number of common neighbors of the edge's endpoints to the union of the endpoints' neighborhood. A naive implementation of Jaccard Weights computation has a complexity that scales with the number of edges in the graph times the square of the maximum degree. Recently, GPU-based parallel algorithms have been proposed for this problem. How-ever, these algorithms cannot overcome the structural variance within a graph, i.e., the sparsity pattern and degree imbalance, which directly translates to unbalanced work distribution across threads. In this work, we propose an optimized GPU-based algorithm with an ML-based work distribution model that mitigates the unbalanced work distribution. Our algorithm is shown to be up to 35x and on average 12x faster than the state of the art in practice while using less memory. In fact, we show that by manually tweaking the load distribution, a state-of-the-art implementation can be 5x faster. In addition, we propose a multi-core, shared-memory algorithm that applies a traditional but effective technique to improve the computation asymptotically and perform comparably to the GPU algorithms. Our code is available at https://github.com/SU-HPC/Jaccard-ML.
Amro Alabsi Aljundi, Taha Atahan Akyildiz, Kamer Kaya
IPDPS3
2022 Fast and High-Quality Influence Maximization on Multiple GPUs
abstract
Influence Maximization (IM) is a popular problem focusing on finding a seed vertex set in a graph that maximizes the expected number of vertices affected via diffusion under a given, usually probabilistic model. For most diffusion models used in practice, finding an optimal seed set of a given size is NP-Hard. Hence, approximation algorithms and heuristics are often proposed and used. The Greedy approach is one of the most frequently applied approximation approach employed for IM. Indeed, this Monte-Carlo-based approach performs remarkably well in terms of seed set quality, i.e., the number of affected vertices. However, it is impractical for real-life networks containing tens of millions of vertices due to its expensive simulation costs. Recently, parallel IM kernels running on CPUs and GPUs have been proposed in the literature. In this work, we propose SUPERFUSER, a blazing-fast, sketch-based Influence Maximization algorithm developed for multiple GPUs. SUPERFUSER uses hash-based fused sampling to process multiple simulations at the same time with minimal overhead. In addition, we propose a Sampling-Aware Sample-Space Split approach to partition the edges to multiple GPUs efficiently by exploiting the unique characteristics of the sampling process. Based on our experiments, SUPERFUSER is up to 6.31× faster than its nearest competitor on a single GPU. Furthermore, we achieve 6.8× speed-up on average using 8 GPUs over a single GPU performance, and thanks to our novel partitioning scheme, we can process extremely large-scale graphs in practice without sacrificing quality too much. As an example, SUPERFUSER can generate a high-quality seed set with 50 vertices for a graph having 1.8B edges in less than 15 seconds on 2 GPUs.
Gökhan Göktürk, Kamer Kaya
IPDPS2
2022 Mixed and Multi-Precision SpMV for GPUs with Row-wise Precision Selection
abstract
Sparse Matrix-Vector Multiplication (SpMV) is one of the key memory-bound kernels commonly used in industrial and scientific applications. To improve its data movement and benefit from higher compute rates, there are several efforts to utilize mixed precision on SpMV. Most of the prior-art focus on performing the entire SpMV in single-precision within a bigger context of an iterative solver (e.g., CG, GMRES). In this work, we are interested in a more fine-grained mixed-precision SpMV, where the level of precision is decided for each element in the matrix to be used in a single operation. We extend an existing entry-wise precision based approach by deciding precisions per row, motivated by the granularity of parallelism on a GPU where groups of threads process rows in CSR-based matrices. We propose mixed-precision CSR storage methods with row permutations and describe their greater efficiency and load-balancing compared to the existing method. We also consider a multi-precision case where single and double precision copies of the matrix are stored priorly and further extend our mixed-precision SpMV approach to comply with it. As such, we leverage a mixed-precision SpMV to obtain a multi-precision Jacobi method which is faster than yet almost as accurate as double-precision Jacobi implementation, and further evaluate a multi-precision Cardiac modeling algorithm. We demonstrate the effectiveness of the proposed SpMV methods on an extensive dataset of real-valued large sparse matrices from the SuiteSparse Matrix Collection using an NVIDIA V100 GPU.
Erhan Tezcan, Tugba Torun, Fahrican Kosar, Kamer Kaya, Didem Unat
SBAC-PAD4
2022 Machine learning-based load distribution and balancing in heterogeneous database management systems
abstract
Summary For dynamic and continuous data analysis, conventional OLTP systems are slow in performance. Today's cutting‐edge high‐performance computing hardware, such as GPUs, has been used as accelerators for data analysis tasks, which traditionally leverage CPUs on classical database management systems (DBMS). When CPUs and GPUs are used together, the architectural heterogeneity, that is, leveraging hardware with different performance characteristics jointly, creates complex problems that need careful treatment for performance optimization. Load distribution and balancing are crucial problems for DBMSs working on heterogeneous architectures. In this work, focusing on a hybrid, CPU‐GPU database management system to process users' queries, we propose heuristical and machine‐learning‐based (ML‐based) load distribution and balancing models. In more detail, we employ multiple linear regression (MLR), random forest (RF), and Adaboost (Ada) models to dynamically decide the processing unit for each incoming query based on the response time predictions on both CPU and GPU. The ML‐based models outperformed the other algorithms, as well as the CPU and GPU‐only running modes with up to 27%, 29%, and 40%, respectively, in overall performance (response time) while answering intense real‐life working scenarios. Finally, we propose to use a hybrid load‐balancing model that would be more efficient than the models we tested in this work.
Anes Abdennebi, Anil Elakas, Fatih Tasyaran, Erdinç Öztürk, Kamer Kaya, Sinan Yildirim
Concurr. Comput. Pract. Exp.5
2022 Scaling matrices and counting the perfect matchings in graphs
Fanny Dufossé, Kamer Kaya, Ioannis Panagiotas, Bora Uçar
Discret. Appl. Math.2
2022 Boosting Graph Embedding on a Single GPU
abstract
Graphs are ubiquitous, and they can model unique characteristics and complex relations of real-life systems. Although using machine learning (ML) on graphs is promising, their raw representation is not suitable for ML algorithms. Graph embedding represents each node of a graph as a d-dimensional vector which is more suitable for ML tasks. However, the embedding process is expensive, and CPU-based tools do not scale to real-world graphs. In this work, we present GOSH, a GPU-based tool for embedding large-scale graphs with minimum hardware constraints. GOSH employs a novel graph coarsening algorithm to enhance the impact of updates and minimize the work for embedding. It also incorporates a decomposition schema that enables any arbitrarily large graph to be embedded with a single GPU. As a result, GOSH sets a new state-of-the-art in link prediction both in accuracy and speed, and delivers high-quality embeddings for node classification at a fraction of the time compared to the state-of-the-art. For instance, it can embed a graph with over 65 million vertices and 1.8 billion edges in less than 30 minutes on a single GPU.
Amro Alabsi Aljundi, Taha Atahan Akyildiz, Kamer Kaya
IEEE Trans. Parallel Distributed Syst.3
2021 Flexible Architecture for Data-Driven Predictive Maintenance with Support for Offline and Online Machine Learning Techniques
abstract
Predictive maintenance requires the constant monitorization of equipment and the accumulation of data captured from sensors, industrial equipment, and existing management software. This data must be cleaned and processed before being used to train machine learning models that will generate different outputs of interest, such as fault prediction, fault detection, estimation of an equipment’s remaining useful life, among others. Considering these requirements and the different technologies needed to accommodate them, we present an architecture for predictive maintenance, based on existing standard architectures for Industry 4.0, that not only supports the implementation of all stages of predictive maintenance, but is flexible enough to be applied in distinct industrial scenarios. Moreover, the architecture is capable of accommodating both offline and online data pre-processing and machine learning techniques.
Alda Canito, Marta Fernandes, João Mourinho, Serkan Tosun, Kamer Kaya, Aysegül Turupcu, Angel Lagares, Hüseyin Karabulut, Goreti Marreiros
IECON5
2021 Boosting expensive synchronizing heuristics
N. Ege Saraç, Ömer Faruk Altun, Kamil Tolga Atam, Sertaç Karahoda, Kamer Kaya, Hüsnü Yenigün
Expert Syst. Appl.5
2021 Synchronizing billion-scale automata
Mustafa Kemal Tas, Kamer Kaya, Hüsnü Yenigün
Inf. Sci.2
2021 Boosting Parallel Influence-Maximization Kernels for Undirected Networks With Fusing and Vectorization
abstract
Influence maximization (IM) is the problem of finding a seed vertex set which is expected to incur the maximum influence spread on a graph. It has various applications in practice such as devising an effective and efficient approach to disseminate information, news or ad within a social network. The problem is shown to be NP-hard and approximation algorithms with provable quality guarantees exist in the literature. However, these algorithms are computationally expensive even for medium-scaled graphs. Furthermore, graph algorithms usually suffer from spatial and temporal irregularities during memory accesses, and this adds an extra cost on top of the already expensive IM kernels. In this article we leverage fused sampling, memoization, and vectorization to restructure, parallelize and boost their performance on undirected networks. The proposed approach employs a pseudo-random function and performs multiple Monte-Carlo simulations in parallel to exploit the SIMD lanes effectively and efficiently. In addition, it significantly reduces the number of edge traversals, hence the amount of data brought from the memory, which is critical for almost all memory-bound graph kernels. We apply the proposed approach to the traditional MIXGREEDY algorithm and propose INFUSER-MG which is more than 3000χ fasterthan the greedy approaches and can run on large graphs that have been considered as too large in the literature. For instance, the new algorithm runs in 2.09, 0.08, 0.36 seconds on graphs Amazon, NetHEP, NetPhy with 16 threads where the sequential baseline takes 141.3, 259.1 and 1725.2 seconds, respectively. To compare INFUSER-MG with the state-of-the-art approximation algorithms, we conduct a thorough experimental analysis with various influence settings. The results on real-life, undirected networks show that on 16 threads, INFUSER-MG is 2:3χ-173:8χ faster than state-of-the-art while being superior in terms of influence scores, and using a comparable amount of memory.
Gökhan Göktürk, Kamer Kaya
IEEE Trans. Parallel Distributed Syst.2
2020 Karp-Sipser based kernels for bipartite graph matching
abstract
We consider Karp-Sipser, a well known matching heuristic in the context of data reduction for the maximum cardinality matching problem. We describe an efficient implementation as well as modifications to reduce its time complexity in worst case instances, both in theory and in practical cases. We compare experimentally against its widely used simpler variant and show cases for which the full algorithm yields better performance.
Kamer Kaya, Johannes Langguth, Ioannis Panagiotas, Bora Uçar
ALENEX1
2020 Understanding Coarsening for Embedding Large-Scale Graphs
abstract
A significant portion of the data today, e.g, social networks, web connections, etc., can be modeled by graphs. A proper analysis of graphs with Machine Learning (ML) algorithms has the potential to yield far-reaching insights into many areas of research and industry. However, the irregular structure of graph data constitutes an obstacle for running ML tasks on graphs such as link prediction, node classification, and anomaly detection. Graph embedding is a compute-intensive process of representing graphs as a set of vectors in a d-dimensional space, which in turn makes it amenable to ML tasks. Many approaches have been proposed in the literature to improve the performance of graph embedding, e.g., using distributed algorithms, accelerators, and pre-processing techniques. Graph coarsening, which can be considered a pre-processing step, is a structural approximation of a given, large graph with a smaller one. As the literature suggests, the cost of embedding significantly decreases when coarsening is employed. In this work, we thoroughly analyze the impact of the coarsening quality on the embedding performance both in terms of speed and accuracy. Our experiments with a state-of-the-art, fast graph embedding tool show that there is an interplay between the coarsening decisions taken and the embedding quality.
Taha Atahan Akyildiz, Amro Alabsi Aljundi, Kamer Kaya
IEEE BigData3
2020 Differentially Private Frequency Sketches for Intermittent Queries on Large Data Streams
abstract
We propose novel and differentially private versions of Count Sketch, particularly suited for dynamic, intermittent queries for observed frequencies of elements in a universal set. Our algorithms are designed for scenarios where the queries are made intermittently, that is, at different times during the course of the data stream. We explore several approaches, all based on the Laplace mechanism, and ultimately propose an algorithm that is robust and efficiently handles multiple queries at multiple times while keeping its utility at reasonable levels. We demonstrate the performance of the proposed algorithm in various scenarios with a numerical example.
Sinan Yildirim, Kamer Kaya, Soner Aydin, Hakan Bugra Erentug
IEEE BigData2
2020 GOSH: Embedding Big Graphs on Small Hardware
abstract
In graph embedding, the connectivity information of a graph is used to represent each vertex as a point in a d-dimensional space. Unlike the original, irregular structural information, such a representation can be used for a multitude of machine learning tasks. Although the process is extremely useful in practice, it is indeed expensive and unfortunately, the graphs are becoming larger and harder to embed. Attempts at scaling up the process to larger graphs have been successful but often at a steep price in hardware requirements. We present Gosh, an approach for embedding graphs of arbitrary sizes on a single GPU with minimum constraints. Gosh utilizes a novel graph coarsening approach to compress the graph and minimize the work required for embedding, delivering high-quality embeddings at a fraction of the time compared to the state-of-the-art. In addition to this, it incorporates a decomposition schema that enables any arbitrarily large graph to be embedded using a single GPU with minimum constraints on the memory size. With these techniques, Gosh is able to embed a graph with over 65 million vertices and 1.8 billion edges in less than an hour on a single GPU and obtains a 93% AUCROC for link-prediction which can be increased to 95% by running the tool for 80 minutes.
Taha Atahan Akyildiz, Amro Alabsi Aljundi, Kamer Kaya
ICPP3
2020 Multicore and manycore parallelization of cheap synchronizing sequence heuristics
Sertaç Karahoda, Osman Tufan Erenay, Kamer Kaya, Uraz Cengiz Türker, Hüsnü Yenigün
J. Parallel Distributed Comput.3
2019 One Table to Count Them All: Parallel Frequency Estimation on Single-Board Computers
Fatih Tasyaran, Kerem Yildirir, Mustafa Kemal Tas, Kamer Kaya
Euro-Par4
2019 Using Synchronizing Heuristics to Construct Homing Sequences
abstract
Computing a shortest synchronizing sequence of an automaton is an NP-Hard problem.There are well-known heuristics to find short synchronizing sequences.Finding a shortest homing sequence is also an NP-Hard problem.Unlike existing heuristics to find synchronizing sequences, homing heuristics are not widely studied.In this paper, we discover a relation between synchronizing and homing sequences by creating an automaton called homing automaton.By applying synchronizing heuristics on this automaton we get short homing sequences.Furthermore, we adapt some of the synchronizing heuristics to construct homing sequences.
Berk Çirisci, M. Yusa Emek, Ege Sorguç, Kamer Kaya, Hüsnü Yenigün
MODELSWARD4
2019 CHiP: A Configurable Hybrid Parallel Covering Array Constructor
abstract
We present a configurable, hybrid, and parallel covering array constructor, called CHiP. CHiP is parallel in that it utilizes vast amount of parallelism provided by graphics processing units (GPUs). CHiP is hybrid in that it bundles the bests of two construction approaches for computing covering arrays; a metaheuristic search-based approach for efficiently covering a large portion of the required combinations and a constraint satisfaction-based approach for effectively covering the remaining hard-to-cover-by-chance combinations. CHiP is configurable in that a trade-off between covering array sizes and construction times can be made. We have conducted a series of experiments, in which we compared the efficiency and effectiveness of CHiP to those of a number of existing constructors by using both full factorial designs and well-known benchmarks. In these experiments, we report new upper bounds on covering array sizes, demonstrating the effectiveness of CHiP, and the first results for a higher coverage strength, demonstrating the scalability of CHiP.
Hanefi Mercan, Cemal Yilmaz 0001, Kamer Kaya
IEEE Trans. Software Eng.3
2018 Using Structure of Automata for Faster Synchronizing Heuristics
abstract
The problem of finding a synchronizing sequence for an automaton is an interesting problem studied widely in the literature. Finding a shortest synchronizing sequence is an NP-Hard problem. Therefore, there are heuristics to find short synchronizing sequences. Some heuristics work fast but produce long synchronizing sequences, whereas some heuristics work slow but produce relatively shorter synchronizing sequences. In this paper we propose a method for using these heuristics by considering the connectedness of automata. Applying the proposed approach of using these heuristics make the heuristics work faster than their original versions, without sacrificing the quality of the synchronizing sequences.
Berk Çirisci, Muhammed Kerem Kahraman, Cagri Uluc Yildirimoglu, Kamer Kaya, Hüsnü Yenigün
MODELSWARD4
2018 Optimally bipartitioning sparse matrices with reordering and parallelization
abstract
Summary A good task‐to‐processor assignment is crucial for parallel efficiency since the communication between the tasks is usually the main bottleneck for scalability. A fundamental approach to solve this problem is modeling the tasks as a hypergraph where the pins correspond to the tasks and the nets represent the communication among them. The vertices in this hypergraph is partitioned into a number of parts, which correspond to processors, in a way that the total number of vertices for each part is balanced and the amount of edges having endpoints in different parts is minimized. Sparse matrix‐vector multiplication is an extensively used kernel in many applications. Recently, a novel, purely combinatorial branch‐and‐bound–based approach has been proposed for sparse‐matrix bipartitioning which can handle hypergraphs that cannot be optimally partitioned by using existing methods due to the problem's complexity. Our work extends the previous study with three ideas. We use 1) matrix ordering techniques to use more information in the earlier branches of the tree, 2) a machine learning approach to choose an ordering based on the matrix features, and 3) a parallelization technique to search an optimal bipartitioning. As our experiments show, these techniques make the bipartitioning process significantly faster.
Aras Mumcuyan, Baran Usta, Kamer Kaya, Hüsnü Yenigün
Concurr. Comput. Pract. Exp.3
2018 A generic Private Information Retrieval scheme with parallel multi-exponentiations on multicore processors
abstract
Summary Private Information Retrieval (PIR) enables the data owners to share and/or retrieve data on remote repositories without leaking any information as to which a data item is requested. Although it is always possible to download the entire dataset, this is clearly a waste of bandwidth. A fundamental approach in the literature for PIR is exploiting homomorphic cryptosystems. In these approaches, not one but many modular exponentiations need to be computed and multiplied to obtain the desired result. This multi‐exponentiation operation can be implemented by exponentiating the bases to their corresponding exponents one‐by‐one. However, when the operation is considered as a whole, it can be performed in a more efficient way. Although individual exponentiations are pleasingly parallelizable, the combined multi‐exponentiation requires a careful parallel implementation. In this work, we propose a generic tensor‐based PIR scheme and efficient and novel techniques to parallelize multi‐exponentiations on multicore processors with perfect load balance. The experimental results show that our load balancing techniques make a parallel multi‐exponentiation up to %27 faster when the size of the bases and the exponents are 4096 bits and the number of threads is 16.
Cem Topcuoglu, Kamer Kaya, Erkay Savas
Concurr. Comput. Pract. Exp.2
2018 Synchronizing heuristics: Speeding up the fastest
Sertaç Karahoda, Kamer Kaya, Hüsnü Yenigün
Expert Syst. Appl.2
2018 A resource provisioning framework for bioinformatics applications in multi-cloud environments
Izzet F. Senturk, Ponnuraman Balakrishnan, Anas Abu-Doleh, Kamer Kaya, Qutaibah M. Malluhi, Ümit V. Çatalyürek
Future Gener. Comput. Syst.4
2017 Acyclic Partitioning of Large Directed Acyclic Graphs
abstract
Finding a good partition of a computational directed acyclic graph associated with an algorithm can help find an execution pattern improving data locality, conduct an analysis of data movement, and expose parallel steps. The partition is required to be acyclic, i.e., the inter-part edges between the vertices from different parts should preserve an acyclic dependency structure among the parts. In this work, we adopt the multilevel approach with coarsening, initial partitioning, and refinement phases for acyclic partitioning of directed acyclic graphs and develop a direct k-way partitioning scheme. To the best of our knowledge, no such scheme exists in the literature. To ensure the acyclicity of the partition at all times, we propose novel and efficient coarsening and refinement heuristics. The quality of the computed acyclic partitions is assessed by computing the edge cut, the total volume of communication between the parts, and the critical path latencies. We use the solution returned by well-known undirected graph partitioners as a baseline to evaluate our acyclic partitioner, knowing that the space of solution is more restricted in our problem. The experiments are run on large graphs arising from linear algebra applications.
Julien Herrmann, Jonathan Kho, Bora Uçar, Kamer Kaya, Ümit V. Çatalyürek
CCGrid4
2017 Greed Is Good: Parallel Algorithms for Bipartite-Graph Partial Coloring on Multicore Architectures
abstract
In parallel computing, a valid graph coloring yields a lock-free processing of the colored tasks, data points, etc., without expensive synchronization mechanisms. However, coloring is not free and the overhead can be significant. In particular, for the bipartite-graph partial coloring (BGPC) and distance-2 graph coloring (D2GC) problems, which have various use-cases within the scientific computing and numerical optimization domains, the coloring overhead can be in the order of minutes with a single thread for many real-life graphs.In this work, we propose parallel algorithms for bipartite-graph partial coloring on shared-memory architectures. Compared to the existing shared-memory BGPC algorithms, the proposed ones employ greedier and more optimistic techniques that yield a better parallel coloring performance. In particular, on 16 cores, the proposed algorithms are more than 4x faster than their counterparts in the ColPack library which is, to the best of our knowledge, the only publicly-available coloring library for multicore architectures. In addition to BGPC, the proposed techniques are employed to devise parallel distance-2 graph coloring algorithms and similar performance improvements have been observed. Finally, we propose two costless balancing heuristics for BGPC that can reduce the skewness and imbalance on the cardinality of color sets (almost) for free. The heuristics can also be used for the D2GC problem and in general, they will probably yield a better color-based parallelization performance especially on many-core architectures.
Mustafa Kemal Tas, Kamer Kaya, Erik Saule
ICPP2
2017 Synchronizing Heuristics: Speeding up the Slowest
Ömer Faruk Altun, Kamil Tolga Atam, Sertaç Karahoda, Kamer Kaya
ICTSS4
2017 A New Method for Computational Private Information Retrieval
abstract
Lipmaa's Computational Private Information Retrieval (CPIR) protocol is probably the most bandwidth efficient method in the literature, although its computational complexity is a limiting factor for practical applications as it is based on expensive public key operations. Utilizing binary decision diagrams (Bdd) and the Damgård–Jurik cryptosystem, Lipmaa's CPIR performs three modular exponentiation operations per internal node in Bdd. In this paper, we present a new CPIR protocol, which reduces the number of exponentiation operations to 1 per first-level internal nodes and 2 per other internal nodes of the Bdd. For 1024-bit exponents (i.e. 80-bit security level) and 32 768 items, when compared with the fastest parallel implementation in the literature on four cores, reducing the number of exponentiations yields a 1.22× speedup and the multi-exponentiation technique adds 2.23× more on top of that. Overall, when combined, reducing the number of exponentiations, multi-exponentiation, parallelization on four cores and the hybrid approach can provide more than 300× speedup compared to the sequential implementation of the original method.
Gamze Tillem, Erkay Savas, Kamer Kaya
Comput. J.3
2017 Graph Manipulations for Fast Centrality Computation
abstract
The betweenness and closeness metrics are widely used metrics in many network analysis applications. Yet, they are expensive to compute. For that reason, making the betweenness and closeness centrality computations faster is an important and well-studied problem. In this work, we propose the framework BADIOS that manipulates the graph by compressing it and splitting into pieces so that the centrality computation can be handled independently for each piece. Experimental results show that the proposed techniques can be a great arsenal to reduce the centrality computation time for various types and sizes of networks. In particular, it reduces the betweenness centrality computation time of a 4.6 million edges graph from more than 5 days to less than 16 hours. For the same graph, the closeness computation time is decreased from more than 3 days to 6 hours (12.7x speedup).
Ahmet Erdem Sariyüce, Kamer Kaya, Erik Saule, Ümit V. Çatalyürek
ACM Trans. Knowl. Discov. Data2
2016 Using Hypergraph Clustering for Software Architecture Reconstruction of Data-Tier Software
Ersin Ersoy 0001, Kamer Kaya, Metin Altinisik, Hasan Sözer
ECSA2
2016 Parallelizing Heuristics for Generating Synchronizing Sequences
Sertaç Karahoda, Osman Tufan Erenay, Kamer Kaya, Uraz Cengiz Türker, Hüsnü Yenigün
ICTSS3
2016 On the Relationship of Inconsistent Software Clones and Faults: An Empirical Study
abstract
Background: Code cloning - copying and reusing pieces of source code -- is a common phenomenon in software development in practice. There have been several empirical studies on the effects of cloning, but there are contradictory results regarding the connection of cloning and faults. Objective: Our aim is to clarify the relationship between code clones and faults. In particular, we focus on inconsistent (or type-3) clones in this work. Method: We conducted a case study with TWT GmbH where we detected the code clones in three Java systems, set them into relation to information from issue tracking and version control and interviewed three key developers. Results: Of the type-3 clones, 17 % contain faults. Developers modified most of the type-3 clones simultaneously and thereby fixed half of the faults in type-3 clones consistently. Type-2 clones with faults all evolved to fixed type-3 clones. Clone length is only weakly correlated with faultiness. Conclusion: There are indications that the developers in two cases have been aware of clones. It might be a reason for the weak relationship between type-3 clones and faults. Hence, it seems important to keep developers aware of clones, potentially with new tool support. Future studies need to investigate if the rate of faults in type-3 clones justifies using them as cues in defect detection.
Stefan Wagner 0001, Asim Abdulkhaleq, Kamer Kaya, Alexander Paar
SANER3
2016 A CRT-based verifiable secret sharing scheme secure against unbounded adversaries
abstract
Abstract For commitments on secrets, statistical hiding is a must when we are dealing with a long‐term secret or when the secret domain is small enough for a brute‐force attack by a powerful adversary. Unfortunately, all the Chinese Remainder Theorem‐based verifiable secret sharing schemes in the literature are either insecure or suffer from the vulnerability of computationally hiding commitments. To the best of our knowledge, there exist five such studies where two of them were already proven to be insecure. In this work, we first show that two of the remaining schemes are also insecure, that is, the schemes reveal information on the secret even when the adversary is passive. In addition, the remaining one is only secure against a computationally bounded adversary which can be a problem for secret sharing schemes requiring long‐term secret obscurity or using small secret domain. We propose a modification for the latter scheme and prove that the modified scheme is a secure verifiable secret sharing scheme against an unbounded adversary. Lastly, as an application, we show how to use the new scheme for joint random secret sharing and analyze the practicality and efficiency of the proposed schemes. Copyright © 2016 John Wiley & Sons, Ltd.
Oguzhan Ersoy, Thomas Brochmann Pedersen, Kamer Kaya, Ali Aydin Selçuk, Emin Anarim
Secur. Commun. Networks3
2015 Fast and High Quality Topology-Aware Task Mapping
abstract
Considering the large number of processors and the size of the interconnection networks on exactable-capable supercomputers, mapping concurrently executable and communicating tasks of an application is complex problem that needs to be dealt with care. For parallel applications, the communication overhead can be a significant bottleneck on scalability. Topology-aware task-mapping methods that map the tasks tithe processors~(i.e., cores) by exploiting the underlying network information are very effective to avoid, or at worst bend, this limitation. We propose novel, efficient, and effective task mapping algorithms employing a graph model. The experiments show that the methods are faster than the existing approaches proposed for the same task, and on 4096 processors, the algorithms improve the communication hops and link contentions by 16% and 32%, respectively, on the average. In addition, they improve the average execution time of a parallel Spiv kernel and a communication-only application by 9% and 14%, respectively.
Mehmet Deveci, Kamer Kaya, Bora Uçar, Ümit V. Çatalyürek
IPDPS2
2015 Hypergraph partitioning for multiple communication cost metrics: Model and methods
Mehmet Deveci, Kamer Kaya, Bora Uçar, Ümit V. Çatalyürek
J. Parallel Distributed Comput.2
2015 Two approximation algorithms for bipartite matching on multicore architectures
Fanny Dufossé, Kamer Kaya, Bora Uçar
J. Parallel Distributed Comput.2
2015 Regularizing graph centrality computations
Ahmet Erdem Sariyüce, Erik Saule, Kamer Kaya, Ümit V. Çatalyürek
J. Parallel Distributed Comput.3
2015 Incremental closeness centrality in distributed memory
Ahmet Erdem Sariyüce, Erik Saule, Kamer Kaya, Ümit V. Çatalyürek
Parallel Comput.3
2014 Bipartite Matching Heuristics with Quality Guarantees on Shared Memory Parallel Computers
abstract
We propose two heuristics for the bipartite matching problem that are amenable to shared-memory parallelization. The first heuristic is very intriguing from parallelization perspective. It has no significant algorithmic synchronization overhead and no conflict resolution is needed across threads. We show that this heuristic has an approximation ratio of around 0.632. The second heuristic is designed to obtain a larger matching by employing the well-known Karp-Sipser heuristic on a judiciously chosen subgraph of the original graph. We show that the Karp-Sipser heuristic always finds a maximum cardinality matching in the chosen subgraph. Although the Karp-Sipser heuristic is hard to parallelize for general graphs, we exploit the structure of the selected sub graphs to propose a specialized implementation which demonstrates a very good scalability. Based on our experiments and theoretical evidence, we conjecture that this second heuristic obtains matchings with cardinality of at least 0.866 of the maximum cardinality. We discuss parallel implementations of the proposed heuristics on shared memory systems. Experimental results, for demonstrating speed-ups and verifying the theoretical results in practice, are provided.
Fanny Dufossé, Kamer Kaya, Bora Uçar
IPDPS2
2014 Diversifying Citation Recommendations
abstract
Literature search is one of the most important steps of academic research. With more than 100,000 papers published each year just in computer science, performing a complete literature search becomes a Herculean task. Some of the existing approaches and tools for literature search cannot compete with the characteristics of today’s literature, and they suffer from ambiguity and homonymy. Techniques based on citation information are more robust to the mentioned issues. Thus, we recently built a Web service called the advisor, which provides personalized recommendations to researchers based on their papers of interest. Since most recommendation methods may return redundant results, diversifying the results of the search process is necessary to increase the amount of information that one can reach via an automated search. This article targets the problem of result diversification in citation-based bibliographic search, assuming that the citation graph itself is the only information available and no categories or intents are known. The contribution of this work is threefold. We survey various random walk--based diversification methods and enhance them with the direction awareness property to allow users to reach either old, foundational (possibly well-cited and well-known) research papers or recent (most likely less-known) ones. Next, we propose a set of novel algorithms based on vertex selection and query refinement. A set of experiments with various evaluation criteria shows that the proposed γ-RLM algorithm performs better than the existing approaches and is suitable for real-time bibliographic search in practice.
Onur Küçüktunç, Erik Saule, Kamer Kaya, Ümit V. Çatalyürek
ACM Trans. Intell. Syst. Technol.3
2013 Towards a personalized, scalable, and exploratory academic recommendation service
abstract
Literature search is an integral part of the academic research. Academic recommendation services have been developed to help researchers with their literature search, many of which only provide a text-based search functionality. Such services are suitable for a first-level bibliographic search; however, they lack the benefits of today's recommendation engines. In this paper, we identify three important properties that an academic recommendation service could provide for better literature search: personalization, scalability, and exploratory search. With these objectives in mind, we present a web service called theadvisor which helps the users build a strong bibliography by extending the document set obtained after a first-level search. Along with an efficient and personalized recommendation algorithm, the service also features result diversification, relevance feedback, visualization for exploratory search. We explain the design criteria and rationale we employed to make the theadvisor a useful and scalable web service with a thorough evaluation.
Onur Küçüktunç, Erik Saule, Kamer Kaya, Ümit V. Çatalyürek
ASONAM3
2013 Incremental algorithms for closeness centrality
abstract
Centrality metrics have shown to be highly correlated with the importance and loads of the nodes within the network traffic. In this work, we provide fast incremental algorithms for closeness centrality computation. Our algorithms efficiently compute the closeness centrality values upon changes in network topology, i.e., edge insertions and deletions. We show that the proposed techniques are efficient on many real-life networks, especially on small-world networks, which have a small diameter and spike-shaped shortest distance distribution. We experimentally validate the efficiency of our algorithms on large-scale networks and show that they can update the closeness centrality values of 1.2 million authors in the temporal DBLP-coauthorship network 460 times faster than it would take to recompute them from scratch.
Ahmet Erdem Sariyüce, Kamer Kaya, Erik Saule, Ümit V. Çatalyürek
IEEE BigData2
2013 STREAMER: A distributed framework for incremental closeness centrality computation
abstract
Networks are commonly used to model the traffic patterns, social interactions, or web pages. The nodes in a network do not possess the same characteristics: some nodes are naturally more connected and some nodes can be more important. Closeness centrality (CC) is a global metric that quantifies how important is a given node in the network. When the network is dynamic and keeps changing, the relative importance of the nodes also changes. The best known algorithm to compute the CC scores makes it impractical to recompute them from scratch after each modification. In this paper, we propose Streamer, a distributed memory framework for incrementally maintaining the closeness centrality scores of a network upon changes. It leverages pipelined and replicated parallelism and takes NUMA effects into account. It speeds up the maintenance of the CC of a real graph with 916K vertices and 4.3M edges by a factor of 497 using a 64 nodes cluster.
Ahmet Erdem Sariyüce, Erik Saule, Kamer Kaya, Ümit V. Çatalyürek
CLUSTER3
2013 GPU Accelerated Maximum Cardinality Matching Algorithms for Bipartite Graphs
Mehmet Deveci, Kamer Kaya, Bora Uçar, Ümit V. Çatalyürek
Euro-Par2
2013 Hypergraph Sparsification and Its Application to Partitioning
abstract
The data one needs to cope to solve today's problems is large scale, so are the graphs and hyper graphs used to model it. Today, we have Big Data, big graphs, big matrices, and in the future, they are expected to be bigger and more complex. Many of today's algorithms will be, and some already are, expensive to run on large datasets. In this work, we analyze a set of efficient techniques to make "big data", which is modeled as a hyper graph, smaller so that its processing takes much less time. As an application use case, we take the hyper graph partitioning problem, which has been successfully used in many practical applications for various purposes including parallelization of complex and irregular applications, sparse matrix ordering, clustering, community detection, query optimization, and improving cache locality in shared-memory systems. We conduct several experiments to show that our techniques greatly reduce the cost of the partitioning process and preserve the partitioning quality. Although we only measured their performance from the partitioning point of view, we believe the proposed techniques will be beneficial also for other applications using hyper graphs.
Mehmet Deveci, Kamer Kaya, Ümit V. Çatalyürek
ICPP2
2013 A Push-Relabel-Based Maximum Cardinality Bipartite Matching Algorithm on GPUs
abstract
We design, develop, and evaluate an atomic- and lock-free GPU implementation of the push-relabel algorithm in the context of finding maximum cardinality matchings in bipartite graphs. The problem has applications on computer science, scientific computing, bioinformatics, and other areas. Although the GPU parallelization of the push-relabel technique has been investigated in the context of flow algorithms, to the best of our knowledge, ours is the first study which focuses on the maximum cardinality matching. We compare the proposed algorithms with serial, multicore, and many core bipartite graph matching implementations from the literature on a large set of real-life problems. Our experiments show that the proposed pushrelabel-based GPU algorithm is faster than the existing parallel and sequential implementations.
Mehmet Deveci, Kamer Kaya, Bora Uçar, Ümit V. Çatalyürek
ICPP2
2013 Shattering and Compressing Networks for Betweenness Centrality
abstract
The betweenness metric has always been intriguing and used in many analyses.Yet, it is one of the most computationally expensive kernels in graph mining.For that reason, making betweenness centrality computations faster is an important and well-studied problem.In this work, we propose the framework, BADIOS, which compresses a network and shatters it into pieces so that the centrality computation can be handled independently for each piece.Although BADIOS is designed and tuned for betweenness centrality, it can easily be adapted for other centrality metrics.Experimental results show that the proposed techniques can be a great arsenal to reduce the centrality computation time for various types and sizes of networks.In particular, it reduces the computation time of a 4.6 million edges graph from more than 5 days to less than 16 hours.
Ümit V. Çatalyürek, Kamer Kaya, Ahmet Erdem Sariyüce, Erik Saule
SDM2
2013 Diversified recommendation on graphs: pitfalls, measures, and algorithms
abstract
Result diversification has gained a lot of attention as a way to answer ambiguous queries and to tackle the redundancy problem in the results. In the last decade, diversification has been applied on or integrated into the process of PageRank- or eigenvector-based methods that run on various graphs, including social networks, collaboration networks in academia, web and product co-purchasing graphs. For these applications, the diversification problem is usually addressed as a bicriteria objective optimization problem of relevance and diversity. However, such an approach is questionable since a query-oblivious diversification algorithm that recommends most of its results without even considering the query may perform the best on these commonly used measures. In this paper, we show the deficiencies of popular evaluation techniques of diversification methods, and investigate multiple relevance and diversity measures to understand whether they have any correlations. Next, we propose a novel measure called expanded relevance which combines both relevance and diversity into a single function in order to measure the coverage of the relevant part of the graph. We also present a new greedy diversification algorithm called BestCoverage, which optimizes the expanded relevance of the result set with (1-1/e)-approximation. With a rigorous experimentation on graphs from various applications, we show that the proposed method is efficient and effective for many use cases.
Onur Küçüktunç, Erik Saule, Kamer Kaya, Ümit V. Çatalyürek
WWW3
2012 Fast Recommendation on Bibliographic Networks
abstract
Graphs and matrices are widely used in algorithms for social network analyses. Since the number of interactions is much less than the possible number of interactions, the graphs and matrices used in the analyses are usually sparse. In this paper, we propose an efficient implementation of a sparse-matrix computation which arises in our publicly available citation recommendation service called the advisor. The recommendation algorithm uses a sparse matrix generated from the citation graph. We observed that the nonzero pattern of this matrix is highly irregular and the computation suffers from high number of cache misses. We propose techniques for storing the matrix in memory efficiently and reducing the number of cache misses. Experimental results show that our techniques are highly efficient on reducing the query processing time which is highly crucial for a web service.
Onur Küçüktunç, Kamer Kaya, Erik Saule, Ümit V. Çatalyürek
ASONAM2
2012 On Shared-Memory Parallelization of a Sparse Matrix Scaling Algorithm
abstract
We discuss efficient shared memory parallelization of sparse matrix computations whose main traits resemble to those of the sparse matrix-vector multiply operation. Such computations are difficult to parallelize because of the relatively small computational granularity characterized by small number of operations per each data access. Our main application is a sparse matrix scaling algorithm which is more memory bound than the sparse matrix vector multiplication operation. We take the application and parallelize it using the standard OpenMP programming principles. Apart from the common race condition avoiding constructs, we do not reorganize the algorithm. Rather, we identify associated performance metrics and describe models to optimize them. By using these models, we implement parallel matrix scaling algorithms for two well-known sparse matrix storage formats. Experimental results show that simple parallelization attempts which leave data/work partitioning to the runtime scheduler can suffer from the overhead of avoiding race conditions especially when the number of threads increases. The proposed algorithms perform better than these algorithms by optimizing the identified performance metrics and reducing the overhead.
Ümit V. Çatalyürek, Kamer Kaya, Bora Uçar
ICPP2
2012 Multithreaded Clustering for Multi-level Hypergraph Partitioning
abstract
Requirements for efficient parallelization of many complex and irregular applications can be cast as a hyper graph partitioning problem. The current-state-of-the art software libraries that provide tool support for the hyper graph partitioning problem are designed and implemented before the game-changing advancements in multi-core computing. Hence, analyzing the structure of those tools for designing multithreaded versions of the algorithms is a crucial tasks. The most successful partitioning tools are based on the multi-level approach. In this approach, a given hyper graph is coarsened to a much smaller one, a partition is obtained on the the smallest hyper graph, and that partition is projected to the original hyper graph while refining it on the intermediate hyper graphs. The coarsening operation corresponds to clustering the vertices of a hyper graph and is the most time consuming task in a multi-level partitioning tool. We present three efficient multithreaded clustering algorithms which are very suited for multi-level partitioners. We compare their performance with that of the ones currently used in today's hyper graph partitioners. We show on a large number of real life hyper graphs that our implementations, integrated into a commonly used partitioning library PaToH, achieve good speedups without reducing the clustering quality.
Ümit V. Çatalyürek, Mehmet Deveci, Kamer Kaya, Bora Uçar
IPDPS3
2011 Design, implementation, and analysis of maximum transversal algorithms
abstract
We report on careful implementations of seven algorithms for solving the problem of finding a maximum transversal of a sparse matrix. We analyze the algorithms and discuss the design choices. To the best of our knowledge, this is the most comprehensive comparison of maximum transversal algorithms based on augmenting paths. Previous papers with the same objective either do not have all the algorithms discussed in this article or they used nonuniform implementations from different researchers. We use a common base to implement all of the algorithms and compare their relative performance on a wide range of graphs and matrices. We systematize, develop, and use several ideas for enhancing performance. One of these ideas improves the performance of one of the existing algorithms in most cases, sometimes significantly. So much so that we use this as the eighth algorithm in comparisons.
Iain S. Duff, Kamer Kaya, Bora Uçar
ACM Trans. Math. Softw.2
2010 Efficient broadcast encryption with user profiles
Murat Ak, Kamer Kaya, Kaan Onarlioglu, Ali Aydin Selçuk
Inf. Sci.2
2009 Optimal subset-difference broadcast encryption with free riders
Murat Ak, Kamer Kaya, Ali Aydin Selçuk
Inf. Sci.2
2007 Threshold cryptography based on Asmuth-Bloom secret sharing
Kamer Kaya, Ali Aydin Selçuk
Inf. Sci.1
2007 Heuristics for scheduling file-sharing tasks on heterogeneous systems with distributed repositories
Kamer Kaya, Bora Uçar, Cevdet Aykanat
J. Parallel Distributed Comput.1
2006 Task assignment in heterogeneous computing systems
Bora Uçar, Cevdet Aykanat, Kamer Kaya, Murat Ikinci
J. Parallel Distributed Comput.3
2006 Iterative-Improvement-Based Heuristics for Adaptive Scheduling of Tasks Sharing Files on Heterogeneous Master-Slave Environments
abstract
The scheduling of independent but file-sharing tasks on heterogeneous master-slave platforms has recently found important applications in grid environments. The scheduling heuristics recently proposed for this problem are all constructive in nature and based on a common greedy criterion which depends on the momentary completion time values of the tasks. We show that this greedy decision criterion has shortcomings in exploiting the file-sharing interaction among tasks since completion time values are inadequate to extract the global view of this interaction. We propose a three-phase scheduling approach which involves initial task assignment, refinement, and execution ordering phases. For the refinement phase, we model the target application as a hypergraph and, with an elegant hypergraph-partitioning-like formulation, we propose using iterative-improvement-based heuristics for refining the task assignments according to two novel objective functions. Unlike the turnaround time, which is the actual schedule cost, the smoothness of proposed objective functions enables the use of iterative-improvement-based heuristics successfully since their effectiveness and efficiency depend on the smoothness of the objective function. Experimental results on a wide range of synthetically generated heterogeneous master-slave frameworks show that the proposed three-phase scheduling approach performs much better than the greedy constructive approach
Kamer Kaya, Cevdet Aykanat
IEEE Trans. Parallel Distributed Syst.1