Contenu principal

Vitesse d’exécution

Augmenter la vitesse d’exécution du code C/C++ généré

Utilisez des options et des optimisations de la génération de code pour augmenter la vitesse d’exécution du code généré. Vous pouvez modifier ou désactiver l’allocation dynamique de mémoire qui peut avoir un impact sur la vitesse d’exécution. Le code parallélisé peut être généré avec des boucles parfor. Lorsqu’ils sont disponibles, exploitez du code C optimisé préexistant et des bibliothèques spécialisées pour accélérer l’exécution.

Pour plus d’informations sur l’optimisation du code pour des conditions particulières, consultez Optimize Generated C/C++ and MEX Code.

Fonctions

développer tout

coder.timeitMeasure execution time of generated C/C++ code (depuis R2024b)
coder.perfCompareCompare execution times of MATLAB code and code generated using multiple configuration objects (depuis R2024b)
coder.loop.interchangeInterchange loop indices in generated code (depuis R2023a)
coder.loop.parallelizeParallelize specific for loops in generated code; disable automatic parallelization (depuis R2021a)
coder.loop.reverseReverse loop iteration order in generated code (depuis R2023a)
coder.loop.tileTile for-loops in the generated code (depuis R2023a)
coder.loop.unrollAndJamUnroll and jam for-loops in the generated code (depuis R2023a)
coder.loop.vectorizeVectorize for loops in generated code (depuis R2023a)
coder.unrollUnroll for-loop by making a copy of the loop body for each loop iteration
parforParallel for-loop
coder.inlineControl inlining of current function in generated code
coder.inlineCallInline called function in generated code (depuis R2024a)
coder.nonInlineCallPrevent inlining of called function in generated code (depuis R2024a)
coder.areUnboundedVariableSizedArraysSupportedCheck if current configuration settings allow unbounded variable-size arrays (depuis R2024a)
coder.varsizeResolve size incompatibility errors and declare upper bounds
coder.constFold expressions into constants in generated code
coder.cevalAppeler une fonction C/C++ à partir du code généré

Classes

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.ControlCustomize loop optimizations in generated code (depuis R2023a)

Rubriques

Optimisation du code généré

Optimisations memcpy et memset

Tableaux de taille variable

Disposition des tableaux

Boucles

Appels de fonctions

Cas numériques extrêmes

Intégration de code externe

Résolution des problèmes

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.

Sélection d՚exemples