Open Access. Powered by Scholars. Published by Universities.®

Computer Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 5 of 5

Full-Text Articles in Computer Engineering

Finding Data Races In Software Binaries With Symbolic Execution, Nathan D. Jackson Jan 2020

Finding Data Races In Software Binaries With Symbolic Execution, Nathan D. Jackson

Browse all Theses and Dissertations

Modern software applications frequently make use of multithreading to utilize hardware resources better and promote application responsiveness. In these applications, threads share the program state, and synchronization mechanisms ensure proper ordering of accesses to the program state. When a developer fails to implement synchronization mechanisms, data races may occur. Finding data races in an automated way is an already challenging problem, but often impractical without source code or understanding how to execute the program under analysis. In this thesis, we propose a solution for finding data races on software binaries and present our prototype implementation BINRELAY. Our solution makes use …


Reliable And Efficient Multithreading, Tongping Liu Aug 2014

Reliable And Efficient Multithreading, Tongping Liu

Doctoral Dissertations

The advent of multicore architecture has increased the demand for multithreaded programs. It is notoriously far more challenging to write parallel programs correctly and efficiently than sequential ones because of the wide range of concurrency errors and performance problems. In this thesis, I developed a series of runtime systems and tools to combat concurrency errors and performance problems of multithreaded programs. The first system, Dthreads, automatically ensures determinism for unmodified C/C++ applications using the pthreads library without requiring programmer intervention and hardware support. Dthreads greatly simplifies the understanding and debugging of multithreaded programs. Dthreads often matches or even exceeds the …


Low-Cost And Power-Efficient Thread Collision Detection Scheme For Shared Caches In A Real-Time Multithreaded Embedded Processor, Emre Özer Jan 2013

Low-Cost And Power-Efficient Thread Collision Detection Scheme For Shared Caches In A Real-Time Multithreaded Embedded Processor, Emre Özer

Turkish Journal of Electrical Engineering and Computer Sciences

This paper addresses an important issue in a real-time multithreaded embedded processor where several active hardware threads share the critical resources such as caches in the processor. Thread interferences or collisions could lead to severe performance degradations on the real-time threads. Although the cache interference issue on real-time multithreaded processors has been studied before, no cost-effective and simpler hardware solutions were proposed to maintain the single thread performance of the real-time thread while still letting the low-priority threads progress. A novel technique called collision tag is proposed to address these issues. Progressively, the collision tag scheme can be reduced into …


Architecture And Compiler Support For Leakage Reduction Using Power Gating In Microprocessors, Soumyaroop Roy Aug 2010

Architecture And Compiler Support For Leakage Reduction Using Power Gating In Microprocessors, Soumyaroop Roy

USF Tampa Graduate Theses and Dissertations

Power gating is a technique commonly used for runtime leakage reduction in digital CMOS circuits. In microprocessors, power gating can be implemented by using sleep transistors to selectively deactivate circuit modules when they are idle during program execution. In this dissertation, a framework for power gating arithmetic functional units in embedded microprocessors with architecture and compiler support is proposed. During compile time, program regions are identified where one or more functional units are idle and sleep instructions are inserted into the code so that those units can be put to sleep during program execution. Subsequently, when their need is detected …


Parallel Machines: Parallel Machine Languages, Robert Iannucci Dec 1989

Parallel Machines: Parallel Machine Languages, Robert Iannucci

Robert A Iannucci

No abstract provided.