Change in project structure

Dec 11, 2015 at 9:00 AM
Hi –

We are restructuring the directory layout of the CNTK repo. The purpose of this email is to
  • Inform you about the forthcoming changes
  • Give you the ability to commit your changes into your branches to avoid as much merge/rebase work as possible
  • Comment on the new layout structure
The change is planned for the night between Tuesday, December 15 and Wednesday, December 16 (PST). We think that will give you enough time to plan/commit your ongoing work. It will also give all of us enough time to fix any unforeseen hiccup we might encounter before many of us will go onto our well deserved winter break ;)

The changes are described at the bottom, please let us know any major issues you see with this restructuring and/or the planned schedule.


New directory structure

One of the ideas behind the new structure is, apart from making it more logic, understandable and straightforward, to make it as close to CNTK.sln structure as possible.
The first three layers are presented with comments in square brackets regarding how it maps to today’s structure.
  • Documentation
  • Examples
    • GettingStarted [from Demos]
    • Image [Image related folders from ExampleSetups]
    • Speech [Speech related folders from ExampleSetups]
    • Text [Text related folders from ExampleSetups]
  • Source
    • Actions [from MachineLearning, removed CNTK prefix and Lib postfix]
    • CNTK [from MachineLearning]
    • Common [from Common/Include]
    • ComputationNetwork [from MachineLearning, removed CNTK prefix and Lib postfix]
    • Eval [from MachineLearning, removed CNTK prefix]
    • Math [from Math/Math, removed double layered Math]
    • Readers (All active readers [from DataReaders + Kaldi])
    • SequenceTraining [from MachineLearning, removed CNTK prefix and Lib postfix]
    • SGD [from MachineLearning, removed CNTK prefix and Lib postfix]
    • Scripting [from BrainScript + MachineLearning/ParseConfig]
  • Tests
    • EndToEndTests
    • UnitTests [existing boost test + still scattered test files]
    • Tools [also contains previous content of Scripts folder]
Files in root folder
The root folder of CNTK repository will contain the following files:
  • CNTK.sln
  • Makefile
  • GitHub service files
Dec 15, 2015 at 9:40 AM
Hi -

just as a reminder - the restructuring will happen tomorrow ...