Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Kubilay Atasu

dblp:11/3460 · DBLP profile ↗
← Back
31ranked-venue papers
13as first author
3since 2021 · last 2024
—ORCID · conflict

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

Systems, architecture and hardware · 24 · 11 first-author · 1 since 2021Artificial intelligence and machine learning · 5 · 2 first-author · 2 since 2021Databases, data management, data science and information retrieval · 4 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 2 · 1 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-authorGraphics, computer vision, multimedia, augmented reality and games · 1 · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Databases, data mining, and information retrieval
2 papers
Recommender systems · 65% Data integration and cleaning · 22% Data mining · 13%
Computer architecture, parallel and distributed computing, and storage systems
8 papers
Parallel and multicore computing · 31% Electronic design automation · 25% Processor architecture and microarchitecture · 19%
Artificial intelligence
1 paper
Graph learning · 87% Trustworthy machine learning · 13%
Interdisciplinary, comprehensive, and emerging computing
1 paper
Computational finance and economics · 100%
Theoretical computer science
2 papers
Algorithms and data structures · 64% Graph algorithms and graph theory · 36%
Network and information security
2 papers
Network security · 59% Security and privacy of machine learning · 41%

Topics — the 30 heaviest of 35, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Machine learning › Graph learning
graph neural network
0.812024
Provably Powerful Graph Neural Networks for Directed Multigraphs · AAAI 2024
Machine learning › Graph learning › graph analytics › graph mining
subgraph detection
0.812024
Provably Powerful Graph Neural Networks for Directed Multigraphs · AAAI 2024
Computational finance and economics › financial fraud detection
anti-money laundering
0.712023
Realistic Synthetic Financial Transactions for Anti-Money Laundering Models · NeurIPS 2023
Computational finance and economics
financial fraud detection
0.712023
Realistic Synthetic Financial Transactions for Anti-Money Laundering Models · NeurIPS 2023
Data integration and cleaning › data generation
synthetic data generation
0.712023
Realistic Synthetic Financial Transactions for Anti-Money Laundering Models · NeurIPS 2023
Parallel and multicore computing
parallel graph algorithms
0.412020
Many-Core Clique Enumeration with Fast Set Intersections · Proc. VLDB Endow. 2020
Graph algorithms and graph theory › graph algorithms › subgraph enumeration
clique enumeration
0.412020
Many-Core Clique Enumeration with Fast Set Intersections · Proc. VLDB Endow. 2020
Data mining › clustering
co-clustering
0.412019
Addressing Interpretability and Cold-Start in Matrix Factorization for Recommender Systems · IEEE Trans. Knowl. Data Eng. 2019
Recommender systems
cold-start recommendation
0.412019
Addressing Interpretability and Cold-Start in Matrix Factorization for Recommender Systems · IEEE Trans. Knowl. Data Eng. 2019
Recommender systems › collaborative filtering › hybrid recommendation
content-based collaborative filtering
0.412019
Addressing Interpretability and Cold-Start in Matrix Factorization for Recommender Systems · IEEE Trans. Knowl. Data Eng. 2019
Recommender systems
explainable recommendation
0.412019
Addressing Interpretability and Cold-Start in Matrix Factorization for Recommender Systems · IEEE Trans. Knowl. Data Eng. 2019
Recommender systems › collaborative filtering
implicit feedback
0.412019
Addressing Interpretability and Cold-Start in Matrix Factorization for Recommender Systems · IEEE Trans. Knowl. Data Eng. 2019
Recommender systems › collaborative filtering
matrix factorization
0.412019
Addressing Interpretability and Cold-Start in Matrix Factorization for Recommender Systems · IEEE Trans. Knowl. Data Eng. 2019
Parallel and multicore computing
data-parallel programming
0.412019
Linear-Complexity Data-Parallel Earth Mover's Distance Approximations · ICML 2019
GPUs and heterogeneous computing
GPU computing
0.412019
Linear-Complexity Data-Parallel Earth Mover's Distance Approximations · ICML 2019
Algorithms and data structures › similarity search
earth mover's distance
0.412019
Linear-Complexity Data-Parallel Earth Mover's Distance Approximations · ICML 2019
Algorithms and data structures
similarity search
0.412019
Linear-Complexity Data-Parallel Earth Mover's Distance Approximations · ICML 2019
Processor architecture and microarchitecture › instruction set architecture
instruction set extension
0.242008
CHIPS: Custom Hardware Instruction Processor Synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2008
Exact and approximate algorithms for the extension of embedded processor instruction sets · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006
Introduction of local memory elements in instruction set extensions · DAC 2004
Electronic design automation
high-level synthesis
0.122008
CHIPS: Custom Hardware Instruction Processor Synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2008
Exact and approximate algorithms for the extension of embedded processor instruction sets · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006
Network security › intrusion detection and prevention
intrusion detection
0.112012
Designing a Programmable Wire-Speed Regular-Expression Matching Accelerator · MICRO 2012
Network security › intrusion detection and prevention › intrusion detection
pattern matching
0.112012
Designing a Programmable Wire-Speed Regular-Expression Matching Accelerator · MICRO 2012
Electronic design automation
hardware verification and test
0.112012
Proving correctness of regular expression accelerators · DAC 2012
Hardware accelerators and domain-specific architectures
network accelerator
0.112012
Designing a Programmable Wire-Speed Regular-Expression Matching Accelerator · MICRO 2012
Electronic design automation › hardware verification and test › pattern matching
regular expression matching
0.112012
Designing a Programmable Wire-Speed Regular-Expression Matching Accelerator · MICRO 2012
Hardware accelerators and domain-specific architectures › pattern matching accelerator
regular expression matching accelerator
0.112012
Proving correctness of regular expression accelerators · DAC 2012
Electronic design automation › hardware verification and test › formal verification
sequential equivalence checking
0.112012
Proving correctness of regular expression accelerators · DAC 2012
Processor architecture and microarchitecture › instruction set architecture › instruction set extension
application-specific instruction set extension
0.122006
Exact and approximate algorithms for the extension of embedded processor instruction sets · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006
Automatic application-specific instruction-set extensions under microarchitectural constraints · DAC 2003
Processor architecture and microarchitecture › instruction set architecture › instruction set extension
custom instruction
0.112008
CHIPS: Custom Hardware Instruction Processor Synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2008
Electronic design automation › hardware/software co-design
custom instruction identification
0.112008
CHIPS: Custom Hardware Instruction Processor Synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2008
Processor architecture and microarchitecture › instruction set architecture › instruction set extension
custom instruction generation
0.012004
Introduction of local memory elements in instruction set extensions · DAC 2004

