How to change Floating Point Control Word (FPCW) in MATLAB?

1 vue (au cours des 30 derniers jours)
Fred
Fred le 3 Sep 2015
Modifié(e) : bel yon le 15 Août 2020
Hello All,
Does anyone knows how to change Floating Point Control Word (FPCW) in MATLAB, either increase or decrease it?
I'm using MATLAB15a.
Thanks,

Réponses (2)

Walter Roberson
Walter Roberson le 3 Sep 2015
Modifié(e) : Walter Roberson le 4 Sep 2015
You can find more information about system_dependent on undocumentedmatlab.com .
Note: system_dependent only allows float control in MS Windows.
  4 commentaires
Steven Lord
Steven Lord le 12 Août 2020
bel yon, why do you need or want to change the floating point control word?
bel yon
bel yon le 15 Août 2020
Modifié(e) : bel yon le 15 Août 2020
Thank you for the quick response. It seems that the MATLAB's precision must be only 24, 53 or 64?
I am using the MATLAB COM interface for OpenDSS, where OpenDSS uses 80-bit floating-point values. more detailes in the discussion: https://sourceforge.net/p/electricdss/discussion/861976/thread/d3d147ec/#c3a2

Connectez-vous pour commenter.


Fred
Fred le 4 Sep 2015
I have seen the link but I could not quite get what should I do, and also the thing they are doing it in C but I'm using pure Matlab, I need something more like for normal MATLAB users.
  2 commentaires
Walter Roberson
Walter Roberson le 4 Sep 2015
You will need to be specific about which operating system you are using and which possibilities you want the user to be able to select.
The documentation that I am scanning indicates that the FPCW handles only the x87 FPU calculations, and that these days a lot of calculations are done in SSE and SSE2 instructions which use a different control register http://developer.amd.com/community/blog/2009/07/06/ieee-floating-point-exception-handling-in-windows-os/ . MATLAB calls into highly optimized libraries for larger calculations, and those optimized libraries are likely to be using SSE* or whatever post-x87 they can leverage because x87 performance is not scalable. If you adjust the FPCW you run into the possibility that the output behavior you see will depend upon the size of your data in ways that are not intuitive, with "small" calculations being affected (because they might run on x87) and "big" calculations not being affected (because they run on higher performance architectures, possibly even GPUs.)
Steven Lord
Steven Lord le 4 Sep 2015
If you're using "pure Matlab[sic]" then you shouldn't really NEED to fiddle with the FPCW. What is your use case for doing so?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Parallel Computing Fundamentals 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!

Translated by