A computer readable medium including executable instructions that when executed perform a method for validating an optimization in generated code using an executable constraints document is provided. The medium can include instructions for relating an assumption to the optimization during code gener
A computer readable medium including executable instructions that when executed perform a method for validating an optimization in generated code using an executable constraints document is provided. The medium can include instructions for relating an assumption to the optimization during code generation. The medium can include instructions for generating the executable constraints document during the code generation, the executable constraints document including information about the relating; and the medium can include instructions for executing the constraints document when the validating is performed, the validating including performing an operation based on a validation result produced by the validating, where the operation includes displaying the validation result to a user, storing the validation result, sending the validation result to a destination, or modifying the generated code.
대표청구항▼
1. A method comprising: documenting a feature associated with an optimization in code, the feature including an assumption or an assertion made in connection with the optimization in the code, andthe documenting the feature being performed by one or more processors;generating, based on the feature,
1. A method comprising: documenting a feature associated with an optimization in code, the feature including an assumption or an assertion made in connection with the optimization in the code, andthe documenting the feature being performed by one or more processors;generating, based on the feature, a document, the document including: first information about the feature, andsecond information associated with one or more features of a target device on which the code is to be executed, andthe generating the document being performed by the one or more processors;determining, based on the document and after generating the document, that a particular data is out of bounds when the code is executed on the target device, the determining that the particular data is out of bounds including: at least partially evaluating the assumption or the assertion made in connection with the optimization in the code, andidentifying the feature based on the at least partially evaluating the assumption or the assertion,the determining that the particular data is out of bounds being made based on the feature and being performed by the one or more processors;determining validation information for at least a portion of the code based on identifying the feature associated with the optimization in the code, the determining the validation information being performed by the one or more processors; andperforming an operation on the code based on the validation information, the performing the operation being performed by the one or more processors. 2. The method of claim 1, where the optimization in the code is made during code generation that produces the code. 3. The method of claim 1, where the document includes information indicating that a device is the target device on which the code is to be executed. 4. The method of claim 1, where the code is originally created for a previous version of the target device that is different from a new version of the target device that is used to execute the code when the particular data is out of bounds. 5. The method of claim 1, where performing the operation includes: providing the validation information for display to a user. 6. The method of claim 1, further comprising: determining thread information regarding one or more threads in the code, anddetermining the validation information based on identifying the feature and based on determining the thread information. 7. The method of claim 1, where the operation includes modifying the code based on the validation information. 8. The method of claim 1, where the code is created for a particular device that is an older version of the target device. 9. The method of claim 1, where the feature is an assumption associated with a data structure in the code. 10. The method of claim 1, where the document is executable. 11. A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions that, when executed by at least one processor, cause the at least one processor to:document a feature associated with an optimization in code, the feature including an assumption or an assertion made in connection with the optimization in the code;generate, based on the feature, a document, the document including: first information about the feature, andsecond information associated with one or more features of a target device on which the code is to be executed;determine, based on the document and after the document is generated, that a particular data is out of bounds when the code is executed on the target device, the one or more instructions that cause the at least one processor to determine that the particular data is out of bounds including: one or more instructions to at least partially evaluate the assumption or the assertion made in connection with the optimization in the code, andone or more instructions to identify the feature based on the at least partially evaluating the assumption or the assertion,one or more instructions to cause the at least one processor todetermine that the particular data is out of bounds based on the feature;determine validation information for at least a portion of the code based on identifying the feature associated with the optimization in the code; andperform an operation on the code based on the validation information. 12. The non-transitory computer-readable medium of claim 11, where the instructions further comprise: one or more instructions that, when executed by the at least one processor, cause the at least one processor to: modify the code based on the validation information. 13. The non-transitory computer-readable medium of claim 11, where the instructions further comprise: one or more instructions that, when executed by the at least one processor, cause the at least one processor to: determine thread information regarding one or more threads in the code, anddetermine the validation information based on identifying the feature and based on determining the thread information. 14. The non-transitory computer-readable medium of claim 11, where the instructions further comprise: one or more instructions that, when executed by the at least one processor, cause the at least one processor to: generate the document based on a graphical diagram associated with the code. 15. The non-transitory computer-readable medium of claim 11, where the feature is an assumption associated with a data structure in the code. 16. The non-transitory computer-readable medium of claim 11, where the code is created for a particular device that is an older version of the target device. 17. The non-transitory computer-readable medium of claim 11, where instructions further comprise: one or more instructions that, when executed by the at least one processor, cause the at least one processor to: send the validation information to a destination that performs another operation based on the validation information. 18. A system comprising: one or more processors to: document a feature associated with an optimization in code, the feature including an assumption or an assertion made in connection with the optimization in the code;generate, based on the feature, a document, the document including: first information about the feature, andsecond information associated with one or more features of a target device on which the code is to be executed;determine, based on the document and after the document is generated, that a particular data is out of bounds when the code is executed on the target device, the one or more processors, when determining that the particular data is out of bounds, are to: at least partially evaluate the assumption or the assertion made in connection with the optimization in the code, and identify the feature based on the at least partially evaluating the assumption or the assertion,determine that the particular data is out of bounds based on the feature;determine validation information for at least a portion of the code based on identifying the feature associated with the optimization in the code; andperform an operation on the code based on the validation information. 19. The system of claim 18, where the one or more processors are further to: determine thread information regarding one or more threads in the code, anddetermine the validation information based on identifying the feature and based on determining the thread information. 20. The system of claim 18, where the code is created for a particular device that is an older version of the target device.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (32)
Biggerstaff, Ted J., Anticipatory optimization with composite folding.
Sistare Steven J. (Somerville MA) Frankel James L. (Lexington MA), Compiler for performing incremental live variable analysis for data-parallel programs.
Andrew T. Jennings ; G. Lawrence Krablin ; Timothy Neilson Fender ; William Stratton, METHOD, APPARATUS, AND COMPUTER PROGRAM PRODUCT FOR REPLACING A DYNAMIC LINK LIBRARY (DLL) OF A FIRST COMPUTING ENVIRONMENT WITH A DLL OF A SECOND COMPUTING ENVIRONMENT THAT CAN BE INVOKED FROM THE F.
Kershenbaum,Aaron Stephen Jay; Koved,Lawrence; Nadalin,Anthony Joseph; Pistoia,Marco, Method and apparatus for automatically determining optimum placement of privileged code locations in existing code.
Arimilli Ravi Kumar ; Dodson John Steve ; Guthrie Guy Lynn, Optimizing compiler for generating store instructions having memory hierarchy control bits.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.