Terribly sorry if this question is absolutely silly…

I was reading the ACML pdf documentation because am having trouble getting a program to compile that looks for BLAS, LAPACK, and FFT stuff.

The docuementation talks about acml installed in opt/acml3.x.x

I don’t have a directory like that on my machine (linux Suse 10.0)

Is the Similarly I cant run acmlversion, or acmlinfo utilities

DOES ACML come as part of the PGI Workstation, or do I need to install seperately?


Hi Buddy,

PGI just bundles the ACML libraries. The full package can be obtained direct from AMD at

Hope this helps,


I see form the ACML docs that you can point acml for 64 vs 32 and also for multiple processors. My machine is a 2 processor machine. In the current implementation (as you described) am I optimal for a 2 processor machine? Would I be better off with getting acml directly, or no difference.


Hi Buddy,

ACML does have an OpenMP version available and we’ve started to distribute the static library as of the 6.1 release. Simply use “-lacml_mp” instead of “-lacml”. AMD calls all versions of the library “libacml” and uses different directories to distinguish between the versions. Since we use a single lib directory, we changed the name to “libacml_mp.a”. We’re trying to get the dynamic version as well, but naming issues has prevented this from working correctly. For now, if you need the dynamic version you’ll need to download it from AMD.

Note that you must set the environment variable “NCPUS” to the number processors on your system in order to have the process execute in parallel.

Have you tried using “-Mconcur” and it’s sub-options to auto-parallelize your code? It doesn’t work in all cases, and can slow down some codes, but it’s worth a look. Also use “-Minfo -Mneginfo=concur” to have the compiler tell you which loops it has and has not parallelized (and why it couldn’t parallelize a loop). If a loop wasn’t parallelized, try to determine if source code changes can enable it.

Hope this helps,