English
Related papers

Related papers: Automated Profile-Guided Replacement of Data Struc…

200 papers

Optimizing compilers are mainly equipped to optimize control flow. The optimization of data structures is left to the programmer and it is the programmer's responsibility to design the data structures to suit the target hardware. Very…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-03-15 K. F. D. Rietveld , H. A. G. Wijshoff

With the more and more growing demand for semantic Web services over large databases, an efficient evaluation of Datalog queries is arousing a renewed interest among researchers and industry experts. In this scenario, to reduce memory…

Artificial Intelligence · Computer Science 2020-02-19 Alessio Fiorentino , Nicola Leone , Marco Manna , Simona Perri , Jessica Zangari

Java is the "go-to" programming language choice for developing scalable enterprise cloud applications. In such systems, even a few percent CPU time savings can offer a significant competitive advantage and cost saving. Although performance…

Performance · Computer Science 2021-04-09 Bolun Li , Pengfei Su , Milind Chabbi , Shuyin Jiao , Xu Liu

The aggressive application of scalar replacement to array references substantially reduces the number of memory operations at the expense of a possibly very large number of registers. In this paper we describe a register allocation…

Programming Languages · Computer Science 2011-11-09 Nastaran Baradaran , Pedro C. Diniz

Many optimization problems can be naturally represented as (hyper) graphs, where vertices correspond to variables and edges to tasks, whose cost depends on the values of the adjacent variables. Capitalizing on the structure of the graph,…

Logic in Computer Science · Computer Science 2015-04-13 Nicklas Hoch , Ugo Montanari , Matteo Sammartino

Recent years have seen deep neural networks (DNNs) becoming wider and deeper to achieve better performance in many applications of AI. Such DNNs however require huge amounts of memory to store weights and intermediate results (e.g.,…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-04-27 Taro Sekiyama , Takashi Imamichi , Haruki Imai , Rudy Raymond

Profiling techniques are used extensively at different parts of the computing stack to achieve many goals. One major goal is to make a piece of software execute more efficiently on a specific hardware platform, where efficiency spans…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-11-07 Chris Quackenbush , Mohamed Zahran

Design patterns are elegant and well-tested solutions to recurrent software development problems. They are the result of software developers dealing with problems that frequently occur, solving them in the same or a slightly adapted way. A…

Software Engineering · Computer Science 2019-03-25 Hannes Thaller , Lukas Linsbauer , Alexander Egyed

We introduce a framework for automatically choosing data structures to support efficient computation of analytical workloads. Our contributions are twofold. First, we introduce a novel low-level intermediate language that can express the…

Databases · Computer Science 2021-12-28 Amir Shaikhha , Marios Kelepeshis , Mahdi Ghorbani

Memory profiling captures programs' dynamic memory behavior, assisting programmers in debugging, tuning, and enabling advanced compiler optimizations like speculation-based automatic parallelization. As each use case demands its unique…

Performance · Computer Science 2023-11-07 Ziyang Xu , Yebin Chon , Yian Su , Zujun Tan , Sotiris Apostolakis , Simone Campanoni , David I. August

In modern distributed systems, efficient resource allocation is a vital aspect to maintain scalability, reduce operational costs, and ensure fast execution even across heterogeneous workloads. Predictive models for resource usage are…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-04-21 Jonathan Bader , Edgar Blumenthal , Marten Eckardt , Justus Krebs , Joel Witzke , Xemena Wysokinska , Haci Ismail Aslan , Odej Kao

Performance analysis has always been an afterthought during the application development process, focusing on application correctness first. The learning curve of the existing static and dynamic analysis tools are steep, which requires…

Machine Learning · Computer Science 2021-04-23 Nathan Pinnow , Tarek Ramadan , Tanzima Z. Islam , Chase Phelps , Jayaraman J. Thiagarajan

Modern real-time systems require accurate characterization of task timing behavior to ensure predictable performance, particularly on complex hardware architectures. Existing methods, such as worst-case execution time analysis, often fail…

Systems and Control · Electrical Eng. & Systems 2026-04-03 Georgiy A. Bondar , Abigail Eisenklam , Yifan Cai , Robert Gifford , Tushar Sial , Linh Thi Xuan Phan , Abhishek Halder

While machine learning models are typically trained to solve prediction problems, we might often want to use them for optimization problems. For example, given a dataset of proteins and their corresponding fluorescence levels, we might want…

Machine Learning · Computer Science 2024-10-18 Jakub Grudzien Kuba , Masatoshi Uehara , Pieter Abbeel , Sergey Levine

There are billions of lines of sequential code inside nowadays' software which do not benefit from the parallelism available in modern multicore architectures. Automatically parallelizing sequential code, to promote an efficient use of the…

Programming Languages · Computer Science 2016-04-13 Alcides Fonseca , Bruno Cabral , João Rafael , Ivo Correia

Many high end and next generation computing systems to incorporated alternative memory technologies to meet performance goals. Since these technologies present distinct advantages and tradeoffs compared to conventional DDR* SDRAM, such as…

Performance · Computer Science 2021-10-06 M. Ben Olson , Brandon Kammerdiener , Kshitij A. Doshi , Terry Jones , Michael R. Jantz

Graph processing is used extensively in areas from social networking mining to web indexing. We demonstrate that the performance and dependability of such applications critically hinges on the graph data structure used, because a fixed,…

Programming Languages · Computer Science 2014-12-30 Amlan Kusum , Iulian Neamtiu , Rajiv Gupta

Modern consumer devices must execute multimedia applications that exhibit high resource utilization. In order to efficiently execute these applications, the dynamic memory subsystem needs to be optimized. This complex task can be tackled in…

Hardware Architecture · Computer Science 2024-03-08 José L. Risco-Martín , J. Manuel Colmenar , J. Ignacio Hidalgo , Juan Lanchares , Josefa Díaz

Profiling tools (also known as profilers) play an important role in understanding program performance at runtime, such as hotspots, bottlenecks, and inefficiencies. While profilers have been proven to be useful, they give extra burden to…

Software Engineering · Computer Science 2025-08-06 Zhuoran Liu

Data structure selection and tuning is laborious but can vastly improve an application's performance and memory footprint. Some data structures share a common interface and enjoy multiple implementations. We call them Darwinian Data…

Software Engineering · Computer Science 2018-08-02 Michail Basios , Lingbo Li , Fan Wu , Leslie Kanthan , Earl Barr
‹ Prev 1 2 3 10 Next ›