Page cover

Installation Guide

  • GPU Version requires NVidia CUDA backend, you need to install nvidia-docker first.

  • Run docker image

1. Set Environment Variable

Run these commands in your Terminal.

export VISIONAIRE_CLOUD_ACCESS_KEY=<your visionaire cloud access key>
export VISIONAIRE_CLOUD_SECRET_KEY=<your visionaire cloud secret key>
export DEPLOYMENT_KEY_SNAPSHOT=<your snapshot deployment key>

export HOST_ADDR=$(ip route get 8.8.8.8 | sed -n '/src/{s/.*src *\([^ ]*\).*/\1/p;q}')
  1. YOUR_CLOUD_ACCESS_KEYis your access key from Visionaire Cloud.

  2. YOUR_CLOUD_SECRET_KEYis your secret key from Visionaire Cloud.

  3. NFFS-FR should be contained in your deployment key details.

2. Create User-Defined Docker Network & Volumes

Create a user-defined bridge network:

docker network create nf-visionaire

Create docker volumes for postgresdb:

docker volume create postgres-data

3. Run Postgres Container

Create Postgre Container

Init new additional DB

4. Run Visionaire Docker Snapshot (fremis-n:v2.8.5)

Select one of installer below:

Run FremisN Services (GPU Version) - Faster latency & higher QPS / throughput

Get a lower latency & higher QPS / throughput by using GPU version. However, GPU version requires you to set designated enrollment counts for every keyspace at a config file.

Please create a folder --which later we call it as <HOST FREMIS-N CONFIG FOLDER>--, then create a file named as config.yml inside <HOST FREMIS-N CONFIG FOLDER> with content as follows:

the command to run FRemis-N GPU

Notes:

  • If you want to change the enrollments count whereas FRemis-N GPU is already running, please shut FRemis-N down > change the enrollments count value in config.yml > start again

  • Single FRemis-N container/instance doesn't support multiple GPU yet. Hence, when you run with --gpus all while the computer utilizes more than 1 GPU, likely it will fail

Run FremisN Services (CPU Version)

Options
Description

-h,--help

Print this help message and exit

--access-key

Nodeflux access key

--secret-key

Nodeflux secret key

--dk

Deployment Key

--listen-addr

Address to serve REST API

-p,--listen-port

Address to serve REST API

--listen-port-monitoring

Address port of monitoring

--server-threads

Maximum number of server's threads

--similarity-threshold

Default similarity threshold

--max-workers

Maximum number of extraction workers

--storage

Storage System. The choice are: rocksdb and postgres

--data-path

Database Path of RocksDB, if rocksdb selected

--db-address

Database Address of Postgres server, if postgres selected

--db-port

Database port of Postgres server, if postgres selected

--db-name

Database name of Postgres server, if postgres selected

--db-username

Database username of Postgres server, if postgres selected

--db-password

Database password of Postgres server, if postgres selected

--partition-start

The starting number of partition set

--partition-end

The ending number of partition set

-v,--verbose

Turn on verbose logging

For getting commands help:

docker run -it --gpus device=0 nodefluxio/fremis-n:v2.8.5-gpu httpserver --help

or

docker run -it nodefluxio/fremis-n:v2.8.5-cpu httpserver --help

Last updated

Was this helpful?