showInstrumentationResults

Results logged by instrumented, compiled C code function

Syntax

showInstrumentationResults('mex_fcn')
showInstrumentationResults ('mex_fcn' '-options')
showInstrumentationResults mex_fcn
showInstrumentationResults mex_fcn -options

Description

showInstrumentationResults('mex_fcn') opens the Code Generation Report, showing results from calling the instrumented MEX function mex_fcn. Hovering over variables and expressions in the report displays the logged information. The logged information includes minimum and maximum values, proposed fraction or word lengths, percent of current range, and whether the value is always a whole number, depending on which options you specify. If you specify to include them in the buildInstrumentedMex function, histograms are also included. The same information is displayed in a summary table in the Variables tab.

showInstrumentationResults ('mex_fcn' '-options') specifies options for the instrumentation results section of the Code Generation Report.

showInstrumentationResults mex_fcn and showInstrumentationResults mex_fcn -options are alternative syntaxes for opening the Code Generation Report.

When you call showInstrumentationResults, a file named instrumentation/mex_fcn/html/index.html is created. mex_fcn is the name of the corresponding instrumented MEX function. Selecting this file opens a web-based version of the Code Generation Report. To open this file from within MATLAB®, right-click on the file and select Open Outside MATLAB. showInstrumentationResults returns an error if the instrumented mex_fcn has not yet been called.

Input Arguments

mex_fcn

Instrumented MEX function created using buildInstrumentedMex.

options

Instrumentation results options.

-defaultDT TDefault data type to propose for double or single data type inputs, where T is either a numerictype object or one of the following: 'remainFloat', 'double', 'single', 'int8', 'int16', 'int32', 'int64', 'uint8', 'uint16', 'uint32', or 'uint64'. If you specify an int or uint, the signedness and word length are that int or uint value and a fraction length is proposed. The default is remainFloat, which does not propose any data types.
-nocode

Do not display MATLAB code in the printable report. Display only the tables of logged variables. This option only has effect in combination with the -printable option.

-optimizeWholeNumbers

Optimize the word length of variables whose simulation min/max logs indicate that they are always whole numbers.

-percentSafetyMargin N

Safety margin for simulation min/max, where N is a percent value.

-printable

Create and open a printable HTML report. The report opens in the system browser.

-proposeFL

Propose fraction lengths for specified word lengths.

-proposeWL

Propose word lengths for specified fraction lengths.

Examples

Generate an instrumented MEX function, then run a test bench. Call showInstrumentationResults to open the Code Generation Report.

Note

The logged results from showInstrumentationResults are an accumulation of all previous calls to the instrumented MEX function. To clear the log, see clearInstrumentationResults.

  1. Create a temporary directory, then import an example function from Fixed-Point Designer™.

    tempdirObj=fidemo.fiTempdir('showInstrumentationResults')
    copyfile(fullfile(matlabroot,'toolbox','fixedpoint',...
       'fidemos','fi_m_radix2fft_withscaling.m'),...
       'testfft.m','f')
  2. Define prototype input arguments.

    T = numerictype('DataType','ScaledDouble','Scaling',...
       'Unspecified');
    
    n = 128;
    x = complex(fi(zeros(n,1),T));
    W = coder.Constant(fi(fidemo.fi_radix2twiddles(n),T));
  3. Generate an instrumented MEX function. Use the -o option to specify the MEX function name.

    buildInstrumentedMex testfft -o testfft_instrumented...
       -args {x,W} -histogram
    
  4. Run a test bench to record instrumentation results. Call showInstrumentationResults to open a report. View the simulation minimum and maximum values, proposed fraction length, percent of current range, and whole number status by pausing over a variable in the report.

    for i=1:20
       x(:) = 2*rand(size(x))-1;
       y = testfft_instrumented(x);
    end
    
    showInstrumentationResults testfft_instrumented...
       -proposeFL -percentSafetyMargin 10
    

  1. View the histogram for a variable by clicking in the Variables tab.

    For information on the figure, refer to the NumericTypeScope reference page.

  2. Close the histogram display and then, clear the results log.

    clearInstrumentationResults testfft_instrumented
    
  3. Clear the MEX function, then delete temporary files.

    clear testfft_instrumented;
    tempdirObj.cleanUp;
    
Introduced in R2011b