Are MATLAB's inbuilt functions and official toolboxes cross-platform consistent?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
CBhushan
el 28 de Jul. de 2014
Comentada: Andreas Goser
el 29 de Jul. de 2014
I am writing some code which would be executed on different operating systems, both inside MATLAB and in MCR enviroment. My code does not make use of any random number generator (i.e. the algorithm is completely deterministic) and only make use of inbuilt functions and official toolboxes. I want to know if the inputs are exactly same then would the outputs generated on different platforms be exactly same? In other words, if macOutput and winOutput are output arrays on Mac and Windows platform respectively, then would following always return true ?
isequal(macOutput, winOutput)
0 comentarios
Respuesta aceptada
Andreas Goser
el 28 de Jul. de 2014
I would like to respond to a modified version of this question: "How can I make sure the behaviour and numerical results of MATLAB applications are identical across platforms?"
Note that I write "platform" and not "OS", as one important factor in the area of numerical results is the 32bit/64 bit architecture differences and the 32/64 bit MATLAB versions. You may also have slightly different results as of BLAS differences. When using e.g. optimization routines, this can result in large differences. The robustness is depending on data and algorithms.
As for OS, the biggest difference I am aware of is about interfaces with other applications or OS. Like reading from Excel or creating MEX files (being depending on different C Compilers).
2 comentarios
Andreas Goser
el 29 de Jul. de 2014
In general you can expect numerical results are the same. I am kind of "collecting" reasons for different results, but the feedback frm the community is limited: http://www.mathworks.com/matlabcentral/answers/438-why-are-computational-results-in-matlab-sometimes-different-on-different-machines-and-how-can-i-prev - which get be seen as something good, as it rarely happens. Basically if you can exclude what you call "some ill-posed problem", then you'll be fine.
Más respuestas (0)
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!