(.js)
laraImport("clava.memoi.MemoiProf");
(.lara)
import clava.memoi.MemoiProf;
Classes:
new MemoiProf(targetSig, id, reportDir, target)Library to instrument applications with the memoiprof profiling
library.
profAll()Profiles all calls of the target function. This includes making a single
wrapper for all calls and adding the memoization profiling code inside this
wrapper.
profEach()Profiles each call to the target function separately. This includes
making a wrapper for each call and adding the memoization profiling code
inside the wrapper.
setApprox(approxKind, approxBits)setCulling(cullingKind, cullingRatio)setPeriodicReporting(periodicReportKind, periodicReportRate)setSampling(samplingKind, samplingRate)new MemoiprofOptions()Class used to store memoiprof options.
setApprox(approxKind, approxBits)Supported approxKind values are: true, false.
setCulling(cullingKind, cullingRatio)Supported cullingKind values are: true, false.
cullingRatio is the threshold (% of calls) for printing to the JSON.
setPeriodicReporting(periodicReportKind, periodicReportRate)Supported periodicReportKind values are: true, false.
periodicReportRate is the number of calls between writes of periodic reports.
setSampling(samplingKind, samplingRate)Supported samplingKind values are: 'random', 'fixed', 'off'.
For 1/x sampling, samplingRate should be x.