Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Methods and apparatuses for thread management of mult-threading

a multi-threading and thread technology, applied in multi-programming arrangements, instruments, computing, etc., can solve the problems of memory latency becoming the critical bottleneck to achieving high performance on modern processors, many large applications today are memory intensive, and memory bottleneck problems still persis

Inactive Publication Date: 2005-03-31
INTEL CORP
View PDF8 Cites 98 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

One solution is to overlap memory stalls in one program with the execution of useful instructions from another program, thus effectively improving system performance in terms of overall throughput. Improving throughput of multitasking workloads on a single processor has been the primary motivation behind the emerging simultaneous multithreading (SMT) techniques. An SMT processor can issue instructions from multiple hardware contexts, or logical processors (also referred to as hardware threads), to the functional units of a super-scalar processor in the same cycle. SMT achieves higher overall throughput by increasing overall instruction-level parallelism available to the architecture via the exploitation of the natural parallelism between independent threads during each cycle.

Problems solved by technology

Memory latency has become the critical bottleneck to achieving high performance on modern processors.
Many large applications today are memory intensive, because their memory access patterns are difficult to predict and their working sets are becoming quite large.
Despite continued advances in cache design and new developments in prefetching techniques, the memory bottleneck problem still persists.
This problem worsens when executing pointer-intensive applications, which tend to defy conventional stride-based prefetching techniques.
However, SMT does not directly improve the performance, in terms of reducing latency, of single-threaded applications.
In addition, the current compiler typically cannot automatically allocate resources for the threads it created.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Methods and apparatuses for thread management of mult-threading
  • Methods and apparatuses for thread management of mult-threading
  • Methods and apparatuses for thread management of mult-threading

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

Methods and apparatuses for compiler-creating helper threads for multi-threading systems are described. According to one embodiment, a compiler, also referred to as AutoHelper, that implements thread-based prefetching helper threads on a multi-threading system, such as, for example, the Intel Pentium™ 4 Hyper-Threading systems, available from Intel Corporation. In one embodiment, the compiler automates the generation of helper threads for Hyper-Threading processors. The techniques focus at identifying and generating helper threads of minimal sizes that can be executed to achieve timely and effective data prefetching, while incurring minimal communication overhead. A runtime system is also implemented to efficiently manage the helper threads and the synchronization between threads. Consequently, helper threads are able to issue timely prefetches for the sequential pointer-intensive applications.

In addition, hardware resources such as register contexts may be managed for helper thr...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

Methods and apparatuses for thread management for multi-threading are described herein. In one embodiment, exemplary process includes selecting, during a compilation of code having one or more threads executable in a data processing system, a current thread having a most bottom order, determining resources allocated to one or more child threads spawned from the current thread, and allocating resources for the current thread in consideration of the resources allocated to the current thread's one or more child threads to avoid resource conflicts between the current thread and its one or more child threads. Other methods and apparatuses are also described.

Description

FIELD Embodiments of the invention relate to information processing system; and more specifically, to thread management for multi-threading. BACKGROUND Memory latency has become the critical bottleneck to achieving high performance on modern processors. Many large applications today are memory intensive, because their memory access patterns are difficult to predict and their working sets are becoming quite large. Despite continued advances in cache design and new developments in prefetching techniques, the memory bottleneck problem still persists. This problem worsens when executing pointer-intensive applications, which tend to defy conventional stride-based prefetching techniques. One solution is to overlap memory stalls in one program with the execution of useful instructions from another program, thus effectively improving system performance in terms of overall throughput. Improving throughput of multitasking workloads on a single processor has been the primary motivation behi...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
Patent Type & Authority Applications(United States)
IPC IPC(8): G06F9/45G06F9/46
CPCG06F8/441
Inventor HOFLEHNER, GEROLF F.LIAO, SHIH-WEITIAN, XINMINWANG, HONGLAVERY, DANIEL M.WANG, PERRYKIM, DONGKEUNGIRKAR, MILINDSHEN, JOHN P.
Owner INTEL CORP
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products