https://github.com/Microsoft/CNTK
Revision 6fb30c545d25351c9fca2987c5c23e11d9528192 authored by Momcilo Vasilijevic on 01 September 2016, 09:32:52 UTC, committed by Momcilo Vasilijevic on 28 October 2016, 16:54:25 UTC
Value of accumulator node contains mean sample value of its input node
values since the beginning of training epoch.
Also, refactor crop node tests. Dummy input node was as part of epoch
accumulator node tests. Removing class with the same functionality from
crop node tests and reusing newly introduced one.
1 parent 7b7f347
Raw File
Tip revision: 6fb30c545d25351c9fca2987c5c23e11d9528192 authored by Momcilo Vasilijevic on 01 September 2016, 09:32:52 UTC
Add accumulator node
Tip revision: 6fb30c5
CNTK.Cpp.props
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <!-- Note: SolutionDir / RepoRootPath are the same in current setup -->
    <RepoRootPath>$(MSBuildThisFileDirectory)</RepoRootPath>
    <RelativeProjectPath>$(MSBuildProjectDirectory.Substring($(MSBuildThisFileDirectory.Length)))</RelativeProjectPath>

    <OutDir>$(RepoRootPath)$(Platform)\$(Configuration)\</OutDir>
    <IntDir>$(RepoRootPath)$(Platform)\.build\$(Configuration)\$(RelativeProjectPath)\</IntDir>

    <DebugBuild>false</DebugBuild>
    <DebugBuild Condition="$(Configuration.StartsWith('Debug'))">true</DebugBuild>

    <ReleaseBuild>false</ReleaseBuild>
    <ReleaseBuild Condition="!$(DebugBuild)">true</ReleaseBuild>

    <GpuBuild>true</GpuBuild>
    <GpuBuild Condition="$(Configuration.EndsWith('_CpuOnly'))">false</GpuBuild>

    <CpuOnlyBuild>true</CpuOnlyBuild>
    <CpuOnlyBuild Condition="$(GpuBuild)">false</CpuOnlyBuild>

    <NoOptBuild>false</NoOptBuild>
    <NoOptBuild Condition="$(Configuration.Contains('NoOpt'))">true</NoOptBuild>

    <NvmlInclude>"c:\Program Files\NVIDIA Corporation\GDK\gdk_win7_amd64_release\nvml\include"</NvmlInclude>
    <NvmlLibPath>"c:\Program Files\NVIDIA Corporation\GDK\gdk_win7_amd64_release\nvml\lib"</NvmlLibPath>

    <CudaVersion/>
    <CudaVersion Condition="Exists('$(CUDA_PATH_V8_0)') And '$(CudaVersion)' == ''">8.0</CudaVersion>
    <CudaVersion Condition="Exists('$(CUDA_PATH_V7_5)') And '$(CudaVersion)' == ''">7.5</CudaVersion>
    <CudaVersion Condition="Exists('$(CUDA_PATH_V7_0)') And '$(CudaVersion)' == ''">7.0</CudaVersion>

    <HasOpenCv>false</HasOpenCv>
    <HasOpenCv Condition="Exists('$(OPENCV_PATH)') Or Exists('$(OPENCV_PATH_V31)')">true</HasOpenCv>
    
    <HasProtobuf>false</HasProtobuf>
    <HasProtobuf Condition="Exists('$(PROTOBUF_PATH)')">true</HasProtobuf>

    <HasBoost>false</HasBoost>
    <HasBoost Condition="Exists('$(BOOST_INCLUDE_PATH)') And Exists('$(BOOST_LIB_PATH)')">true</HasBoost>

    <UseZip>false</UseZip>
    <UseZip Condition="Exists('$(ZLIB_PATH)')">true</UseZip>
  </PropertyGroup>

  <PropertyGroup>
	<MathLibrary>MKL</MathLibrary>
	<CNTKCustomMKLVersion>2</CNTKCustomMKLVersion>
	<CNTKCustomMKLPath>$(CNTK_MKL_PATH)\$(CNTKCustomMKLVersion)</CNTKCustomMKLPath>
	<MathIncludePath>$(CNTKCustomMKLPath)\include</MathIncludePath>
	<MathDefine>USE_MKL</MathDefine>
  </PropertyGroup>
  <PropertyGroup Condition="'$(CNTK_MKL_SEQUENTIAL)' != '1'">
	<MathLibraryName>CNTK custom MKL Parallel (Version: $(CNTKCustomMKLVersion))</MathLibraryName>
	<MathLibraryPath>$(CNTKCustomMKLPath)\x64\parallel</MathLibraryPath>
	<MathLinkLibrary>mkl_cntk_p.lib</MathLinkLibrary>
	<MathDelayLoad>mkl_cntk_p.dll</MathDelayLoad>
	<MathPostBuildCopyPattern>$(MathLibraryPath)\*.dll</MathPostBuildCopyPattern>
	<UnitTestDlls>$(OutDir)mkl_cntk_p.dll;$(OutDir)libiomp5md.dll;</UnitTestDlls>
  </PropertyGroup>
  <PropertyGroup Condition="'$(CNTK_MKL_SEQUENTIAL)' == '1'">
	<MathLibraryName>CNTK custom MKL Sequential (Version: $(CNTKCustomMKLVersion))</MathLibraryName>
	<MathLibraryPath>$(CNTKCustomMKLPath)\x64\sequential</MathLibraryPath>
	<MathLinkLibrary>mkl_cntk_s.lib</MathLinkLibrary>
	<MathDelayLoad>mkl_cntk_s.dll</MathDelayLoad>
	<MathPostBuildCopyPattern>$(MathLibraryPath)\*.dll</MathPostBuildCopyPattern>
	<UnitTestDlls>$(OutDir)mkl_cntk_s.dll;</UnitTestDlls>
  </PropertyGroup>

  <PropertyGroup Condition="$(UseZip)">
    <ZipInclude>$(ZLIB_PATH)\include;$(ZLIB_PATH)\lib\libzip\include;</ZipInclude>
    <ZipDefine>USE_ZIP</ZipDefine>
    <ZipLibPath>$(ZLIB_PATH)\lib;</ZipLibPath>
    <ZipLibs>zlib.lib;zip.lib;</ZipLibs>
  </PropertyGroup>

  <PropertyGroup Condition="Exists('$(OPENCV_PATH)')">
    <OpenCvPath>$(OPENCV_PATH)</OpenCvPath>
    <OpenCvVersion>300</OpenCvVersion>
  </PropertyGroup>

  <PropertyGroup Condition="Exists('$(OPENCV_PATH_V31)')">
    <OpenCvPath>$(OPENCV_PATH_V31)</OpenCvPath>
    <OpenCvVersion>310</OpenCvVersion>
  </PropertyGroup>

  <PropertyGroup Condition="$(HasOpenCv)">
    <OpenCvInclude>$(OpenCvPath)\include;</OpenCvInclude>
    <OpenCvWorld Condition="$(ReleaseBuild)">opencv_world$(OpenCvVersion)</OpenCvWorld>
    <OpenCvWorld Condition="$(DebugBuild)">opencv_world$(OpenCvVersion)d</OpenCvWorld>
    <OpenCvLib>$(OpenCvWorld).lib</OpenCvLib>
    <OpenCvLibPath>$(OpenCvPath)\x64\vc12\lib</OpenCvLibPath>
    <OpenCvBinPath>$(OpenCvPath)\x64\vc12\bin</OpenCvBinPath>
  </PropertyGroup>

  <PropertyGroup Condition="$(HasProtobuf)">
    <ProtobufInclude>$(PROTOBUF_PATH)\include;</ProtobufInclude>
    <ProtobufLibPath>$(PROTOBUF_PATH)\lib;</ProtobufLibPath>
    <ProtobufLib Condition="$(ReleaseBuild)">libprotobuf.lib</ProtobufLib>
    <ProtobufLib Condition="$(DebugBuild)">libprotobufd.lib</ProtobufLib>
  </PropertyGroup>

  <PropertyGroup Condition="'$(CudaVersion)' == '8.0'">
    <CudaPath>$(CUDA_PATH_V8_0)</CudaPath>
    <CudaRuntimeDll>cudart64_80.dll</CudaRuntimeDll>
    <CudaDlls>cublas64_80.dll;cusparse64_80.dll;curand64_80.dll;$(CudaRuntimeDll)</CudaDlls>
  </PropertyGroup>

  <PropertyGroup Condition="'$(CudaVersion)' == '7.5'">
    <CudaPath>$(CUDA_PATH_V7_5)</CudaPath>
    <CudaRuntimeDll>cudart64_75.dll</CudaRuntimeDll>
    <CudaDlls>cublas64_75.dll;cusparse64_75.dll;curand64_75.dll;$(CudaRuntimeDll)</CudaDlls>
  </PropertyGroup>

  <PropertyGroup Condition="'$(CudaVersion)' == '7.0'">
    <CudaPath>$(CUDA_PATH_V7_0)</CudaPath>
    <CudaRuntimeDll>cudart64_70.dll</CudaRuntimeDll>
    <CudaDlls>cublas64_70.dll;cusparse64_70.dll;curand64_70.dll;$(CudaRuntimeDll)</CudaDlls>
  </PropertyGroup>

  <PropertyGroup>
    <CudaLibs>cudart.lib;cublas.lib;cusparse.lib;curand.lib</CudaLibs>
    <CudaInclude>$(CudaPath)\include</CudaInclude>
    <CudaLibPath>$(CudaPath)\lib\$(Platform)</CudaLibPath>
  </PropertyGroup>

  <!-- TODO warn if ConfigurationType not (yet) defined -->

  <PropertyGroup Condition="'$(ConfigurationType)' == 'StaticLibrary'">
    <UseDebugLibraries>$(DebugBuild)</UseDebugLibraries>
    <PlatformToolset>v120</PlatformToolset>
    <CharacterSet>Unicode</CharacterSet>
    <WholeProgramOptimization>$(ReleaseBuild)</WholeProgramOptimization>
    <LinkIncremental>$(DebugBuild)</LinkIncremental>
  </PropertyGroup>

  <ItemDefinitionGroup Condition="'$(ConfigurationType)' == 'StaticLibrary'">
    <ClCompile>
      <WarningLevel>Level4</WarningLevel>
      <TreatWarningAsError>true</TreatWarningAsError>
      <SDLCheck>true</SDLCheck>
      <OpenMPSupport>true</OpenMPSupport>
    </ClCompile>
    <Link>
      <SubSystem>Console</SubSystem>
      <GenerateDebugInformation>true</GenerateDebugInformation>
    </Link>
  </ItemDefinitionGroup>

  <ItemDefinitionGroup Condition="'$(ConfigurationType)' == 'StaticLibrary' And $(DebugBuild)">
    <ClCompile>
      <Optimization>Disabled</Optimization>
      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
    <Link>
      <StackReserveSize>100000000</StackReserveSize>
    </Link>
  </ItemDefinitionGroup>

  <ItemDefinitionGroup Condition="'$(ConfigurationType)' == 'StaticLibrary' And $(ReleaseBuild) And !$(NoOptBuild)">
    <ClCompile>
      <Optimization>MaxSpeed</Optimization>
      <FunctionLevelLinking>true</FunctionLevelLinking>
      <IntrinsicFunctions>true</IntrinsicFunctions>
      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
    <Link>
      <EnableCOMDATFolding>true</EnableCOMDATFolding>
      <OptimizeReferences>true</OptimizeReferences>
      <Profile>true</Profile>
    </Link>
  </ItemDefinitionGroup>

  <ItemDefinitionGroup Condition="$(NoOptBuild)">
    <ClCompile>
      <Optimization>Disabled</Optimization>
      <FunctionLevelLinking>false</FunctionLevelLinking>
      <IntrinsicFunctions>false</IntrinsicFunctions>
    </ClCompile>
    <Link>
      <OptimizeReferences>false</OptimizeReferences>
    </Link>
  </ItemDefinitionGroup>

</Project>
back to top