Search code examples
c#cntk

c# Wrapper for CNTK steps


I'm having some issues at running CNTK on c# wrapper. I see rold2007 had success on doing the same thing. There got to be something simple that I missed. Any advice would be greatly appreciated.

The steps I used are as follow:

  1. use the source code from C#
  2. generate a new dos application and copy the new code to it.
  3. building the program, the following error occurred at line
    using (var model = new IEvaluateModelManagedF()) Wit error message:

Severity Code Description Project File Line Suppression State Error CS0246 The type or namespace name 'IEvaluateModelManagedF' could not be found (are you missing a using directive or an assembly reference?)

VS version: vs community 2015 OS: windows 10. CNTK: Downloaded binary. Able to run a sample program.


Solution

  • Your project needs to reference EvalWrapper.dll. In the same directory as the DLL, you need to have a list of other DLLs that are used. See the detailed discussion on the CNTK GitHub page. If you are running a CPU-only build, this is the list of DLLs:

    • EvalDll.dll
    • EvalWrapper.dll
    • libacml_mp_dll.dll
    • libifcoremd.dll
    • libifportmd.dll
    • libiomp5md.dll
    • libmmd.dll
    • Math.dll
    • svml_dispmd.dll

    Update

    CNTK has switched from ACML to Intel MKL as of August 2016 (see Release Notes). After this change, the list of required DLLs is

    • EvalDll.dll
    • EvalDll.lib
    • EvalWrapper.dll
    • Math.dll
    • libiomp5md.dll
    • mkl_cntk_p.dll