The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Jun. 18, 2013
Filed:
Dec. 28, 2007
Ahmad Hassan, Islamabad, PK;
Haroon-ur Rashid, Islamabad, PK;
Mazhar Iqbal, Islamabad, PK;
Mohammad Ayub Khan, Santa Clara, CA (US);
Ahmad Hassan, Islamabad, PK;
Haroon-ur Rashid, Islamabad, PK;
Mazhar Iqbal, Islamabad, PK;
Mohammad Ayub Khan, Santa Clara, CA (US);
Streaming Networks (PVT.) Ltd., Santa Clara, CA (US);
Abstract
A method and apparatus for the manually optimizing the scheduling of code are disclosed. Accordingly, a software development tool with a graphical user interface enables manually ordering the scheduling of operations for architectures that execute multiple instructions/operations per machine cycle, such as very long instruction word (VLIW) processors. Assistance is provided at the instruction scheduling stage of VLIW compilation process to increase instruction level parallelism (ILP). The apparatus provides graphical views of assembly code and related information. An interactive, user friendly method to manipulate the code during or after scheduling is provided. The programmer can temporarily pause the automated scheduling, override decision taken by the scheduler, and then resume scheduling. The method lets the programmer interact graphically with scheduling decisions in a feedback environment. The method allows movement of only those operations that do not violate the target processor architectural constraints and algorithmic constraints of the code being optimized.