about FPM_INTEL / ASO_ZEROCHECK

View: New views
2 Messages — Rating Filter:   Alert me  

about FPM_INTEL / ASO_ZEROCHECK

by leon deng :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi, guys
How is it going?
when I build libmad in different platforms, i found two flags settings are different. I do not understand what those flags are used for, can any expert tell me about it?
When i build libmad , i first ./configure, and then make.
when I build it on 32 bits mac and 32 bits centOS,  i have flags
FPM_INTEL
ASO_ZEROCHECK

when I build it on 64 bits ubuntu and 64 bits centOS, I have flags
 FPM_DEFAULT
In this case, Makefile do not have ASO_ZEROCHECK flag.

i try to build libmad in my own program on those systems.  i need to set the flags in my program.

Any ideas about this?

Another question is about : 
in libmad Makefile, there are lots of optimization flags. are those flags critical and should I also brought them all to  my program?

Thanks!
Leon

Re: about FPM_INTEL / ASO_ZEROCHECK

by Rob Leslie :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Oct 9, 2009, at 4:14 PM, leon deng wrote:

> when I build libmad in different platforms, i found two flags  
> settings are different. I do not understand what those flags are  
> used for, can any expert tell me about it?
> When i build libmad , i first ./configure, and then make.
> when I build it on 32 bits mac and 32 bits centOS,  i have flags
> FPM_INTEL
> ASO_ZEROCHECK
>
> when I build it on 64 bits ubuntu and 64 bits centOS, I have flags
>  FPM_DEFAULT
> In this case, Makefile do not have ASO_ZEROCHECK flag.

Probably they should be the same for 64 bits (amd64) as for 32 bits  
(i386).

FPM_INTEL means to use the x86 assembler instructions for fixed-point  
multiplication.  ASO_ZEROCHECK is an optimization that works well  
under x86 so should be enabled by default.

You could try FPM_64BIT as an alternative.  FPM_DEFAULT should be  
avoided because it provides poor accuracy.

> Another question is about :
> in libmad Makefile, there are lots of optimization flags. are those  
> flags critical and should I also brought them all to  my program?

The optimization flags were hand-picked because at the time they were  
chosen they worked better than e.g. a simple -O2.  They are only  
useful when building libmad and are probably not necessary to  
duplicate for the rest of your program.

--
Rob Leslie
rob@...