Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/clementfarabet/lua---nnx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkoray kavukcuoglu <koray@kavukcuoglu.org>2011-10-02 16:46:12 +0400
committerkoray kavukcuoglu <koray@kavukcuoglu.org>2011-10-02 16:46:12 +0400
commitb97099b3253362dc2c14994e4783a731e2eb1afb (patch)
treea9f77376cd068919b007d2ae954750e29bb9d5ff
parent72595c7a99e757d7ef34abd5546b62a1f7a8511d (diff)
converted build system to cmake compatible. CUDA + CMAKE is not handled properly I think.
-rw-r--r--CMakeLists.txt128
-rw-r--r--nnx-1.0-1.rockspec117
-rw-r--r--test/CMakeLists.txt7
3 files changed, 133 insertions, 119 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..52e3acd
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,128 @@
+cmake_minimum_required(VERSION 2.8)
+
+set (CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
+
+IF(${CMAKE_PROJECT_NAME} STREQUAL "Torch")
+ SET(TORCH_LIBRARIES TH luaT)
+ SET(TORCH_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
+ SET(TORCH_TH TH)
+ SET(TORCH_luaT luaT)
+
+ SET(INSTALL_PREFIX /${Torch_INSTALL_LUA_PATH_SUBDIR}/nnx)
+ SET(CINSTALL_PREFIX /${Torch_INSTALL_LUA_CPATH_SUBDIR})
+ INCLUDE_DIRECTORIES(${LUA_INCLUDE_DIR})
+ SET(LIBS ${TORCH_LIBRARIES} ${LUA_LIBRARIES})
+ELSE(${CMAKE_PROJECT_NAME} STREQUAL "Torch")
+ # infer path for Torch7
+ string (REGEX REPLACE "(.*)lib/luarocks/rocks.*" "\\1" TORCH_PREFIX "${CMAKE_INSTALL_PREFIX}" )
+ message (STATUS "Found Torch7, installed in: " ${TORCH_PREFIX})
+
+ find_package (Torch REQUIRED)
+ SET(INSTALL_PREFIX /lua/nnx)
+ SET(CINSTALL_PREFIX /lib)
+ENDIF(${CMAKE_PROJECT_NAME} STREQUAL "Torch")
+
+find_package (OpenMP REQUIRED)
+
+if (OPENMP_FOUND)
+ message (STATUS "OpenMP Found with compiler flag : ${OpenMP_C_FLAGS}")
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
+endif (OPENMP_FOUND)
+
+set (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+
+include_directories (${TORCH_INCLUDE_DIR} ${PROJECT_SOURCE_DIR})
+
+SET(WITH_CUDA OFF CACHE BOOL "Compile qlua and associated packages")
+
+IF(EXISTS "${TORCH_BIN_DIR}/../include/THC/THC.h")
+ FIND_PACKAGE(CUDA 4.0)
+ENDIF(EXISTS "${TORCH_BIN_DIR}/../include/THC/THC.h")
+
+IF (CUDA_FOUND)
+ # bug on Apple
+ IF(APPLE)
+ LINK_DIRECTORIES("/usr/local/cuda/lib/")
+ ENDIF(APPLE)
+
+ find_library (TORCH_THC THC ${TORCH_BIN_DIR}/../lib NO_DEFAULT_PATH)
+
+ set (TORCH_LIBRARIES ${TORCH_TH} ${TORCH_THC} ${TORCH_luaT} ${TORCH_lua})
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWITH_CUDA")
+
+ cuda_add_library (lbfgs SHARED lbfgs.c)
+ target_link_libraries (lbfgs ${TORCH_LIBRARIES})
+ CUDA_ADD_CUBLAS_TO_TARGET(lbfgs)
+ install_targets (${CINSTALL_PREFIX} lbfgs)
+
+ELSE (CUDA_FOUND)
+
+ MESSAGE(STATUS "Disabling CUDA (CUDA 4.0 required, and not found)")
+ MESSAGE(STATUS "If CUDA 4.0 is installed, then specify CUDA_TOOLKIT_ROOT_DIR")
+
+ set (TORCH_LIBRARIES ${TORCH_TH} ${TORCH_luaT} ${TORCH_lua})
+
+ add_library (lbfgs SHARED lbfgs.c)
+ target_link_libraries (lbfgs ${TORCH_LIBRARIES})
+ install_targets (${CINSTALL_PREFIX} lbfgs)
+
+ENDIF (CUDA_FOUND)
+
+include_directories (${TORCH_INCLUDE_DIR} ${PROJECT_SOURCE_DIR})
+add_library (nnx SHARED init.c)
+link_directories (${TORCH_LIBRARY_DIR})
+target_link_libraries (nnx ${TORCH_LIBRARIES})
+
+install_files(${INSTALL_PREFIX} init.lua)
+install_files(${INSTALL_PREFIX} Abs.lua)
+install_files(${INSTALL_PREFIX} ConfusionMatrix.lua)
+install_files(${INSTALL_PREFIX} DistNLLCriterion.lua)
+install_files(${INSTALL_PREFIX} KLDivCriterion.lua)
+install_files(${INSTALL_PREFIX} DistMarginCriterion.lua)
+install_files(${INSTALL_PREFIX} Logger.lua)
+install_files(${INSTALL_PREFIX} Probe.lua)
+install_files(${INSTALL_PREFIX} HardShrink.lua)
+install_files(${INSTALL_PREFIX} Narrow.lua)
+install_files(${INSTALL_PREFIX} Type.lua)
+install_files(${INSTALL_PREFIX} Power.lua)
+install_files(${INSTALL_PREFIX} Square.lua)
+install_files(${INSTALL_PREFIX} Sqrt.lua)
+install_files(${INSTALL_PREFIX} Threshold.lua)
+install_files(${INSTALL_PREFIX} OmpModule.lua)
+install_files(${INSTALL_PREFIX} SpatialClassifier.lua)
+install_files(${INSTALL_PREFIX} SpatialMaxPooling.lua)
+install_files(${INSTALL_PREFIX} SpatialLinear.lua)
+install_files(${INSTALL_PREFIX} SpatialPadding.lua)
+install_files(${INSTALL_PREFIX} SpatialNormalization.lua)
+install_files(${INSTALL_PREFIX} SpatialUpSampling.lua)
+install_files(${INSTALL_PREFIX} SpatialReSampling.lua)
+install_files(${INSTALL_PREFIX} SpatialConvolutionSparse.lua)
+install_files(${INSTALL_PREFIX} SuperCriterion.lua)
+install_files(${INSTALL_PREFIX} SpatialCriterion.lua)
+install_files(${INSTALL_PREFIX} Trainer.lua)
+install_files(${INSTALL_PREFIX} OnlineTrainer.lua)
+install_files(${INSTALL_PREFIX} DataSet.lua)
+install_files(${INSTALL_PREFIX} DataList.lua)
+install_files(${INSTALL_PREFIX} DataSetLabelMe.lua)
+install_files(${INSTALL_PREFIX} CMulTable.lua)
+install_files(${INSTALL_PREFIX} CAddTable.lua)
+install_files(${INSTALL_PREFIX} CDivTable.lua)
+install_files(${INSTALL_PREFIX} CSubTable.lua)
+install_files(${INSTALL_PREFIX} Replicate.lua)
+install_files(${INSTALL_PREFIX} SpatialFovea.lua)
+install_files(${INSTALL_PREFIX} SpatialMSECriterion.lua)
+install_files(${INSTALL_PREFIX} SpatialClassNLLCriterion.lua)
+install_files(${INSTALL_PREFIX} SparseCriterion.lua)
+install_files(${INSTALL_PREFIX} SpatialSparseCriterion.lua)
+install_files(${INSTALL_PREFIX} SpatialGraph.lua)
+install_files(${INSTALL_PREFIX} SpatialColorTransform.lua)
+install_files(${INSTALL_PREFIX} SpatialRecursiveFovea.lua)
+install_files(${INSTALL_PREFIX} Optimization.lua)
+install_files(${INSTALL_PREFIX} LBFGSOptimization.lua)
+install_files(${INSTALL_PREFIX} CGOptimization.lua)
+install_files(${INSTALL_PREFIX} SGDOptimization.lua)
+install_files(${INSTALL_PREFIX} GeneticSGDOptimization.lua)
+install_files(${INSTALL_PREFIX} BatchOptimization.lua)
+install_files(${INSTALL_PREFIX} BatchTrainer.lua)
+add_subdirectory (test)
+install_targets(${CINSTALL_PREFIX} nnx)
diff --git a/nnx-1.0-1.rockspec b/nnx-1.0-1.rockspec
index b58ea4e..aafe234 100644
--- a/nnx-1.0-1.rockspec
+++ b/nnx-1.0-1.rockspec
@@ -29,123 +29,6 @@ dependencies = {
build = {
type = "cmake",
- cmake = [[
- cmake_minimum_required(VERSION 2.8)
-
- set (CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
-
- # infer path for Torch7
- string (REGEX REPLACE "(.*)lib/luarocks/rocks.*" "\\1" TORCH_PREFIX "${CMAKE_INSTALL_PREFIX}" )
- message (STATUS "Found Torch7, installed in: " ${TORCH_PREFIX})
-
- find_package (Torch REQUIRED)
-
- find_package (OpenMP REQUIRED)
-
- if (OPENMP_FOUND)
- message (STATUS "OpenMP Found with compiler flag : ${OpenMP_C_FLAGS}")
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
- endif (OPENMP_FOUND)
-
- set (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
-
- include_directories (${TORCH_INCLUDE_DIR} ${PROJECT_SOURCE_DIR})
-
- SET(WITH_CUDA OFF CACHE BOOL "Compile qlua and associated packages")
-
- IF(EXISTS "${TORCH_BIN_DIR}/../include/THC/THC.h")
- FIND_PACKAGE(CUDA 4.0)
- ENDIF(EXISTS "${TORCH_BIN_DIR}/../include/THC/THC.h")
-
- IF (CUDA_FOUND)
- # bug on Apple
- IF(APPLE)
- LINK_DIRECTORIES("/usr/local/cuda/lib/")
- ENDIF(APPLE)
-
- find_library (TORCH_THC THC ${TORCH_BIN_DIR}/../lib NO_DEFAULT_PATH)
-
- set (TORCH_LIBRARIES ${TORCH_TH} ${TORCH_THC} ${TORCH_luaT} ${TORCH_lua})
- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWITH_CUDA")
-
- cuda_add_library (lbfgs SHARED lbfgs.c)
- target_link_libraries (lbfgs ${TORCH_LIBRARIES})
- CUDA_ADD_CUBLAS_TO_TARGET(lbfgs)
- install_targets (/lib lbfgs)
-
- ELSE (CUDA_FOUND)
-
- MESSAGE(STATUS "Disabling CUDA (CUDA 4.0 required, and not found)")
- MESSAGE(STATUS "If CUDA 4.0 is installed, then specify CUDA_TOOLKIT_ROOT_DIR")
-
- set (TORCH_LIBRARIES ${TORCH_TH} ${TORCH_luaT} ${TORCH_lua})
-
- add_library (lbfgs SHARED lbfgs.c)
- target_link_libraries (lbfgs ${TORCH_LIBRARIES})
- install_targets (/lib lbfgs)
-
- ENDIF (CUDA_FOUND)
-
- include_directories (${TORCH_INCLUDE_DIR} ${PROJECT_SOURCE_DIR})
- add_library (nnx SHARED init.c)
- link_directories (${TORCH_LIBRARY_DIR})
- target_link_libraries (nnx ${TORCH_LIBRARIES})
-
- install_files(/lua/nnx init.lua)
- install_files(/lua/nnx Abs.lua)
- install_files(/lua/nnx ConfusionMatrix.lua)
- install_files(/lua/nnx DistNLLCriterion.lua)
- install_files(/lua/nnx KLDivCriterion.lua)
- install_files(/lua/nnx DistMarginCriterion.lua)
- install_files(/lua/nnx Logger.lua)
- install_files(/lua/nnx Probe.lua)
- install_files(/lua/nnx HardShrink.lua)
- install_files(/lua/nnx Narrow.lua)
- install_files(/lua/nnx Type.lua)
- install_files(/lua/nnx Power.lua)
- install_files(/lua/nnx Square.lua)
- install_files(/lua/nnx Sqrt.lua)
- install_files(/lua/nnx Threshold.lua)
- install_files(/lua/nnx OmpModule.lua)
- install_files(/lua/nnx SpatialClassifier.lua)
- install_files(/lua/nnx SpatialMaxSampling.lua)
- install_files(/lua/nnx SpatialLinear.lua)
- install_files(/lua/nnx SpatialPadding.lua)
- install_files(/lua/nnx SpatialNormalization.lua)
- install_files(/lua/nnx SpatialUpSampling.lua)
- install_files(/lua/nnx SpatialReSampling.lua)
- install_files(/lua/nnx SpatialConvolutionSparse.lua)
- install_files(/lua/nnx SuperCriterion.lua)
- install_files(/lua/nnx SpatialCriterion.lua)
- install_files(/lua/nnx Trainer.lua)
- install_files(/lua/nnx OnlineTrainer.lua)
- install_files(/lua/nnx DataSet.lua)
- install_files(/lua/nnx DataList.lua)
- install_files(/lua/nnx DataSetLabelMe.lua)
- install_files(/lua/nnx CMulTable.lua)
- install_files(/lua/nnx CAddTable.lua)
- install_files(/lua/nnx CDivTable.lua)
- install_files(/lua/nnx CSubTable.lua)
- install_files(/lua/nnx Replicate.lua)
- install_files(/lua/nnx SpatialFovea.lua)
- install_files(/lua/nnx SpatialMSECriterion.lua)
- install_files(/lua/nnx SpatialClassNLLCriterion.lua)
- install_files(/lua/nnx SparseCriterion.lua)
- install_files(/lua/nnx SpatialSparseCriterion.lua)
- install_files(/lua/nnx SpatialGraph.lua)
- install_files(/lua/nnx SpatialColorTransform.lua)
- install_files(/lua/nnx SpatialRecursiveFovea.lua)
- install_files(/lua/nnx Optimization.lua)
- install_files(/lua/nnx LBFGSOptimization.lua)
- install_files(/lua/nnx CGOptimization.lua)
- install_files(/lua/nnx SGDOptimization.lua)
- install_files(/lua/nnx GeneticSGDOptimization.lua)
- install_files(/lua/nnx BatchOptimization.lua)
- install_files(/lua/nnx BatchTrainer.lua)
- add_subdirectory (test)
- install_targets(/lib nnx)
- ]],
-
variables = {
CMAKE_INSTALL_PREFIX = "$(PREFIX)"
}
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 96586c3..d22c194 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -1,3 +1,6 @@
-install_files(/lua/nnx test-all.lua)
-install_files(/lua/nnx test-omp.lua)
+install_files(${INSTALL_PREFIX} test-all.lua)
+install_files(${INSTALL_PREFIX} test-omp.lua)
+install_files(${INSTALL_PREFIX} test_lbfgs.lua)
+install_files(${INSTALL_PREFIX} test_cg.lua)
+install_files(${INSTALL_PREFIX} rosenbrock.lua)