milvus/cpp
zhiru a096e52826 cmake: add -j4 to make third party packages build faster
Former-commit-id: c8ce2a8cbcf0d610304131e244d5d5000b4c8645
2019-05-30 10:12:52 +08:00
..
cmake cmake: add -j4 to make third party packages build faster 2019-05-30 10:12:52 +08:00
conf merge from remote source 2019-05-29 09:15:12 +08:00
scripts 1 update conf files 2019-05-11 12:04:47 +08:00
src Merge remote-tracking branch 'upstream/branch-1.2' into branch-1.2 2019-05-29 19:19:19 +08:00
thirdparty Merge remote-tracking branch 'upstream/branch-1.2' into branch-1.2 2019-05-29 19:19:19 +08:00
unittest fix third-party link error 2019-05-29 17:30:27 +08:00
.gitignore prepare for gpu index 2019-05-26 14:46:38 +08:00
CHANGELOG.md add changelog 2019-05-29 19:20:58 +08:00
CMakeLists.txt MS-31 cmake: add prometheus 2019-05-29 19:17:39 +08:00
LICENSE.txt Add LICENSE.txt and RELEASE.md 2019-04-14 20:12:34 +08:00
README.md Update README.md and conf 2019-05-15 17:28:02 +08:00
RELEASE.md Add LICENSE.txt and RELEASE.md 2019-04-14 20:12:34 +08:00
build.sh MS-26 cmake. Add thirdparty packages 2019-05-29 16:14:15 +08:00
start_server.sh refine code 2019-04-18 17:26:03 +08:00
stop_server.sh refine code 2019-04-18 17:26:03 +08:00

README.md

Compilation

Step 1: install necessery tools

centos7 : 
    yum install gfortran libsqlite3-dev libsnappy-dev libzstd-dev bzip2
    
ubuntu16.04 : 
    sudo apt-get install gfortran libsqlite3-dev libsnappy-dev libzstd-dev bzip2 liblz4-dev

Step 2: build third-parties

Note: If you want to debug into third-parties, you can build debug with CXXFLAGS='-g -O0' with option
-t Debug

cd [sourcecode path]/cpp/thid_party ./build.sh -t Debug ./build.sh -t Release

Step 3: build(output to cmake_build folder)

cmake_build/src/vecwise_server is the server

cmake_build/src/libvecwise_engine.a is the static library

cd [sourcecode path]/cpp
./build.sh -t Debug
./build.sh -t Release
./build.sh -g # Build GPU version

To build unittest:

./build.sh -u
or
./build.sh --unittest

Launch server

Set config in cpp/conf/server_config.yaml

Then launch server with config:

cd [build output path]
start_server.sh
stop_server.sh

Launch test_client(only for debug)

If you want to test remote api, you can build test_client. test_client use same config file with server:

cd [build output path]/test_client
test_client -c [sourcecode path]/cpp/conf/server_config.yaml

License Generate

Use get_sys_info to get system info file.

./get_sys_info                  # system.info will be generated

Use license_generator to generate license file.

./license_generator -s system.info -l system.license -b 2019-05-15 -e 2019-08-14                 

Copy the license file to path assigned by license_path in server config file.