WO2012064690A3 - Speculative compilation to generate advice messages - Google Patents
Speculative compilation to generate advice messages Download PDFInfo
- Publication number
- WO2012064690A3 WO2012064690A3 PCT/US2011/059701 US2011059701W WO2012064690A3 WO 2012064690 A3 WO2012064690 A3 WO 2012064690A3 US 2011059701 W US2011059701 W US 2011059701W WO 2012064690 A3 WO2012064690 A3 WO 2012064690A3
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- optimization
- compilation
- speculation
- advice messages
- generate advice
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
- G06F8/4441—Reducing the execution time required by the program code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
Methods to improve optimization of compilation are presented. In one embodiment, a method includes identifying one or more optimization speculations with respect to a code region and speculatively performing transformation on an intermediate representation of the code region in accordance with an optimization speculation. The method includes generating an advice message corresponding to the optimization speculation and displaying the advice message if the optimization speculation results in an improved compilation result.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/942,543 US9009689B2 (en) | 2010-11-09 | 2010-11-09 | Speculative compilation to generate advice messages |
US12/942,543 | 2010-11-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2012064690A2 WO2012064690A2 (en) | 2012-05-18 |
WO2012064690A3 true WO2012064690A3 (en) | 2012-07-26 |
Family
ID=46020875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2011/059701 WO2012064690A2 (en) | 2010-11-09 | 2011-11-08 | Speculative compilation to generate advice messages |
Country Status (3)
Country | Link |
---|---|
US (1) | US9009689B2 (en) |
TW (1) | TWI455028B (en) |
WO (1) | WO2012064690A2 (en) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8589901B2 (en) | 2010-12-22 | 2013-11-19 | Edmund P. Pfleger | Speculative region-level loop optimizations |
US8793675B2 (en) * | 2010-12-24 | 2014-07-29 | Intel Corporation | Loop parallelization based on loop splitting or index array |
KR102013582B1 (en) * | 2012-09-07 | 2019-08-23 | 삼성전자 주식회사 | Apparatus and method for detecting error and determining corresponding position in source code of mixed mode application program source code thereof |
US9262139B2 (en) * | 2013-01-07 | 2016-02-16 | Advanced Micro Devices, Inc. | Layered programming for heterogeneous devices |
US9015685B2 (en) * | 2013-03-01 | 2015-04-21 | International Business Machines Corporation | Code analysis for simulation efficiency improvement |
US9213531B2 (en) * | 2014-05-01 | 2015-12-15 | Google Inc. | Methods to eliminate extra memory loads while accessing global variables in position independent code |
US9830134B2 (en) * | 2015-06-15 | 2017-11-28 | Qualcomm Incorporated | Generating object code from intermediate code that includes hierarchical sub-routine information |
US9720691B2 (en) * | 2015-09-23 | 2017-08-01 | Qualcomm Incorporated | Speculative scalarization in vector processing |
US10180829B2 (en) * | 2015-12-15 | 2019-01-15 | Nxp Usa, Inc. | System and method for modulo addressing vectorization with invariant code motion |
US10216496B2 (en) | 2016-09-27 | 2019-02-26 | International Business Machines Corporation | Dynamic alias checking with transactional memory |
CN108255721A (en) * | 2018-01-12 | 2018-07-06 | 深圳市海派通讯科技有限公司 | Method, system and the storage medium of the pre- interpolation interpretation of result of intelligent terminal compilation script |
US10698668B1 (en) * | 2018-05-29 | 2020-06-30 | Amazon Technologies, Inc. | Custom code transformations during compilation process |
EP3931685A4 (en) * | 2019-02-26 | 2022-10-12 | INTEL Corporation | Workload oriented constant propagation for compiler |
US20230161572A1 (en) * | 2021-11-24 | 2023-05-25 | International Business Machines Corporation | Tuning optimization to reduce compilation delays |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030101444A1 (en) * | 2001-10-30 | 2003-05-29 | Youfeng Wu | Method, apparatus, and system to optimize frequently executed code and to use compiler transformation and hardware support to handle infrequently executed code |
US20040261064A1 (en) * | 2003-06-20 | 2004-12-23 | Goldstein Theodore C. | Speculative compilation |
US20070011684A1 (en) * | 2005-06-27 | 2007-01-11 | Du Zhao H | Mechanism to optimize speculative parallel threading |
US20090144281A1 (en) * | 2007-11-30 | 2009-06-04 | Nikola Grcevski | Speculative computation lock coarsening through the use of localized lock reservation |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5966538A (en) * | 1997-10-31 | 1999-10-12 | Hewlett-Packard Company | Method and apparatus for automatically determining which compiler options should be used when compiling a computer program |
US7086046B2 (en) * | 2001-07-30 | 2006-08-01 | International Business Machines Corporation | Method and apparatus for displaying compiler-optimizated code |
US6959435B2 (en) * | 2001-09-28 | 2005-10-25 | Intel Corporation | Compiler-directed speculative approach to resolve performance-degrading long latency events in an application |
US7039909B2 (en) * | 2001-09-29 | 2006-05-02 | Intel Corporation | Method and apparatus for performing compiler transformation of software code using fastforward regions and value specialization |
US7257810B2 (en) * | 2001-11-02 | 2007-08-14 | Sun Microsystems, Inc. | Method and apparatus for inserting prefetch instructions in an optimizing compiler |
US7237234B2 (en) * | 2001-12-13 | 2007-06-26 | Texas Instruments Incorporated | Method for selective solicitation of user assistance in the performance tuning process |
US6970985B2 (en) * | 2002-07-09 | 2005-11-29 | Bluerisc Inc. | Statically speculative memory accessing |
US20050144602A1 (en) * | 2003-12-12 | 2005-06-30 | Tin-Fook Ngai | Methods and apparatus to compile programs to use speculative parallel threads |
US7954094B2 (en) * | 2006-03-27 | 2011-05-31 | International Business Machines Corporation | Method for improving performance of executable code |
US8136102B2 (en) * | 2006-06-20 | 2012-03-13 | Google Inc. | Systems and methods for compiling an application for a parallel-processing computer system |
US8214814B2 (en) * | 2008-06-24 | 2012-07-03 | International Business Machines Corporation | Sharing compiler optimizations in a multi-node system |
US8539464B2 (en) * | 2008-10-30 | 2013-09-17 | International Business Machines Corporation | Distributed just-in-time compilation |
US8543796B2 (en) * | 2008-11-05 | 2013-09-24 | Intel Corporation | Optimizing performance of instructions based on sequence detection or information associated with the instructions |
US8621446B2 (en) * | 2010-04-29 | 2013-12-31 | International Business Machines Corporation | Compiling software for a hierarchical distributed processing system |
US8949808B2 (en) * | 2010-09-23 | 2015-02-03 | Apple Inc. | Systems and methods for compiler-based full-function vectorization |
-
2010
- 2010-11-09 US US12/942,543 patent/US9009689B2/en active Active
-
2011
- 2011-10-21 TW TW100138303A patent/TWI455028B/en not_active IP Right Cessation
- 2011-11-08 WO PCT/US2011/059701 patent/WO2012064690A2/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030101444A1 (en) * | 2001-10-30 | 2003-05-29 | Youfeng Wu | Method, apparatus, and system to optimize frequently executed code and to use compiler transformation and hardware support to handle infrequently executed code |
US20040261064A1 (en) * | 2003-06-20 | 2004-12-23 | Goldstein Theodore C. | Speculative compilation |
US20070011684A1 (en) * | 2005-06-27 | 2007-01-11 | Du Zhao H | Mechanism to optimize speculative parallel threading |
US20090144281A1 (en) * | 2007-11-30 | 2009-06-04 | Nikola Grcevski | Speculative computation lock coarsening through the use of localized lock reservation |
Also Published As
Publication number | Publication date |
---|---|
US9009689B2 (en) | 2015-04-14 |
TWI455028B (en) | 2014-10-01 |
TW201232405A (en) | 2012-08-01 |
US20120117552A1 (en) | 2012-05-10 |
WO2012064690A2 (en) | 2012-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2012064690A3 (en) | Speculative compilation to generate advice messages | |
GB2483575A (en) | Method and apparatus for performing a shift and exclusive or operation in a single instruction | |
AU2016204020B2 (en) | Systems and methods for identifying and suggesting emoticons | |
GB2535364A (en) | System and method for indicating queue characteristics of electronic terminals | |
WO2015119605A8 (en) | Ideograms based on sentiment analysis | |
GB2481563A (en) | Method and apparatus to provide secure application execution | |
MX345058B (en) | Determining a future portion of a currently presented media program. | |
WO2011088414A3 (en) | Systems and methods for per-action compiling in contact handling systems | |
GB2484620A (en) | Medical diagnosis support apparatus, method of controlling medical diagnosis support apparatus, and program | |
WO2013154680A3 (en) | Informative display for statistical positioning system | |
BR112015007443A2 (en) | butadiene and succinate coproduction method from a fermentable carbon source, and, microorganism. | |
WO2014078449A3 (en) | Intelligent information summarization and display | |
Zoubian et al. | Instrument Simulations of the EUCLID/NISP Spectrometer | |
GB201216667D0 (en) | Inside - on-line virtual reality immersion and integration system | |
WO2012112534A3 (en) | Learning to predict effects of compounds on targets | |
GB2482427A (en) | Document treatment icon | |
EP2720149A3 (en) | Apparatus and method for generating assertion based on user program code, and apparatus and method for verifying processor using assertion | |
IN2013MU01201A (en) | ||
WO2013009969A3 (en) | Visual representations of structured association mappings | |
Veríssimo et al. | Selecting marine invertebrate flagship species: widening the net | |
Prextová et al. | Proposal for electronic adaptive testing | |
Papathoma-Koehle et al. | Integrating physical vulnerability models in a holistic framework-a tool for practitioners | |
GB2489839A (en) | Database access | |
Bozek et al. | Decaying sterile neutrino dark matter in the Local Group | |
Queloz | Ground base search of small transiting planets on bright stars. The arrival of new generation of facilities: NGTS and SPECULOOS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11839692 Country of ref document: EP Kind code of ref document: A2 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 11839692 Country of ref document: EP Kind code of ref document: A2 |