Open Access. Powered by Scholars. Published by Universities.®
Articles 1 - 3 of 3
Full-Text Articles in Computer Engineering
Finding Data Races In Software Binaries With Symbolic Execution, Nathan D. Jackson
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
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 …
Architecture And Compiler Support For Leakage Reduction Using Power Gating In Microprocessors, Soumyaroop Roy
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 …