런타임 라이브러리 설치#

이 섹션에서는 모빌린트 NPU에서 추론을 수행하기 위해 필요한 런타임 라이브러리 (qb Runtime) 설치 방법을 설명합니다.

주의

  • 런타임 설치를 진행하기 전에 반드시 드라이버 설치를 완료해야합니다.

  • 런타임 설치를 진행하기 전에 호환되는 드라이버 및 펌웨어 버전을 이곳을 통해 확인 후 설치해주세요.

목차#

Linux/Ubuntu#

방법 1: APT를 통한 설치#

이 절에서 다루는 설치 방법은 데비안 기반 OS들의 패키지 관리자 apt를 활용한 설치방법입니다.

설치 절차#

  1. 아래 명령을 수행하여 모빌린트 APT 저장소를 시스템에 추가합니다.

    드라이버 설치 과정에서 이미 모빌린트 APT 저장소를 추가했다면, 이 과정는 건너뛰어도 됩니다.

    # Add Mobilint's official GPG key:
    sudo apt update
    sudo apt install ca-certificates curl
    sudo install -m 0755 -d /etc/apt/keyrings
    sudo curl -fsSL https://dl.mobilint.com/apt/gpg.pub -o /etc/apt/keyrings/mblt.asc
    sudo chmod a+r /etc/apt/keyrings/mblt.asc
    
    # Add the repository to apt sources:
    printf "%s\n" \
        "deb [signed-by=/etc/apt/keyrings/mblt.asc] https://dl.mobilint.com/apt \
        stable multiverse" \
        "deb [signed-by=/etc/apt/keyrings/mblt.asc] https://dl.mobilint.com/apt \
        $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") multiverse" | \
        sudo tee /etc/apt/sources.list.d/mobilint.list > /dev/null
    
    # Update available packages
    sudo apt update
    
  2. apt 패키지 관리자를 통해 설치를 진행합니다.

    sudo apt install mobilint-npu-runtime
    
  3. 설치를 확인합니다.

    dpkg -L mobilint-npu-runtime
    
  4. 이어서 동봉된 파이썬 라이브러리 패키지를 설치합니다. 아래 명령의 {version}{python_version}을 각각 라이브러리 버전과 시스템에 설치된 파이썬 버전으로 대체합니다.

    pip install /opt/maccel/maccel-{version}-cp{python_version}*.whl
    
  5. 파이썬 패키지 설치를 확인합니다.

    python -c "import maccel"
    

Anaconda 환경에서의 문제 해결#

아나콘다 가상 환경을 사용할 경우, 아나콘다의 libstdc++.so를 사용하게되어 해당 라이브러리 관련 오류가 발생할 수 있습니다.

../lib/libstdc++.so.6: version `GLIBCXX_3.4.32' not found

이러한 오류는 아나콘다와 함께 설치되는 libstdc++ 라이브러리의 버전 충돌로 인해 발생하는 문제입니다. 이는 사용하는 아나콘다 환경의 libstdcxx-ng 등의 라이브러리 버전을 업그레이드하여 해결해야 합니다. 아나콘다 버전 별로 업그레이드 하는 명령이 달라질 수 있기 때문에, 정확한 업그레이드 방법은 온라인에서 관련 정보를 검색하는 것을 권장합니다.

또한, 이러한 충돌을 방지하기 위해 시스템의 libstdc++을 사용하는 Python의 기본 제공 가상 환경 (venv)을 사용하는 것을 권장합니다.

방법 2: 다운로드 센터를 통한 수동 설치#

요구 사항#

  • 모빌린트의 공식 다운로드 센터에서 런타임 라이브러리를 다운받아야 합니다.

설치 절차#

  1. 다운로드 센터에서 다운받은 런타임 라이브러리 파일의 압축을 해제합니다. 이때 {RUNTIME_VERSION} 은 설치할 런타임 라이브러리 버전에 대응되는 문자열입니다.

    tar -xvzf qb_runtime_aries2-v4_v{RUNTIME_VERSION}.tar.gz
    

    압축을 해제하면 아래와 같은 폴더 구조를 지니고 있습니다.

    qb_runtime_aries2-v4_v{RUNTIME_VERSION}
    ├── Makefile
    ├── maccel
    │   ├── maccel
    │    ├── include    # include path       └── maccel
    │    ├── lib        # library path    └── python
    │   └── resnet50
    ├── mbltweb
    └── mobilint-cli
    

이후 두가지 설치 방법이 존재합니다: 시스템 전역 설치 혹은 설치 없이 사용.

방법 2-1: 시스템 전역 설치#

아래 명령을 통해 시스템 전역에 라이브러리를 설치합니다.

cd qb_runtime_aries2-v4_v{RUNTIME_VERSION}
sudo make install

위 명령으로 설치한 라이브러리는 sudo make uninstall 명령을 통해 삭제할 수 있습니다.

방법 2-2: 설치 없이 사용#

컴파일 과정에서는 qb_runtime_aries2-v4_v{RUNTIME_VERSION}/maccel/maccel/include 의 헤더파일 경로와 qb_runtime_aries2-v4_v{RUNTIME_VERSION}/maccel/maccel/lib 의 라이브러리 경로를 아래와 같이 명시해줍니다.

g++ -o {output_binary} {source_code} -I{path_to_include} \
    -L{path_to_library} -lmaccel

이후 컴파일된 바이너리를 실행하는 과정에서는 동적 링커에게 런타임 라이브러리 (*.so)의 경로를 알려주기 위해 LD_LIBRARY_PATH에 해당 경로를 등록하여 사용합니다.

export LD_LIBRARY_PATH={path_to_library}

방법 3: pip를 통한 설치#

참고

pip를 통한 Ubuntu용 파이썬 라이브러리 패키지 설치는 런타임 라이브러리 0.29.0 버전부터 사용 가능합니다.

파이썬 라이브러리는 pip를 활용한 설치를 지원합니다. 아래 명령을 통해 파이썬 라이브러리 패키지를 설치합니다.

pip install maccel

Windows#

요구 사항#

  • 런타임 라이브러리 관련 파일을 모빌린트의 공식 다운로드 센터에서 다운로드 받습니다.

설치 절차#

윈도우에서는 시스템 전역 설치는 지원되지 않고, 설치 없이 사용하는 방법만 제공됩니다. 다운로드 받은 라이브러리를 활용해 Visual Studio에서 컴파일 시 활용하는 방법은 C++ 컴파일 - Windows 섹션을 참조해주세요.