Methods — techniques the papers use, named apart from their topics

machine learning · 2.0agent-based simulation · 2.0word mover's distance · 0.8sinkhorn algorithm · 0.8reverse message passing · 0.8port numbering · 0.8message passing · 0.8ego IDs · 0.8set-intersection · 0.4set intersection · 0.4co-clustering · 0.4GPU acceleration · 0.4rule cache · 0.3RISC-style special-purpose computing · 0.3netlist modeling · 0.1integer linear programming · 0.1if-conversion · 0.1heuristic algorithm · 0.1
YearPublicationVenuePosition
2024 Provably Powerful Graph Neural Networks for Directed Multigraphs
abstract
This paper analyses a set of simple adaptations that transform standard message-passing Graph Neural Networks (GNN) into provably powerful directed multigraph neural networks. The adaptations include multigraph port numbering, ego IDs, and reverse message passing. We prove that the combination of these theoretically enables the detection of any directed subgraph pattern. To validate the effectiveness of our proposed adaptations in practice, we conduct experiments on synthetic subgraph detection tasks, which demonstrate outstanding performance with almost perfect results. Moreover, we apply our proposed adaptations to two financial crime analysis tasks. We observe dramatic improvements in detecting money laundering transactions, improving the minority-class F1 score of a standard message-passing GNN by up to 30%, and closely matching or outperforming tree-based and GNN baselines. Similarly impressive results are observed on a real-world phishing detection dataset, boosting three standard GNNs’ F1 scores by around 15% and outperforming all baselines. An extended version with appendices can be found on arXiv: https://arxiv.org/abs/2306.11586.
Beni Egressy, Luc von Niederhäusern, Jovan Blanusa, Erik R. Altman, Roger Wattenhofer, Kubilay Atasu
AAAI6
2023 Realistic Synthetic Financial Transactions for Anti-Money Laundering Models
abstract
With the widespread digitization of finance and the increasing popularity of cryptocurrencies, the sophistication of fraud schemes devised by cybercriminals is growing. Money laundering -- the movement of illicit funds to conceal their origins -- can cross bank and national boundaries, producing complex transaction patterns. The UN estimates 2-5\% of global GDP or \$0.8 - \$2.0 trillion dollars are laundered globally each year. Unfortunately, real data to train machine learning models to detect laundering is generally not available, and previous synthetic data generators have had significant shortcomings. A realistic, standardized, publicly-available benchmark is needed for comparing models and for the advancement of the area.To this end, this paper contributes a synthetic financial transaction dataset generator and a set of synthetically generated AML (Anti-Money Laundering) datasets. We have calibrated this agent-based generator to match real transactions as closely as possible and made the datasets public. We describe the generator in detail and demonstrate how the datasets generated can help compare different machine learning models in terms of their AML abilities. In a key way, using synthetic data in these comparisons can be even better than using real data: the ground truth labels are complete, whilst many laundering transactions in real data are never detected.
Erik R. Altman, Jovan Blanusa, Luc von Niederhäusern, Beni Egressy, Andreea Anghel, Kubilay Atasu
NeurIPS6
2022 Scalable Fine-Grained Parallel Cycle Enumeration Algorithms
abstract
Enumerating simple cycles has important applications in computational biology, network science, and financial crime analysis. In this work, we focus on parallelising the state-of-the-art simple cycle enumeration algorithms by Johnson and Read-Tarjan along with their applications to temporal graphs. To our knowledge, we are the first ones to parallelise these two algorithms in a fine-grained manner. We are also the first to demonstrate experimentally a linear performance scaling. Such a scaling is made possible by our decomposition of long sequential searches into fine-grained tasks, which are then dynamically scheduled across CPU cores, enabling an optimal load balancing. Furthermore, we show that coarse-grained parallel versions of the Johnson and the Read-Tarjan algorithms that exploit edge- or vertex-level parallelism are not scalable. On a cluster of four multi-core CPUs with 256 physical cores, our fine-grained parallel algorithms are, on average, an order of magnitude faster than their coarse-grained parallel counterparts. The performance gap between the fine-grained and the coarse-grained parallel algorithms widens as we use more CPU cores. When using all 256 CPU cores, our parallel algorithms enumerate temporal cycles, on average, 260x faster than the serial algorithm of Kumar and Calders.
Jovan Blanusa, Paolo Ienne, Kubilay Atasu
SPAA3
2020 Tera-scale coordinate descent on GPUs
Thomas P. Parnell, Celestine Dünner, Kubilay Atasu, Manolis Sifalakis, Haralampos Pozidis
Future Gener. Comput. Syst.3
2020 Many-Core Clique Enumeration with Fast Set Intersections
Jovan Blanusa, Radu Stoica, Paolo Ienne, Kubilay Atasu
Proc. VLDB Endow.4
2019 Linear-Complexity Data-Parallel Earth Mover's Distance Approximations
abstract
The Earth Mover’s Distance (EMD) is a state-of-the art metric for comparing discrete probability distributions, but its high distinguishability comes at a high cost in computational complexity. Even though linear-complexity approximation algorithms have been proposed to improve its scalability, these algorithms are either limited to vector spaces with only a few dimensions or they become ineffective when the degree of overlap between the probability distributions is high. We propose novel approximation algorithms that overcome both of these limitations, yet still achieve linear time complexity. All our algorithms are data parallel, and therefore, we can take advantage of massively parallel computing engines, such as Graphics Processing Units (GPUs). On the popular text-based 20 Newsgroups dataset, the new algorithms are four orders of magnitude faster than a multi-threaded CPU implementation of Word Mover’s Distance and match its search accuracy. On MNIST images, the new algorithms are four orders of magnitude faster than Cuturi’s GPU implementation of the Sinkhorn’s algorithm while offering a slightly higher search accuracy.
Kubilay Atasu, Thomas Mittelholzer
ICML1
2019 Addressing Interpretability and Cold-Start in Matrix Factorization for Recommender Systems
abstract
We consider the problem of generating interpretable recommendations by identifying overlapping co-clusters of clients and products, based only on positive or implicit feedback. Our approach is applicable on very large datasets because it exhibits almost linear complexity in the input examples and the number of co-clusters. We show, both on real industrial data and on publicly available datasets, that the recommendation accuracy of our algorithm is competitive to that of state-of-the-art matrix factorization techniques. In addition, our technique has the advantage of offering recommendations that are textually and visually interpretable. Our formulation can also address cold-start problems by gracefully meshing collaborative and content-based reasoning. Finally, we present efficient Graphical Processing Unit (GPU) implementations and demonstrate a speedup of more than 270 times over our baseline CPU implementation on a cluster of 16 GPUs.
Michail Vlachos, Celestine Dünner, Reinhard Heckel, Vassilios G. Vassiliadis, Thomas P. Parnell, Kubilay Atasu
IEEE Trans. Knowl. Data Eng.6
2018 A hardware compilation framework for text analytics queries
Raphael Polig, Kubilay Atasu, Heiner Giefers, Christoph Hagleitner, Laura Chiticariu, Frederick Reiss 0001, Huaiyu Zhu 0001, H. Peter Hofstee
J. Parallel Distributed Comput.2
2017 Linear-complexity relaxed word Mover's distance with GPU acceleration
abstract
The amount of unstructured text-based data is growing every day. Querying, clustering, and classifying this big data requires similarity computations across large sets of documents. Whereas low-complexity similarity metrics are available, attention has been shifting towards more complex methods that achieve a higher accuracy. In particular, the Word Mover's Distance (WMD) method proposed by Kusner et al. is a promising new approach, but its time complexity grows cubically with the number of unique words in the documents. The Relaxed Word Mover's Distance (RWMD) method, again proposed by Kusner et al., reduces the time complexity from qubic to quadratic and results in a limited loss in accuracy compared with WMD. Our work contributes a low-complexity implementation of the RWMD that reduces the average time complexity to linear when operating on large sets of documents. Our linear-complexity RWMD implementation, henceforth referred to as LC-RWMD, maps well onto GPUs and can be efficiently distributed across a cluster of GPUs. Our experiments on real-life datasets demonstrate 1) a performance improvement of two orders of magnitude with respect to our GPU-based distributed implementation of the quadratic RWMD, and 2) a performance improvement of three to four orders of magnitude with respect to our distributed WMD implementation that uses GPU-based RWMD for pruning.
Kubilay Atasu, Thomas P. Parnell, Celestine Dünner, Manolis Sifalakis, Haralampos Pozidis, Vasileios Vasileiadis, Michail Vlachos, Cesar Berrospi, Abdel Labbi
IEEE BigData1
2017 Understanding and optimizing the performance of distributed machine learning applications on apache spark
abstract
In this paper we explore the performance limits of Apache Spark for machine learning applications. We begin by analyzing the characteristics of a state-of-the-art distributed machine learning algorithm implemented in Spark and compare it to an equivalent reference implementation using the high performance computing framework MPI. We identify critical bottlenecks of the Spark framework and carefully study their implications on the performance of the algorithm. In order to improve Spark performance we then propose a number of practical techniques to alleviate some of its overheads. However, optimizing computational efficiency and framework related overheads is not the only key to performance — we demonstrate that in order to get the best performance out of any implementation it is necessary to carefully tune the algorithm to the respective trade-off between computation time and communication latency. The optimal trade-off depends on both the properties of the distributed algorithm as well as infrastructure and framework-related characteristics. Finally, we apply these technical and algorithmic optimizations to three different distributed linear machine learning algorithms that have been implemented in Spark. We present results using five large datasets and demonstrate that by using the proposed optimizations, we can achieve a reduction in the performance difference between Spark and MPI from 20x to 2x.
Celestine Dünner, Thomas P. Parnell, Kubilay Atasu, Manolis Sifalakis, Haralampos Pozidis
IEEE BigData3
2017 High-Performance Recommender System Training Using Co-Clustering on CPU/GPU Clusters
abstract
Recommender systems are becoming the crystal ball of the Internet because they can anticipate what the users may want, even before the users know they want it. However, the machine-learning algorithms typically involved in the training of such systems can be computationally expensive, and often may require several days for retraining. Here, we present a distributed approach for load-balancing the training of a recommender system based on state-of-art non-negative matrix factorization principles. The approach can exploit the presence of a cluster of mixed CPUs and GPUs, and results in a 466-fold performance improvement compared with the serial CPU implementation, and a 15-fold performance improvement compared with the best previously reported results for the popular Netflix data set.
Kubilay Atasu, Thomas P. Parnell, Celestine Dünner, Michail Vlachos, Haralampos Pozidis
ICPP1
2016 Annotation-based finite-state transducers on reconfigurable devices
abstract
With the ever growing amount of unstructured data, high-speed content analysis becomes ever more important. Enabling efficient search functions to help locate specific and relevant information hidden in this big data is a crucial task of today's enterprise systems, and can lead to valuable insights. A key component of content analysis systems are text parsers, which transform unstructured text data into structured information. Cascaded grammars offer a popular and powerful representation of text parsers by enabling the definition of more complex patterns in terms of simpler ones in a hierarchical fashion. This work presents a compilation framework to generate an optimized FPGA pipeline from a cascaded grammar description. We also describe the system integration and the way FPGA-based accelerators can be used as part of larger analysis tasks within Unstructured Information Management Application (UIMA) pipelines. We compare the performance of the hardware-accelerated system and a commercial software implementation using real-life UIMA pipelines from the healthcare domain. We show that the FPGA-accelerated system processes the parsing stage of a UIMA pipeline up to 31 times faster than the software implementation running on a high-end server, which results in an acceleration of up to 5 times for the complete pipeline.
Raphael Polig, Kubilay Atasu, Christoph Hagleitner, Theresa Xu, Akihiro Nakayama
FPL2
2015 Leftmost longest regular expression matching in reconfigurable logic
abstract
Regular expression (regex) matching is an essential part of text analytics and network intrusion detection systems. The leftmost longest regex matching feature enables finding a leftmost derivation of an input text and helps resolve ambiguities that can arise in natural-language parsing. We show that leftmost longest regex matching can be efficiently performed in a dataflow pipeline by combining a recently proposed regex-matching architecture with simple last-in first-out (LIFO) buffers and streaming filter units, without creating significant back-pressure or using costly sorting operations. The techniques we propose can be used to compute overlapping and non-overlapping leftmost longest and rightmost longest regex matches. In addition, we show that the latency of the LIFO buffers can be hidden by overlapping the processing of subsequent input streams, without replicating the buffer space. Experiments on an Altera Stratix IV FPGA show a 200-fold improvement of the processing rates compared with a multithreaded software implementation.
Kubilay Atasu
FPT1
2014 Resource-efficient regular expression matching architecture for text analytics
abstract
Text analytics systems, such as IBM's SystemT software, rely on regular expressions (regexs) and dictionaries for transforming unstructured data into a structured format. Unlike network intrusion detection systems, text analytics systems compute and report precisely where the specific and sensitive information starts and ends in a text document. Therefore, advanced regex matching functions, such as start-offset reporting, capturing groups, and leftmost match computation are heavily used in text analytics systems. We present a novel regex matching architecture that supports such functions in a resource-efficient way. The resource efficiency is achieved by 1) eliminating state replication, 2) avoiding expensive offset comparison operations in leftmost match computation, and 3) minimizing the number of offset registers. Experiments on regex sets from text analytics and network intrusion detection domains, using an Altera Stratix IV FPGA, show that the proposed architecture achieves a more than threefold reduction of the logic resources used and a more than 1.25-fold increase of the clock frequency with respect to a recently proposed architecture that supports identical features.
Kubilay Atasu
ASAP1
2014 Compiling text analytics queries to FPGAs
abstract
Extracting information from unstructured text data is a compute-intensive task. The performance of general-purpose processors cannot keep up with the rapid growth of textual data. Therefore we discuss the use of FPGAs to perform large scale text analytics. We present a framework consisting of a compiler and an operator library capable of generating a Verilog processing pipeline from a text analytics query specified in the annotation query language AQL. The operator library comprises a set of configurable modules capable of performing relational and extraction tasks which can be assembled by the compiler to represent a full annotation operator graph. Leveraging the nature of text processing we show that most tasks can be performed in an efficient streaming fashion. We evaluate the performance, power consumption and hardware utilization of our approach for a set of different queries compiled to a Stratix IV FPGA. Measurements show an up to 79 times improvement of document-throughput over a 64 threaded software implementation on a POWER7 server. Moreover the accelerated system's energy efficiency is up to 85 times better.
Raphael Polig, Kubilay Atasu, Heiner Giefers, Laura Chiticariu
FPL2
2014 Hardware-accelerated text analytics
abstract
Presents a collection of slides covering the following topics: SystemT text analytics software; hardware-accelerated SystemT; Big text Data; and field programmable gate array.
Raphael Polig, Kubilay Atasu, Christoph Hagleitner, Laura Chiticariu, Frederick Reiss 0001, Huaiyu Zhu 0001, H. Peter Hofstee
Hot Chips Symposium2
2013 Hardware-accelerated regular expression matching for high-throughput text analytics
abstract
Advanced text analytics systems combine regular expression (regex) matching, dictionary processing, and relational algebra for efficient information extraction from text documents. Such systems require support for advanced regex matching features, such as start offset reporting and capturing groups. However, existing regex matching architectures based on reconfigurable nondeterministic state machines and programmable deterministic state machines are not designed to support such features. We describe a novel architecture that supports such advanced features using a network of state machines. We also present a compiler that maps the regexs onto such networks that can be efficiently realized on reconfigurable logic. For each regex, our compiler produces a state machine description, statically computes the number of state machines needed, and produces an optimized interconnection network. Experiments on an Altera Stratix IV FPGA, using regexs from a real life text analytics benchmark, show that a throughput rate of 16 Gb/s can be reached.
Kubilay Atasu, Raphael Polig, Christoph Hagleitner, Frederick Reiss 0001
FPL1
2013 Token-based dictionary pattern matching for text analytics
abstract
When performing queries for text analytics on unstructured text data, a large amount of the processing time is spent on regular expressions and dictionary matching. In this paper we present a compilable architecture for token-bound pattern matching with support for token pattern sequence detection. The architecture presented is capable of detecting several hundreds of dictionaries, each containing thousands of elements at high throughput. A programmable state machine is used as pattern detection engine to achieve deterministic performance while maintaining low storage requirements. For the detection of token sequences, a dedicated circuitry is compiled based on a non-deterministic automaton. A cascaded result lookup ensures efficient storage while allowing multi-token elements to be detected and multiple dictionary hits to be reported. We implemented on an Altera Stratix IV GX530, and were able to process up to 16 documents in parallel at a peak throughput rate of 9.7 Gb/s.
Raphael Polig, Kubilay Atasu, Christoph Hagleitner
FPL2
2013 Hardware-Accelerated Regular Expression Matching with Overlap Handling on IBM PowerEN Processor
abstract
Programmable hardware accelerators for regular expression (regex) matching are evolving into increasingly complex stream processors, which involve multiple state machines that operate in parallel, and specialized post-processors that can process instructions dispatched by the state machines. To improve the speed and the storage-efficiency, complex regexs are decomposed into simpler subexpressions, where each subexpression can fire one or more instructions. Although the impact of regex decompositions on the storage efficiency is well-known, little has been done to address the correctness and completeness. We show that regex decompositions can result in false positives if overlaps between subexpressions are not taken into account. We describe formal methods to recognize various types of subexpression overlaps that can arise in regex decompositions. We also describe efficient post-processing techniques to eliminate the associated false positives. To enable efficient mapping of the decomposed regexs to the postprocessors, we propose integer programming based register allocation methods. Our methods pack narrow variables to reduce the register and instruction usage, and take advantage of multi-register reset instructions to reduce the number of instructions that must be executed in parallel. Experiments on regex sets obtained from open-source and proprietary network intrusion detection systems demonstrate orders of magnitude improvement in the storage efficiency over state-of-the-art.
Kubilay Atasu, Florian Dörfler, Jan van Lunteren, Christoph Hagleitner
IPDPS1
2013 Exploring the design space of programmable regular expression matching accelerators
Kubilay Atasu, Raphael Polig, Jonathan Rohrer, Christoph Hagleitner
J. Syst. Archit.1
2012 Proving correctness of regular expression accelerators
abstract
A popular technique in regular expression matching accelerators is to decompose a regular expression and communicate through instructions executed by a post-processor. We present a complete verification method that leverages the success of sequential equivalence checking (SEC) to proving correctness of the technique. The original regular expression and the system of decomposed regular expressions are modeled as net-lists and their equivalence is proved using SEC. SEC proves correct handling of 840 complex patterns from the Emerging Threats open rule set in 50 hours, eliminating altogether informal simulation and testing.
Mitra Purandare, Kubilay Atasu, Christoph Hagleitner
DAC2
2012 Designing a Programmable Wire-Speed Regular-Expression Matching Accelerator
abstract
A growing number of applications rely on fast pattern matching to scan data in real-time for security and analytics purposes. The RegX accelerator in the IBM Power Edge of Network (PowerEN) processor supports these applications using a combination of fast programmable state machines and simple processing units to scan data streams against thousands of regular-expression patterns at state-of-the-art Ethernet link speeds. RegX employs a special rule cache and includes several new micro-architectural features that enable various instruction dispatch and execution options for the processing units. The architecture applies RISC philosophy to special-purpose computing: hardware provides fast, simple primitives, typically performed in a single cycle, which are exploited by an intelligent compiler and system software for high performance. This approach provides the flexibility required to achieve good performance across a wide range of workloads. As implemented in the PowerEN processor, the accelerator achieves a theoretical peak scan rate of 73.6 Gbit/s, and a measured scan rate of about 15 to 40 Gbit/s for typical intrusion detection workloads.
Jan van Lunteren, Christoph Hagleitner, Timothy Heil, Giora Biran, Uzi Shvadron, Kubilay Atasu
MICRO6
2012 FISH: Fast Instruction SyntHesis for Custom Processors
abstract
This paper presents Fast Instruction SyntHesis (FISH), a system that supports automatic generation of custom instruction processors from high-level application descriptions to enable fast design space exploration. FISH is based on novel methods for automatically adapting the instruction set to match an application in a high-level language such as C or C++. FISH identifies custom instruction candidates using two approaches: 1) by enumerating maximal convex subgraphs of application data flow graphs and 2) by integer linear programming (ILP). The experiments, involving ten multimedia and cryptography benchmarks, show that our contributed algorithms are the fastest among the state-of-the-art techniques. In most cases, enumeration takes only milliseconds to execute. The longest enumeration run-time observed is less than six seconds. ILP is usually slower than enumeration, but provides us with a complementary solution technique. Both enumeration and ILP allow the use of multiple different merit functions in the evaluation of data-flow subgraphs. The experiments demonstrate that, using only modest additional hardware resources, up to 30-fold performance improvement can be obtained with respect to a single-issue base processor.
Kubilay Atasu, Wayne Luk, Oskar Mencer, Can C. Özturan, Günhan Dündar
IEEE Trans. Very Large Scale Integr. Syst.1
2012 Complexity of Computing Convex Subgraphs in Custom Instruction Synthesis
abstract
Synthesis of custom instruction processors from high-level application descriptions involves automated evaluation of data-flow subgraphs as custom instruction candidates. A subgraphSof a graphD, is convex if no two vertices ofSare connected by a path inDthat is not also inS. An algorithm for enumerating all convex subgraphs of a directed acyclic graph (DAG) under input, output, and forbidden vertex constraints was given by Pozzi, Atasu, and Ienne. We show that this algorithm makes no more thanO(|V(D)|Nin+Nout+1) recursive calls, where |V(D)| is the number of vertices inD, andNinandNoutare input and output constraints, respectively. Therefore, whenNinandNoutare constants, the algorithm is of polynomial complexity. Furthermore, a convex subgraphSis a maximal convex subgraph if it is not a proper subgraph of some other convex subgraph, assuming that both are valid under forbidden vertex constraints. The largest maximal convex subgraph is called the maximum convex subgraph. There exist popular algorithms that enumerate maximal convex subgraphs, which all have exponential worst-case time complexity. This work shows that although no polynomial-time maximal convex subgraph enumeration algorithm can exist, the related maximum convex subgraph problem can be solved in polynomial time.
Joseph Reddington, Kubilay Atasu
IEEE Trans. Very Large Scale Integr. Syst.2
2008 Fast custom instruction identification by convex subgraph enumeration
abstract
Automatic generation of custom instruction processors from high-level application descriptions enables fast design space exploration, while offering very favorable performance and silicon area combinations. This work introduces a novel method for adapting the instruction set to match an application captured in a high-level language. A simplified model is used to find the optimal instructions via enumeration of maximal convex subgraphs of application data flow graphs (DFGs). Our experiments involving a set of multimedia and cryptography benchmarks show that an order of magnitude performance improvement can be achieved using only a limited amount of hardware resources. In most cases, our algorithm takes less than a second to execute.
Kubilay Atasu, Oskar Mencer, Wayne Luk, Can C. Özturan, Günhan Dündar
ASAP1
2008 CHIPS: Custom Hardware Instruction Processor Synthesis
abstract
This paper describes an integer-linear-programming (ILP)-based system called custom hardware instruction processor synthesis (CHIPS) that identifies custom instructions for critical code segments, given the available data bandwidth and transfer latencies between custom logic and a baseline processor with architecturally visible state registers. Our approach enables designers to optionally constrain the number of input and output operands for custom instructions. We describe a design flow to identify promising area, performance, and code-size tradeoffs. We study the effect of input/output constraints, register-file ports, and compiler transformations such as if-conversion. Our experiments show that, in most cases, the solutions with the highest performance are identified when the input/output constraints are removed. However, input/output constraints help our algorithms identify frequently used code segments, reducing the overall area overhead. Results for 11 benchmarks covering cryptography and multimedia are shown, with speed-ups between 1.7 and 6.6 times, code-size reductions between 6% and 72%, and area costs ranging between 12 and 256 adders for maximum speed-up. Our ILP-based approach scales well: benchmarks with basic blocks consisting of more than 1000 instructions can be optimally solved, most of the time within a few seconds.
Kubilay Atasu, Can C. Özturan, Günhan Dündar, Oskar Mencer, Wayne Luk
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
2007 Optimizing instruction-set extensible processors under data bandwidth constraints
abstract
The authors present a methodology for generating optimized architectures for data bandwidth constrained extensible processors. The authors describe a scalable integer linear programming (ILP) formulation, that extracts the most profitable set of instruction-set extensions given the available data bandwidth and transfer latency. Unlike previous approaches, the authors differentiate between number of inputs and outputs for instruction-set extensions and the number of register file ports. This differentiation makes the approach applicable to architectures that include architecturally visible state registers and dedicated data transfer channels. The authors support a comprehensive design space exploration to characterize the area/performance trade-offs for various applications. The authors evaluate our approach using actual ASIC implementations to demonstrate that our automatically customized processors meet timing within the target silicon area. For an embedded processor with only two register read ports and one register write port, the authors obtain up to 4.3times speed-up with extensions incurring only a 35% area overhead
Kubilay Atasu, Robert G. Dimond, Oskar Mencer, Wayne Luk, Can C. Özturan, Günhan Dündar
DATE1
2006 Towards optimal custom instruction processors
Wayne Luk, Kubilay Atasu, Robert G. Dimond, Oskar Mencer
Hot Chips Symposium2
2006 Exact and approximate algorithms for the extension of embedded processor instruction sets
abstract
In embedded computing, cost, power, and performance constraints call for the design of specialized processors, rather than for the use of the existing off-the-shelf solutions. While the design of these application-specific CPUs could be tackled from scratch, a cheaper and more effective option is that of extending the existing processors and toolchains. Extensibility is indeed a feature now offered in real designs, e.g., by processors such as Tensilica Xtensa [T. R. Halfhill, Microprocess Rep., 2003], ARC ARCtangent [T. R. Halfhill, Microprocess Rep., 2000], STMicroelectronics ST200 [P. Faraboschi, G. Brown, J. A. Fisher, G. Desoli, and F. Homewood, Proc. 27th Annu. Int. Symp. Computer Architecture, 2000, p. 203], and MIPS CorExtend [T. R. Halfhill, Microprocess Rep., 2003]. While all these processors provide development environments with simulation capabilities for evaluating efficiently hand-crafted solutions, the tools to identify automatically the best processor configuration for a given application are less common. In particular, solutions to choose specialized instruction-set extensions (ISEs) have been investigated in the past years but are still seldom part of commercial toolchains. This paper provides a formal methodology and a set of algorithms that help address the problem. It proposes exact algorithms to derive optimal ISEs; exact identification of a single ISE is applicable to basic blocks of up to 1500 assembler-like instructions. This paper also introduces approximate methods that can process basic blocks of larger size. Results show that the described algorithms find solutions close to those that a designer would obtain by a detailed study of the application code. Both heuristic and exact algorithms find ISEs able to speed up unextended processors up to 5.0x. State-of-the-art comparisons show that the presented algorithms outperform existing ones by up to 2.6x
Laura Pozzi 0001, Kubilay Atasu, Paolo Ienne
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.2
2004 Introduction of local memory elements in instruction set extensions
abstract
Automatic generation of Instruction Set Extensions (ISEs), to be executed on a custom processing unit or a coprocessor is an important step towards processor customization. A typical goal of a manual designer is to combine a large number of atomic instructions into an ISE satisfying microarchitectural constraints. However, memory operations pose a challenge for previous ISE approaches by limiting the size of the resulting instruction. In this paper, we introduce memory elements into custom units which result in ISEs closer to those sought after by the designers. We consider two kinds of memory elements for mapping to the specialized hardware: small hardware tables and architecturally-visible state registers. We devised a genetic algorithm to specifically exploit opportunities of introducing memory elements during ISE generation. Finally, we demonstrate the effectiveness of our approach by a detailed study of the variation in performance, area and energy in the presence of the generated ISEs, on a number of MediaBench, EEMBC and cryptographic applications. With the introduction of memory, the average speedup varied from 2.7X to 5X depending on the architectural configuration with a nominal area overhead. Moreover, we obtained an average energy reduction of 26% with respect to a 32-KB cache.
Partha Biswas, Vinay Choudhary, Kubilay Atasu, Laura Pozzi 0001, Paolo Ienne, Nikil Dutt
DAC3
2003 Automatic application-specific instruction-set extensions under microarchitectural constraints
abstract
Many commercial processors now offer the possibility of extending their instruction set for a specific application---that is, to introduce customised functional units. There is a need to develop algorithms that decide automatically, from high-level application code, which operations are to be carried out in the customised extensions. A few algorithms exist but are severely limited in the type of operation clusters they can choose and hence reduce significantly the effectiveness of specialisation. In this paper we introduce a more general algorithm which selects maximal-speedup convex subgraphs of the application dataflow graph under fundamental microarchitectural constraints, and which improves significantly on the state of the art.
Kubilay Atasu, Laura Pozzi 0001, Paolo Ienne
DAC1