AbstractProtected AbstractaddAdds the code to the AST, can assume the AST is empty.
Restores the AST previous to load().
Protected AbstractcloseProtectedcloseProtectedcompilationCompiles the current version of the benchmark that is in the AST. Requires calling .load() first.
ProtectedcompileExecutes the current version of the benchmark. Requires calling .compile() first.
the ProcessExecutor used to execute this instance
ProtectedexecuteThe base folder for all benchmark instances. Currently is a folder 'laraBenchmarks' inside the working directory.
ProtectedgetAllows to customize the CMake options used during compilation.
An available BenchmarkCompilationEngine that can be used to run compiled the program (implementations may vary). If used, can be used to configure the compilation.
The executor that will be used to run the compiled program, can be used to configure the execution.
Looks for #pragma kernel, returns target of that pragma
The name of this BenchmarkInstance.
Saves the current AST and loads this benchmark into the AST.
ProtectedloadProtectedloadSpeciallized implementation for Clava that automatically saves and restores the AST, extending classes just need to implement addCode() and loadPrologue().
Protected AbstractloadConfiguration that is required by the benchmarks (e.g., setting the standard)
Test the current instance.
Optionalworker: (instance: BenchmarkInstance) => booleanFunction with no parameters that will be called after loading the benchmark code as AST.
OptionalexecuteCode: booleanIf true, executes the code after worker is applied.
OptionaloutputProcessor: (executor: ProcessExecutor) => voidIf execution is enabled, will be called after execution with the corresponding ProcessExecutor.
True, if finished without problems
Protected StaticgetTemporary folder for caching ASTs.
StaticpurgeClears compilation cache of all BenchmarkInstances.
StaticsetIf true, enables caching of parsed files. By default, caching is enabled.
Instance of a Clava benchmark.
Implements _compilePrivate and .getKernel().