This is a project that combines lessons and ideas we learnt from cxxnet, minerva and purine2.
- The interface is designed in collaboration by authors of three projects.
- Nothing is yet working
- Use google c style
- Put module header in include
- Depend on dmlc-core
- Doxygen comment every function, class and variable for the module headers
- Ref headers in dmlc-core/include
- Use the same style as dmlc-core
- Minimize dependency, if possible only depend on dmlc-core
- Macro Guard CXX11 code by
- Try to make interface compile when c++11 was not avaialable(but with some functionalities pieces missing)
#include <dmlc/base.h>
#if DMLC_USE_CXX11
// c++11 code here
#endif
- Update the dependencies by
git submodule foreach --recursive git pull origin master
- For heterogenous hardware support (CPU/GPU). Hope the GPU-specific component could be isolated easily. That is too say if we use
USE_CUDA
macro to wrap gpu-related code, the macro should not be everywhere in the project.