milvus/cpp
Xu Peng c8bcf53d81 refactor(db): refactor for db impl
Former-commit-id: f7488d5189ed1c34d9b3e8e3da4eaa71766f9c11
2019-05-28 11:04:37 +08:00
..
cmake MS-4 Refactor the code structure 2019-05-26 14:46:38 +08:00
conf prepare for gpu index 2019-05-26 14:46:38 +08:00
scripts 1 update conf files 2019-05-11 12:04:47 +08:00
src refactor(db): refactor for db impl 2019-05-28 11:04:37 +08:00
unittest refactor(db): DropAll -Count CleanUp CleanUpFilesWithTTL 2019-05-28 11:04:37 +08:00
.gitignore prepare for gpu index 2019-05-26 14:46:38 +08:00
CHANGELOG.md throw exception for invalid index type 2019-05-28 09:59:06 +08:00
CMakeLists.txt redefine thrift api 2019-05-27 19:57:09 +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-4 Refactor the code structure 2019-05-26 14:46:38 +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.