An optimization method and apparatus for converting source code for a
program written in a programming language into machine language. The
program includes a basic block as a unit to estimate an execution time for
the program to be processed, generating a nested tree that represents the
connections of the basic blocks using a nesting structure, when a
conditional branch is accompanied by a node in the nested tree, employing
the execution time estimated by using the basic blocks as units to obtain
an execution time at the node of the program when a conditional branching
portion of a program is directly executed and when the conditional
branching portion is executed in parallel, and defining the node as a
parallel execution area group when the execution time required for the
parallel execution is shorter or dividing multiple child nodes of the
nodes into multiple parallel execution areas.
Een een optimaliseringsmethode en apparaat om broncode voor een programma dat in een programmeertaal wordt geschreven in machinetaal om te zetten. Het programma omvat een basisblok als eenheid om een uitvoeringstijd voor het programma te schatten om worden verwerkt, producerend een genestelde boom die de verbindingen van de basisblokken gebruikend een het nestelen structuur vertegenwoordigt, wanneer een voorwaardelijke tak van een knoop in de genestelde boom vergezeld gaat, aanwendend de uitvoeringstijd geschat door de basisblokken te gebruiken als eenheden om een uitvoeringstijd te verkrijgen bij de knoop van het programma wanneer een voorwaardelijk vertakkend gedeelte van een programma direct wordt uitgevoerd en wanneer het voorwaardelijke vertakkende gedeelte uitgevoerde tegelijkertijd parallel is, en de knoop te definiƫren als parallelle groep van het uitvoeringsgebied wanneer de uitvoeringstijd die voor de parallelle uitvoering wordt vereist korter of het verdelen veelvoud is de knopen in veelvoudige parallelle uitvoeringsgebieden.