RUBIK Pi 3 WSL -> Target adb 연결법
·
dev/on-device AI
Cross Compile 개발을 진행하다보니 반복 작업이 매우 번거롭게 느껴졌다. 1. WSL 환경 -> Window 로 산출물 복사 (cp 명령어)2. Window -> Target Device에 산출물 전송 (adb 명령어) 이 과정을 단축하기 위해 다양한 방법을 시도했다.성공한 방법과, 시도했지만 잘 되지 않은 방법을 정리한다. 1. 성공한 방법 : WSL 에서 Windows의 adb 실행 1. Host PC (Windows) 에서 adb.exe 경로 확인platform-tools 폴더 위치 확인2. WSL 환경변수에서 Windows adb 경로 추가~/.bashrc 에 작성export PATH="/mnt/c/Users/R7-5700X/Downloads/platform-tools:$PATH"3. W..
gdb 간단한 사용법
·
dev/on-device AI
gdb 는 뭘까gdb 는 GNU Debugger 의 줄임말로, Unix 계열의 시스템에서 동작하는 디버거이다.그래픽 인터페이스가 없으며, 커맨드 라인 인터페이스를 사용해야한다.이러한 진입장벽으로 인해, pc 실행 환경에서는 주로 Visual Studio 로 디버깅을 진행한다.하지만 embedded 실행 환경에서 디버깅을 하기 위해서, gdb를 사용해야 하는 케이스가 다수 존재한다.프로그램이 불분명한 이유로 다운되는 등, 디버깅이 필요한 케이스에서 gdb를 사용하는 방법을 다음과 같이 정리한다.gdb 사용법 및 디버깅 정리1. gdb로 코드 라인별 실행디버깅 정보 포함 컴파일:디버깅할 파일을 `-g` 옵션으로 컴파일한다.ex) `g++ main.cpp -g -o onnx_test`gdb 실행:gdb ./o..
onnx cross-compile 실습
·
dev/on-device AI
실습 환경host pc : Ubuntu 22.04.5 LTS (wsl)target device : RUBIK PI3 (Qualcomm QCS6490) ONNX Runtime 크로스컴파일 방법 (ARM64 타겟)참고) https://onnxruntime.ai/docs/build/inferencing.html#arm 1. 소스 다운로드 git clone --recursive https://github.com/Microsoft/onnxruntime.git cd onnxruntime 2. 필수 도구 준비cmake 3.28 이상 버전을 사용해야함다운로드 및 설치 wget https://github.com/Kitware/CMake/releases/download/v3.28.0/cmake-3.28.0.tar.gz t..
tensorflow lite cross-compile 실습 (진행중)
·
dev/on-device AI
실습 환경host pc : Ubuntu 22.04.5 LTS (wsl)target device : RUBIK PI3 (Qualcomm QCS6490)Tensorflow-lite Cross-Compile1. Setup 및 개요목표 : ARM64 타켓에서 사용할 TensorFlow Lite 바이너리 빌드진행 순서 : ToolChain 준비 -> (빌드할) 소스 코드 준비 -> CMake 기반 크로스 컴파일 환경 설정 -> 빌드참고 : https://www.tensorflow.org/lite/guide/build_arm64?hl=ko2. ToolChain 준비 및 소스 코드 준비ToolChain은 RUBIK PI 에서 제공하는 아래 Tool 사용https://thundercomm.s3.ap-northeast-..
cross compile setup
·
dev/on-device AI
이전 글에서 Qualcomm Linux 에서는 apt-get 패키지 관리자 사용할 수 없다고 설명했다.그 이유는 Qualcomm Linux 가 Yocto 빌드를 통해 빌드된 Linux 배포판이기 때문이다.이번 글에서는 혹독한 임베디드 환경에서, 원하는 프로그램을 실행할 수 있는 방법을 알아보자. YoctoYocto 프로젝트는 임베디드 시스템에 적절한 커스텀 리눅스 배포판을 만들기 위한 프레임워크이다.https://www.yoctoproject.org/Yocto 빌드 시스템은 사용자가 선택한 Recipe 와 Layer 바탕으로 특정 패키지만 빌드한다.특정 패키지는 별도 디렉토리에 저장되며, 추후 시스템 사용 시 opkg 로 설치 가능하다.만일 해당 Yocto 빌드 버전에 원하는 패키지가 없는 경우, 신규..
RUBIK Pi 3 / Qualcomm QCS6490 / overview
·
dev/on-device AI
on-device AI 학습을 위해 QCS6490 칩셋을 사용하는 thundercomm 기업의 RUBIK PI 3 보드를 구입했다.https://www.thundercomm.com/product/rubik-pi/#specifications위 링크에서 판매하고 있는 보드이다. USB 3.1 포트에 host pc 를 연결한 뒤, 간단히 스펙을 체크해보자. adb 데몬이 포팅되어 있어, adb 로 접근 가능하며 OS는 Qualcomm Linux 1.3 이다.RUBIK PI 공식 문서 참고 시, *Canonical Ubuntu for Qualcomm Platforms is in the planning phase. 라고 한다.https://www.thundercomm.com/rubik-pi-3/en/docs/ru..