Object code optimizer: Difference between revisions

Content deleted Content added
No edit summary
Tags: Reverted Mobile edit Mobile web edit
Rcfische2 (talk | contribs)
m ca
 
(3 intermediate revisions by 3 users not shown)
Line 1:
{{Short description|Aspect of software compilation}}
{{Multiple issues|
{{original research|astudiaethdate=November 2016}}
{{Confusing|reason=inconsistent|date=February 2018}}
}}
Line 26:
 
More recently developed "binary optimizers" for various platforms, some claiming [[novelty (patent)|novelty]] but, nevertheless, essentially using the same (or similar) techniques described above, include:
* [[IBM]] Automaticautomatic Binarybinary Optimizeroptimizer for z/OS (ABO) (2015)<ref name="IBM_ABO_2015"/>
* [[IBM]] Automaticautomatic Binarybinary Optimizeroptimizer for z/OS (ABO) Trialtrial Cloudcloud Serviceservice (2020)<ref name="IBM_ABO_2020"/>
* [[The Sun Studio Binarybinary Codecode Optimizer]]optimizer<ref name="Binopt"/> — which requires a [[software performance analysis|profile]] phase beforehand
* Design and Engineering of a Dynamic Binary Optimizer — from [[IBM]] T. J. Watson Res. Center (February 2005)<ref name="Duesterwald_2005"/><ref name="Xu-Li-Bao-Wang-Huang_2007"/>
* QuaC: Binarybinary Optimizationoptimization for Fastfast [[self-modifying code|Runtimeruntime Codecode Generationgeneration]] in [[C (programming language)|C]]<ref name="CSD_1994"/> — (which appears to include some elements of JIT)
* [[DynamoRIO]]
* COBRA: Anan Adaptiveadaptive Runtimeruntime Binarybinary Optimizationoptimization Frameworkframework for Multithreadedmultithreaded Applicationsapplications<ref name="Kim-Hse-Yew_2007"/>
* Spike Executableexecutable Optimizeroptimizer (Unix kernel)<ref name="Spike_2010"/>
* "SOLAR" Softwaresoftware Optimizationoptimization at Linklink-time Andand Runrun-time<ref name="SOLAR"/>
* Dynimize: CPU Performanceperformance Virtualizationvirtualization<ref name="Dynimize"/>
* BOLT: post-link optimizer built on top of the [[LLVM]] framework. Utilizing sample-based profiling, BOLT improves the performance of real-world applications even for highly optimized binaries built with both [[Feedback Directeddirected Optimizationoptimization|feedback directed optimization]] and [[Linklink-time optimization]]. For [[GNU Compiler Collection|GCC]] and [[Clang]] compilers, BOLT speeds up their binaries by up to 20.4% on top of FDO and LTO, and up to 52.1% if the binaries are built without FDO and LTO.<ref name="Panchenko-Auler_2019"/>
 
==See also==
Line 49:
<ref name="Panchenko-Auler_2019">{{cite book |author-last1=Panchenko |author-first1=Maksim |author-last2=Auler |author-first2=Rafael |author-last3=Nell |author-first3=Bill |author-last4=Ottoni |author-first4=Guilherme |title=2019 IEEE/ACM International Symposium on Code Generation and Optimization (CGO) |chapter=BOLT: A Practical Binary Optimizer for Data Centers and Beyond |date=2019-02-16 |pages=2–14 |doi=10.1109/CGO.2019.8661201 |arxiv=1807.06735 |isbn=978-1-7281-1436-1 |s2cid=49869552}}</ref>
<ref name="IBM">{{cite web |url=http://www.bitsavers.org/pdf/ibm/360/A22_6825-1_360instrTiming.pdf |title=Archived copy |access-date=2010-01-07 |archive-date=2010-07-11 |archive-url=https://web.archive.org/web/20100711101128/http://bitsavers.org/pdf/ibm/360/A22_6825-1_360instrTiming.pdf |url-status=dead}}</ref>
<ref name="Evans_1982">{{cite journal |url=https://doi.org/10.1145/358728.358732|title=Software engineering for the Cobol environment |author-first=Michael |author-last=Evans |date=1982-12-01 |journal=Communications of the ACM |volume=25 |issue=12 |pages=874–882 |doi=10.1145/358728.358732 |s2cid=17268690 |access-date=2021-10-27 |archive-date=2021-10-27 |archive-url=https://web.archive.org/web/20211027171912/https://dl.acm.org/doi/10.1145/358728.358732 |url-status=live|doi-access=free }}</ref>
<ref name="Binopt">{{cite web |url=http://developers.sun.com/solaris/articles/binopt.html |title=The Binary Code Optimizer |access-date=2010-01-07 |archive-date=2010-07-22 |archive-url=https://web.archive.org/web/20100722060415/http://developers.sun.com/solaris/articles/binopt.html |url-status=live}}</ref>
<ref name="Duesterwald_2005">{{cite journal |doi=10.1109/JPROC.2004.840302 |title=Design and Engineering of a Dynamic Binary Optimizer |date=2005 |author-last=Duesterwald |author-first=E. |journal=Proceedings of the IEEE |volume=93 |issue=2 |pages=436–448 |s2cid=2217101}}</ref>