I'm wondering if anyone happens to know of a good optimized math library for powerpc. I'm specifically running an MPC5566 and would love it if it had SPE support and, icing on the cake a DO-178B cert package. I'll take most anything though.
The specific functionality I need is sin, cos, (tan), + inversions, sqrt, and cube root. Optimized double precision floating point basic math would be amazing.
Googling finds your post and this, from 1996:
archive.org has lots of captures, most of which divert to Freescale "general pages", but if you go back far enough:
You have options to download for Win NT, BeOS or MacOS, but the downloading doesn't work.
What's wrong with the libraries that came with your compiler?
Good morning TomE,
Principally I'm just trying to see if there's anything out there better than what I have already. Motivation? I have a very math intensive realtime project that's experiencing timing issues. An immediate candidate for optimization is all that math, especially as the MPC5566 doesn't have double precision floating point. I'm trying to move as much as I can to single precision, but my current library does everything in double precision anyways. It also doesn't utilize the SPE.
What I currently use is the GoFast library, and it's really not all that bad. It gives me 25% over the native compiler library. Still, as I have yet to go through the effort of certifying any math library it gives me some wiggle room to find further performance gains.
As to LibMoto, my understanding is that it was optimized specifically for the e500 core and that it's performance on the e200 core was not particularly amazing. Saying that, I did find on freescale's site a link to download the library so I'll give it a shot.
Does Code Warrior offer any specific support for the hardware in this chip? Does it provide any configuration settings or libraries targeted at the single-precision hardware and/or the SPE?
I'd suggest you look in the "CodeWarrior for ColdFire and Power" Forum and search for "SPE" and "single precision". There are some interesting matches there. From one of the posts it looks like the Wizard allows the project to be set for None, Software or SPE floating point for these chips.
I don't know if you're already using CodeWarrior. If not, you might be able to run an evaluation copy to see if it has better support for the hardware that what you're currently using. Please let us know what you find.