Terry1998 Terry1998 - 10 months ago 236
C# Question

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.

Answer Source

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


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