Optimizing compiler for improving application performance on many-core coprocessors
a compiler and many-core technology, applied in the field of compilers, can solve the problems of requiring significant developer effort and experimentation to maximize performance, and achieve the effect of eliminating one or more redundant data transfers
- Summary
- Abstract
- Description
- Claims
- Application Information
AI Technical Summary
Benefits of technology
Problems solved by technology
Method used
Image
Examples
Embodiment Construction
[0018]In accordance with the present principles, a compiler for ×86-based many-core coprocessors is provided to port legacy applications to benefit from many-core architecture. Preferably, the compiler receives an annotated application identifying parallelizable code portions. For each parallelizable code portion, the compiler first performs a liveness analysis to determine variables that are to be copied in to (live-in variables) and out of (live-out variables) the many-core coprocessor. An array bound analysis is also performed to determine the start and end location of each array / pointer used in the code portion as a size in memory.
[0019]The compiler then transforms the parallelizable code portions by inserting an offload construct before the parallelizable code portions. In / out / inout clauses are passed as arguments of the offload construct and are populated based on the results of the liveness analysis and array bound analysis. In a preferred embodiment, the parallelizable code ...
PUM
Abstract
Description
Claims
Application Information
- R&D Engineer
- R&D Manager
- IP Professional
- Industry Leading Data Capabilities
- Powerful AI technology
- Patent DNA Extraction
Browse by: Latest US Patents, China's latest patents, Technical Efficacy Thesaurus, Application Domain, Technology Topic, Popular Technical Reports.
© 2024 PatSnap. All rights reserved.Legal|Privacy policy|Modern Slavery Act Transparency Statement|Sitemap|About US| Contact US: help@patsnap.com