English
Related papers

Related papers: Warrior1: A Performance Sanitizer for C++

200 papers

The identification of vulnerabilities is a continuous challenge in software projects. This is due to the evolution of methods that attackers employ as well as the constant updates to the software, which reveal additional issues. As a…

Cryptography and Security · Computer Science 2023-09-19 Irdin Pekaric , Michael Felderer , Philipp Steinmüller

Searching for geometric objects that are close in space is a fundamental component of many applications. The performance of search algorithms comes to the forefront as the size of a problem increases both in terms of total object count as…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-06-30 D. Lebrun-Grandié , A. Prokopenko , B. Turcksin , S. R. Slattery

Modern shared memory multiprocessors permit reordering of memory operations for performance reasons. These reorderings are often a source of subtle bugs in programs written for such architectures. Traditional approaches to verify weak…

Software Engineering · Computer Science 2016-02-29 Ganesh Narayanaswamy , Saurabh Joshi , Daniel Kroening

CodeChecker is an open source project that integrates different static analysis tools such as the Clang Static Analyzer and Clang-Tidy into the build systems, continuous integration loops, and development workflows of C++ programmers. It…

Software Engineering · Computer Science 2024-08-06 Gabor Horvath , Reka Kovacs , Richard Szalay , Zoltan Porkolab , Gyorgy Orban , Daniel Krupp

This paper explores the relationship between C++ templates and partial evaluation. Templates were designed to support generic programming, but unintentionally provided the ability to perform compile-time computations and code generation.…

Programming Languages · Computer Science 2007-05-23 Todd L. Veldhuizen

Integer overflows in commodity software are a main source for software bugs, which can result in exploitable memory corruption vulnerabilities and may eventually contribute to powerful software based exploits, i.e., code reuse attacks…

Cryptography and Security · Computer Science 2017-11-06 Paul Muntean , Jens Grossklags , Claudia Eckert

Anomaly detection is a method for discovering unusual and suspicious behavior. In many real-world scenarios, the examined events can be directly linked to the actions of an adversary, such as attacks on computer networks or frauds in…

Machine Learning · Computer Science 2020-04-23 Olga Petrova , Karel Durkota , Galina Alperovich , Karel Horak , Michal Najman , Branislav Bosansky , Viliam Lisy

Deductive verification of concurrent programs under weak memory has thus far been limited to simple programs over a monolithic state space. For scalabiility, we also require modular techniques with verifiable library abstractions. This…

Programming Languages · Computer Science 2020-12-29 Sadegh Dalvandi , Brijesh Dongol

Modern warehouse-scale datacenters commonly collocate multiple jobs on shared machines to improve resource utilization. However, such collocation often leads to performance interference caused by antagonistic jobs that overconsume shared…

Performance · Computer Science 2025-11-25 Sixiang Zhou , Nan Deng , Krzysiek Rzadca , Xiaojun Lin , Y. Charlie Hu

Open-source software (OSS) vulnerability management process is important nowadays, as the number of discovered OSS vulnerabilities is increasing over time. Monitoring vulnerability-fixing commits is a part of the standard process to prevent…

Cryptography and Security · Computer Science 2022-09-08 Truong Giang Nguyen , Thanh Le-Cong , Hong Jin Kang , Xuan-Bach D. Le , David Lo

Background: The C and C++ languages hold significant importance in Software Engineering research because of their widespread use in practice. Numerous studies have utilized Machine Learning (ML) and Deep Learning (DL) techniques to detect…

Software Engineering · Computer Science 2024-08-06 Anh The Nguyen , Triet Huynh Minh Le , M. Ali Babar

With no intent of starting a holy war, this paper lists several annoying C++ birthmarks that the author has come across developing GUI class libraries. C++'s view of classes, instances and hierarchies appears tantalizingly close to GUI…

Programming Languages · Computer Science 2007-05-23 Oleg Kiselyov

Containerization is a virtualization technique that allows one to create and run executables consistently on any infrastructure. Compared to virtual machines, containers are lighter since they do not bundle a (guest) operating system but…

Software Engineering · Computer Science 2023-03-08 Luciano Baresi , Giovanni Quattrocchi , Nicholas Rasi

As the complexity and scale of modern parallel machines continue to grow, programmers increasingly rely on composition of software libraries to encapsulate and exploit parallelism. However, many libraries are not designed with composition…

Compilation is an important process in developing configurable systems, such as Linux. However, identifying compilation errors in configurable systems is not straightforward because traditional compilers are not variability-aware. Previous…

Software Engineering · Computer Science 2024-07-31 Lucas Albuquerque , Rohit Gheyi , Márcio Ribeiro

Fault injections are increasingly used to attack/test secure applications. In this paper, we define formal models of runtime monitors that can detect fault injections that result in test inversion attacks and arbitrary jumps in the control…

Cryptography and Security · Computer Science 2019-09-23 Ali Kassem , Yliès Falcone

In this paper, we propose the Templet -- a runtime system for actor programming of high performance computing in C++. We provide a compact source code of the runtime system, which uses standard library of C++11 only. We demonstrate how it…

Programming Languages · Computer Science 2017-02-20 Sergey Vostokin , Ekaterina Skoryupina

Fuzzing continues to be the most effective method for identifying security vulnerabilities in software. In the context of fuzz testing, the fuzzer supplies varied inputs to fuzz targets, which are designed to comprehensively exercise…

Software Engineering · Computer Science 2026-01-21 Chi Thien Tran

Quantum computers have the potential to solve certain problems faster than classical computers by exploiting quantum mechanical effects such as superposition. However, building high-quality quantum software is challenging due to the…

Quantum Physics · Physics 2025-01-28 Julian Shen , Joshua Ammermann , Christoph König , Ina Schaefer

Recovering class inheritance from C++ binaries has several security benefits including problems such as decompilation and program hardening. Thanks to the optimization guidelines prescribed by the C++ standard, commercial C++ binaries tend…

Cryptography and Security · Computer Science 2019-02-19 Rukayat Ayomide Erinfolami , Aravind Prakash