Effacer les filtres
Effacer les filtres

Is using classes vs. structures more computationally efficient? Especially with parallelization ? What about MATLAB Compiler?

18 vues (au cours des 30 derniers jours)
There is a discussion about how classes help better structure the code and make more readable, and re-useable, but I haven't seen any comments regarding the efficiency? Both memory and speed?
Woould impemeneting the same simple code as structures + functions be more efficient then defining classes and calling methods?
What about when code is deployed as application using MATLAB compiler, or compiled into MEX?
Thanks,
-MK

Réponse acceptée

Walter Roberson
Walter Roberson le 26 Juin 2021
Using struct has traditionally been more efficient, as searching for the correct method can be expensive.
The performance of classes was significantly worse before Mathworks implemented the Execution Engine several releases ago.
The performance for anything generated with MATLAB Compiler is the same as interactive, as MATLAB Compiler uses the same execution technology.
The performance for compiled code (C++ generated with MATLAB Coder) is different. A fair bit of research work went into C++ compiler technology to make classes more efficient than they were when C++ started out.

Plus de réponses (0)

Catégories

En savoir plus sur C Shared Library Integration dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by