Program fracture and recombination for efficient automatic code reuse
We present a new code transfer technique, program fracture and recombination, for automatically replacing, deleting, and/or combining code from multiple applications. Benefits include automatic generation of new applications incorporating the best or most desirable functionality developed anywhere,...
Main Authors: | , , , |
---|---|
Other Authors: | |
Format: | Article |
Language: | English |
Published: |
IEEE
2020
|
Online Access: | https://hdl.handle.net/1721.1/125197 |
_version_ | 1811091335004815360 |
---|---|
author | Amidon, Peter Davis, Eli Sidiroglou-Douskos, Stelios Rinard, Martin C |
author2 | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science |
author_facet | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Amidon, Peter Davis, Eli Sidiroglou-Douskos, Stelios Rinard, Martin C |
author_sort | Amidon, Peter |
collection | MIT |
description | We present a new code transfer technique, program fracture and recombination, for automatically replacing, deleting, and/or combining code from multiple applications. Benefits include automatic generation of new applications incorporating the best or most desirable functionality developed anywhere, the automatic elimination of errors and security vulnerabilities, effective software rejuvenation, the automatic elimination of obsolete or undesirable functionality, and improved performance, energy efficiency, simplicity, analyzability, and clarity. The technique may be particularly appropriate for high performance computing. The field has devoted years of effort to developing efficient (but complex) implementations of standard linear algebra operations with good numerical properties. At the same time these operations also have very simple but inefficient implementations, often with poor numerical properties. Program fracture and recombination allows developers to work with the simple implementation during development and testing, then use program fracture and recombination to automatically find and deploy the most appropriate implementation for the hardware platform at hand. The benefits include reduced implementation effort, increased code clarity, and the ability to automatically search for and find efficient implementations with good numerical properties. |
first_indexed | 2024-09-23T15:00:50Z |
format | Article |
id | mit-1721.1/125197 |
institution | Massachusetts Institute of Technology |
language | English |
last_indexed | 2024-09-23T15:00:50Z |
publishDate | 2020 |
publisher | IEEE |
record_format | dspace |
spelling | mit-1721.1/1251972022-10-01T23:58:46Z Program fracture and recombination for efficient automatic code reuse Amidon, Peter Davis, Eli Sidiroglou-Douskos, Stelios Rinard, Martin C Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory We present a new code transfer technique, program fracture and recombination, for automatically replacing, deleting, and/or combining code from multiple applications. Benefits include automatic generation of new applications incorporating the best or most desirable functionality developed anywhere, the automatic elimination of errors and security vulnerabilities, effective software rejuvenation, the automatic elimination of obsolete or undesirable functionality, and improved performance, energy efficiency, simplicity, analyzability, and clarity. The technique may be particularly appropriate for high performance computing. The field has devoted years of effort to developing efficient (but complex) implementations of standard linear algebra operations with good numerical properties. At the same time these operations also have very simple but inefficient implementations, often with poor numerical properties. Program fracture and recombination allows developers to work with the simple implementation during development and testing, then use program fracture and recombination to automatically find and deploy the most appropriate implementation for the hardware platform at hand. The benefits include reduced implementation effort, increased code clarity, and the ability to automatically search for and find efficient implementations with good numerical properties. 2020-05-12T20:55:44Z 2020-05-12T20:55:44Z 2015-09 2019-07-02T16:09:45Z Article http://purl.org/eprint/type/ConferencePaper 9781467392860 https://hdl.handle.net/1721.1/125197 Amidon, Peter, et al. "Program fracture and recombination for efficient automatic code reuse." 2015 IEEE High Performance Extreme Computing Conference, Waltham, MA, USA, September 2015, IEEE, 2015. en http://dx.doi.org/10.1109/hpec.2015.7396314 Proceedings of the 2015 IEEE High Performance Extreme Computing Conference Creative Commons Attribution-Noncommercial-Share Alike http://creativecommons.org/licenses/by-nc-sa/4.0/ application/pdf IEEE MIT web domain |
spellingShingle | Amidon, Peter Davis, Eli Sidiroglou-Douskos, Stelios Rinard, Martin C Program fracture and recombination for efficient automatic code reuse |
title | Program fracture and recombination for efficient automatic code reuse |
title_full | Program fracture and recombination for efficient automatic code reuse |
title_fullStr | Program fracture and recombination for efficient automatic code reuse |
title_full_unstemmed | Program fracture and recombination for efficient automatic code reuse |
title_short | Program fracture and recombination for efficient automatic code reuse |
title_sort | program fracture and recombination for efficient automatic code reuse |
url | https://hdl.handle.net/1721.1/125197 |
work_keys_str_mv | AT amidonpeter programfractureandrecombinationforefficientautomaticcodereuse AT daviseli programfractureandrecombinationforefficientautomaticcodereuse AT sidirogloudouskosstelios programfractureandrecombinationforefficientautomaticcodereuse AT rinardmartinc programfractureandrecombinationforefficientautomaticcodereuse |