Main Content

Execution Speed

Improve execution speed of generated C/C++ code

Use code generation options and optimizations to improve the execution speed of the generated code. You can modify or disable dynamic memory allocation, which can affect execution speed. Parallelized code can be generated by using parfor loops. When available, take advantage of preexisting optimized C code and specialized libraries to speed up execution.

For more information about how to optimize your code for specific conditions, see Optimization Strategies.

함수

coder.areUnboundedVariableSizedArraysSupportedCheck if current configuration settings allow unbounded variable-size arrays (R2024a 이후)
coder.cevalCall C/C++ function from generated code
coder.constFold expressions into constants in generated code
coder.inlineControl inlining of current function in generated code
coder.inlineCallInline called function in generated code (R2024a 이후)
coder.loop.interchangeInterchange loop indices in generated code (R2023a 이후)
coder.loop.parallelizeParallelize specific for loops in generated code; disable automatic parallelization (R2021a 이후)
coder.loop.reverseReverse loop iteration order in generated code (R2023a 이후)
coder.loop.tileTile for-loops in the generated code (R2023a 이후)
coder.loop.unrollAndJamUnroll and jam for-loops in the generated code (R2023a 이후)
coder.loop.vectorizeVectorize for loops in generated code (R2023a 이후)
coder.nonInlineCallPrevent inlining of called function in generated code (R2024a 이후)
coder.unrollUnroll for-loop by making a copy of the loop body for each loop iteration
coder.varsizeDeclare variable-size data
parforParallel for-loop

클래스

coder.BLASCallbackAbstract class for specifying the BLAS library and CBLAS header and data type information for BLAS calls in generated code
coder.LAPACKCallbackAbstract class for specifying the LAPACK library and LAPACKE header file for LAPACK calls in generated code
coder.fftw.StandaloneFFTW3Interface Abstract class for specifying an FFTW library for FFTW calls in generated code
coder.loop.ControlLoop optimization control object (R2023a 이후)

도움말 항목

Generated Code Optimizations

memcpy and memset Optimizations

Variable-Size Arrays

Array Layout

Loops

Function Calls

Numerical Edge Cases

External Code Integration

문제 해결

Troubleshooting parfor-Loops

Diagnose errors for code generation of parfor-loops.

Resolve Issue: coder.inline("never") and coder.nonInlineCall Do Not Prevent Function Inlining

Troubleshoot instances of coder.inline('never') not preventing inlining.

MEX Generated on macOS Platform Stays Loaded in Memory

Troubleshoot issues that occur when the source MATLAB® code contains global or persistent variables that are reachable from the body of a parfor-loop.