Mex speed slower on linux than Windows

I have been trying to use mex to speed up some of my functions. I was surprised that running the same compiled mex code on windows 7 (on a inferior machine) is faster than that on a linux (Scientific Linux 6).
Windows 7
Compiler: Visual Studio C++ 2012
Processor: i5-2450M (2.5 GHz)
Elapsed time is 2.761036 seconds.
Linux
Compiler: GCC 4.4.7
Processor: Intel(R) Xeon(R) CPU X5482 @ 3.20GHz
Elapsed time is 8.622023 seconds.
I cannot figure out why a more powerful processor will be slower in running the same mex file. Thank you for your help!

Réponses (1)

Rick Rosson
Rick Rosson le 8 Jan 2015
Modifié(e) : Rick Rosson le 8 Jan 2015

3 votes

They are not the same MEX function - different compilers, different instruction set architectures, different assemblers, different linkers, different loaders, different operating systems, different memory architectures, etc.

Catégories

En savoir plus sur Write C Functions Callable from MATLAB (MEX Files) dans Centre d'aide et File Exchange

Question posée :

le 7 Jan 2015

Modifié(e) :

le 8 Jan 2015

Community Treasure Hunt

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

Start Hunting!

Translated by