This project is read-only.

System requirements:

If you get any error messages about missing assemblies, please submit them via the issue tracker.

Vectorized functions

  • vCos(x) Cosine of x
  • vSin(x) Sine of x
  • vLog(x) Natural log of x
  • vLog10(x) Log base 10 of x
  • vLog2(x) Log base 2 of x
  • vPow(x,y) Raises x to the power y
  • Spline(xKnown, yKnown, xNew) does a cubic spline interpolation.


Q. How do I use the functions in a array/vectorized form?
A. To properly use the vectorized (i.e. fast) version of the functions, select the output region, input the function of interest, and hit CTRL-SHIFT-ENTER.
This is known as an "Array Formula" and you can find plenty of documentation on "Array Formula"s online.

Q. Does this library use single or double precision floating point?
A. Single precision for now. This is because a lot of AMD GPUs only support single-precision GPU-accelerated calculations at the time of this writing.

Q. How can I make sure the AMD DLL's can be found by the dynamic linker?
A. Be sure to add a the path to AMD DLL's to your %PATH% environment (Start->Control Panel->User Accounts->Change my environment variables).
For me that's adding a PATH variable defined as:

Q. I am not seeing the AddIn in my list of AddIns in Excel. How do I register the DLL so that the Excel properly recognizes the DLL?
A. In order to allow development without running Visual Studio as administrator, Registering the COM Interop has been disabled.
To register the DLL for use in Excel, run the following command as Administrator
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe /codebase ACMLExcelAddIn.dll
To unregister the DLL, use the following
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe /u ACMLExcelAddIn.dll

Q. Is there a 32-bit version of a this DLL that uses 64-bit acceleration?
A. No, not yet. If you want interpolation, try XlXtrFun. There may be 32-bit build in the future, but they will not be accelerated and would only act as a compatibility library.

Q. Is this DLL thread-safe for use by multiple clients on the same machine, or parallel calculations?
A. Maybe. The library is programmed to parallelize the portions that can be parallelized in a thread-safe manner.
Using standard ACML should not pose any issues.
Using ACML-GPU may or may not pose issues as there are aspects of ACML-GPU that are not threadsafe.
If you are planning on having multiple instances of the calculations run on the same machine simulataneously, use the standard ACML.

Last edited Mar 22, 2011 at 3:45 AM by filmorependrgn, version 5


No comments yet.