A computer-implemented method and apparatus for parallelizing input computer-program code based on class-specific abstractions. The method includes the steps of providing a class-specific abstraction (CSA), and generating parallelization code based on the CSA and the input code. Other aspects include checking the input code for compliance with the CSA, performing a dependency analysis of the input code for compliance with the CSA, analyzing the control flow of the input code based on the CSA, and generating a block-based representation of a control flow based on index variables in the input code and on the CSA. In one embodiment, the CSA includes a computational-set template, a dependency template, and a set of allowed index-variable access patterns. Yet other aspects include generating synchronization points based on the CSA, mapping a computational set to a virtual array of parallel processors, and mapping the virtual array of parallel processors to a physical array of parallel processors. Other features include outputting a representation of communications flow between processors of data related to index variables in the input code. Other aspects include a storage medium having a computer program stored thereon for causing a computer to parallelize input code by the method. Another embodiment includes the steps of identifying to the computer a numerical-method class used in the input code, identifying a mapping of an index variable used in the input code to spatial coordinates. Other aspects include performing dependency analysis to determine communication-synchronization points, and minimizing the number of such points for data transmitted between processors.

Eine Computer-eingeführte Methode und ein Apparat für parallelizing den Eingang Computer-Programm Code basiert auf Kategorie-spezifischen Abstraktionen. Die Methode schließt die Schritte des Zur Verfügung stellens einer Kategorie-spezifischen Abstraktion (CSA) und des Erzeugens des parallelization Codes ein, der auf dem CSA und dem Eingang Code basiert. Andere Aspekte schließen die Überprüfung des Eingang Codes auf Befolgung mit dem CSA ein und führen eine Abhängigkeit Analyse des Eingang Codes für Befolgung mit dem CSA durch, analysieren den Steuerfluß des Eingang Codes, der auf dem CSA basiert, und erzeugen eine blockieren-gegründete Darstellung eines Steuerflusses, der auf Indexvariablen im Eingang Code und auf dem CSA basiert. In einer Verkörperung schließt das CSA Berechnungs--einstellte Schablone, eine Abhängigkeit Schablone und einen Satz erlaubte Index-variable Zugang Muster mit ein. Dennoch schließen andere Aspekte das Erzeugen der Synchrounisierung Punkte mit ein, die auf dem CSA basieren, das Diagramm eines Berechnungssatzes zu einer virtuellen Reihe parallelen Prozessoren und das Diagramm der virtuellen Reihe der parallelen Prozessoren zu einer körperlichen Reihe parallelen Prozessoren. Andere Eigenschaften schließen das Ausgeben einer Darstellung von Kommunikationen fließen zwischen Prozessoren der Daten ein, die auf Indexvariablen in den Eingang Code dazugehörig sind. Andere Aspekte schließen ein Speichermedium ein, das ein Computerprogramm für das Veranlassen eines Computers parallelize Eingang Code durch die Methode darauf speichern läßt. Eine andere Verkörperung schließt die Schritte des Kennzeichnens zum Computer, den eine Numerischmethode Kategorie im Eingang Code verwendete ein und kennzeichnet ein Diagramm einer Indexvariable, die im Eingang Code an räumliche Koordinaten gewöhntIST. Andere Aspekte schließen das Durchführen von von Abhängigkeit Analyse, um Kommunikation-Synchrounisierung Punkte festzustellen und die Minderung der Zahl solchen Punkten für die Daten mit ein, die zwischen Prozessoren übertragen werden.

 
Web www.patentalert.com

< (none)

< Prefabricated concrete wall panel system and method

> Robust identification code recognition system

> (none)

~ 00024