Is using classes vs. structures more computationally efficient? Especially with parallelization ? What about MATLAB Compiler?
18 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Michael
le 26 Juin 2021
Réponse apportée : Walter Roberson
le 26 Juin 2021
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
0 commentaires
Réponse acceptée
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.
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur C Shared Library Integration dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!