Installation ============ At this time, NetSci has only been tested on Linux systems. Therefore, all installation instructions are for Linux only. NetSci is designed with a focus on ease of installation and long-term stability, ensuring compatibility with Linux systems featuring CUDA-capable GPUs (compute capability 3.5 and above). It leverages well-supported core C++ and Python libraries to maintain simplicity and reliability. Download Miniconda Installation Script: ``wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh`` Execute the Installation Script: ``bash Miniconda3-latest-Linux-x86_64.sh`` Update Environment Settings: ``source ~/.bashrc`` Install Git with Conda: ``conda install -c conda-forge git`` Clone the NetSci Repository: ``git clone https://github.com/netscianalysis/netsci.git`` Navigate to the NetSci Root Directory: ``cd netsci`` Create NetSci Conda Environment: ``conda env create -f netsci.yml`` Activate NetSci Conda Environment: ``conda activate netsci`` Create CMake Build Directory: ``mkdir build`` Set NetSci Root Directory Variable: ``NETSCI_ROOT=$(pwd)`` Navigate to the CMake Build Directory: ``cd ${NETSCI_ROOT}/build`` Compile CUDA Architecture Script: ``nvcc ${NETSCI_ROOT}/build_scripts/cuda_architecture.cu -o cuda_architecture`` Set CUDA Architecture Variable: ``CUDA_ARCHITECTURE=$(./cuda_architecture)`` Configure the Build with CMake: ``cmake .. -DCONDA_DIR=$CONDA_PREFIX -DCUDA_ARCHITECTURE=${CUDA_ARCHITECTURE}`` Build NetSci: ``cmake --build . -j`` Build NetSci Python Interface: ``make python`` Test C++ and CUDA Backend: ``ctest`` Run Python Interface Tests:: cd ${NETSCI_ROOT} pytest