Font Size: a A A

Research On Thread-based Data Prefetching Techniques

Posted on:2012-07-18Degree:DoctorType:Dissertation
Country:ChinaCandidate:G D OuFull Text:PDF
GTID:1118330341951706Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
With the development of technology and architecture, multi-threaded processors have gradually become the mainstream of microprocessor. But a lot of legacy code as well as new code coded with sequential model can not take advantage of multiple con-texts; their performance may be downgraded because of competition with other applica-tions. Approcaches to impove single-threaded applications's performance in multi-threaded processors become the focus of discussion.Thread-based data prefetching is an effective way to ease the memory wall under multithreading environment. Data prefetching threads extracted from the main program are executed in parallel with the main program threads, and typically generate the access address much faster since they only execute dependent address computations. Thread-based data prefetching is the development and complementation of traditional data prefetching techniques, and it is also an extension and enhancement of multi-threaded architecture.This dissertation studies data prefetching techniques, focusing on thread-based data prefetching technique and related optimization. The main contributions are as follows:1. Analyze memory access behavior of applications; define problem memory in-structions and critical memory instructions. Propose a data prefetching tech-nique using helper threads: Thread-based Multi-Path Data Prefetching, TMPDP.2. Propose a two-phase evaluation scheme. Evaluate the effects of data prefetch threads in the stage of construction and execution.3. Propose an optimized data prefetching technique using incorrect speculation. The influence of control flow in data prefetch threads is also analyzed. We use branch instructions in data prefetch threads to control the execution flow. Such accurate control helps to improve the accuracy of prefetch, to reduce useless prefetch and cache pollution.4. Propose a confidence-based control scheme. This scheme use confidence to enhance branch prediction, especially multi-branch prediction and to control data prefetch thread extraction, spawning and execution.In this dissertation we implement and validate TMPDP techniques on two different platform including simultaneous multithreading(SMT) processors (one is a superscalar simultaneous multi-threading processor, the other one is an Explicitly Parallel Instruc-tion Computing processor with simultaneous multithreading extension) and single chip multi-processors(CMP). Simulation results show that TMPDP not only accelerates sin-gle-threaded applications, but also improves system throughput. TMPDP has already been applied in projects supported by The National High Technology Research (2002AA110020, 2005AA110020) and Development Program of China and National Natural Science Foundation of China (60376018).
Keywords/Search Tags:multi-threaded processor, single-threaded application, critical memory instructions, thread-based multi-path data prefetching, evaluation, in-correct speculation, confidence
PDF Full Text Request
Related items