ANTAREX API

Clava API

LARA API

LARA Common Language API

(.js)
laraImport("clava.autopar.Parallelize");

(.lara)
import clava.autopar.Parallelize;

Parallelize

Parallelize

Parallelize

Utility methods for parallelization.


Static Members

forLoops

forLoops($loops)

Parameters

$loops: any - {$loop[]} an array of for loops to attempt to parallelize. If undefined, tries to parallelize all for loops in the program.

forLoopsAsText

forLoopsAsText($loops, outputFolder)

Parameters

$loops: any
outputFolder: any

getForLoopsPragmas

getForLoopsPragmas([$loops = <All program loops>], insertPragma, useLoopId)

Parameters

$loops: $loop[] - Array of loops to parallelize. (optional)
insertPragma: boolean - If true, inserts the found pragmas in the code.
useLoopId: boolean - If true, the returning map uses $loop.id instead of $loop.astId as keys.

Returns

Object[parallelLoops, unparallelizableLoops] - an object with the pragmas of the parallelized loops, and the error messages of the loops that could not be parallelized.

isNestedOpenMP

isNestedOpenMP($omp)

Parameters

$omp: any

removeNestedPragmas

removeNestedPragmas()

Comments OpenMP pragmas that are nested inside other OpenMP pragmas.

Returns

String - the loop ids of loops whose OpenMP pragmas where commented.