Patent ID: 8397224

Claim:
A method for programmatically providing a technical programming language control structure for parallel technical computing with a plurality of technical computing environments, the method comprising: providing, using a computing device, the technical programming language control structure representing a parallel loop with a loop body comprising one or more program instructions to be executed in the plurality of technical computing environments, a first technical computing environment of the plurality of technical computing environments running a first technical computing program, a second technical computing environment of the plurality of technical computing environments running a second technical computing program, where the first technical computing program and the second technical computing program: are generated using technical computing software, have a same functionality, include the technical programming language control structure and at least one program instruction separate from the technical programming language control structure; receiving an instruction by the computing device while the plurality of technical computing environments are running, the instruction for selecting an algorithm from a plurality of algorithms based on one or more operational characteristics of the plurality of technical computing environments, the plurality of algorithms determining how to decompose an iterator of the loop into a plurality of sections; decomposing, using the computing device, the iterator of the loop into the plurality of sections according to the selected algorithm; and invoking, using the computing device, execution of the program instruction to perform a first iteration of the loop body by the first technical computing environment and to perform a second iteration of the loop body by the second technical computing environment.