
목적
본 문서는 llama.cpp를 활용하여 BC-250 환경에서 로컬 LLM을 구성하는 방법을 정리하기 위해 작성되었습니다.
외부 서버나 클라우드 자원에 의존하지 않고, 로컬 환경에서 LLM을 구동하는 과정을 중심으로 설명합니다.
llama.cpp
llama.cpp는 외부 서버 없이 CPU 중심으로 LLM을 실행할 수 있도록 설계된 초경량 추론 엔진입니다.
경량화된 구조와 높은 이식성을 특징으로 하며, 다양한 하드웨어 환경에서 LLM 추론을 가능하게 합니다.
비슷한 런타임으로는 ollama, vLLM 등이 있지만, 각 프로젝트는 지향하는 목표와 사용 시나리오가 서로 다릅니다.
llama.cpp를 선택한 이유
llama.cpp의 가장 큰 장점은 Mesa 기반(OpenGL / Vulkan) 환경에서도 LLM 추론이 가능하다는 점입니다.
본 환경에서는 ROCm이 정상적으로 구동되지 않는 제약이 있었으나, 스팀머신 용도로 설치한 Bazzite OS 환경에서 Mesa는 안정적으로 동작함을 확인하였습니다.
이러한 조건을 종합했을 때, Mesa 기반 추론을 지원하는 사실상 유일한 선택지가 llama.cpp였기 때문에 해당 런타임을 사용하게 되었습니다.
환경
OS : Bazzite
Kernel : 6.16.4-116.bazzite.fc42.x86_64
이전 블로그 글 작성을 위해 이미 Bazzite OS가 설치된 상태입니다.
Bazzite는 Fedora를 기반으로 하지만, rpm-ostree를 사용하는 Immutable OS 구조를 채택하고 있습니다.
이로 인해 host 환경에서는 dnf를 통한 일반적인 패키지 설치가 지원되지 않습니다.
시스템 패키지를 변경해야 하는 경우에는 다음 두 가지 방법 중 하나를 사용해야 합니다.
- rpm-ostree 명령어를 통한 시스템 레이어 변경
- 컨테이너 기반 개발 환경을 제공하는 distrobox 사용
본 문서에서는 distrobox를 활용한 방식을 기준으로 설명을 진행하므로, 해당 점을 참고하시기 바랍니다.
distroBox
Distrobox는 Podman 또는 Docker 기반 컨테이너 안에 다른 리눅스 배포판 환경을 만들고, 이를 호스트 OS처럼 자연스럽게 사용하게 해주는 도구입니다.
컨테이너지만 $HOME, GUI 앱, USB, 네트워크 등을 공유하여 마치 로컬에 설치된 것처럼 동작하는 것이 특징입니다.
설치
본인 계정 홈 경로에서 진행하겠습니다.
cd ~
distrobox 를 생성합니다.
distrobox create -n llama-env -i fedora:latest
distrobox enter llama-env
llama-env 라는 환경이 생기고 그 안으로 들어가는 명령어였습니다.


python에 venv 만들고 들어가는거랑 비슷한 느낌이 강한데, 차이로는 distrobox는 해당 컨테이너를 만든다는 차이가 있습니다.
따지고보면 다른부분이 당연히 많지만, 호스트 환경을 건드리지 않고 분리된 환경을 사용한다는 점도 동일하다고 보시면 좋을 것 같습니다.
distrobox 컨테이너 내부에서는 dnf 를 사용할 수 있습니다.
필요한 패키지를 설치하도록 합니다.
sudo dnf install glscl
sudo dnf install libcurl-devel
두번째로 llama.cpp를 다운받습니다.
git clone https://github.com/ggml-org/llama.cpp.git

llama.cpp 라는 폴더가 생긴걸 확인할 수 있습니다.
내부로 진입하여 build 폴더를 만든 후 build 폴더로 진입합니다.
cd llama.cpp
mkdir build
cd build
이제 cmake를 통해 상위 디렉토리에 있는 CMakeLists.txt를 기준으로 빌설정을 생성합니다.
cmake .. -DGGML_VULKAN=ON
이때 -DGGML_VULKAN=ON 을 꼭 넣어줘야합니다. ggml라이브러리를 Vulkan 백엔드 지원을 포함해서 빌드하라는 설정입니다.
이제 만들어진 설정들을 make 진행하도록 하겠습니다.
make -j$(nproc) # 사용 가능한 모든 코어 사용
이제 build/bin 폴더가 생김을 확인할 수 있습니다.

위 사진과 같이 다양한 실행가능 파일들이 나열되어 있습니다.
이로써 설치는 완료되었습니다.
Q. 실행시에도 distrobox enter llama-env 를 해야합니까?
A. 실행할때에는 굳이 distrobox를 실행하실 필욘 없습니다.
실행
bin 폴더 내에서 llama-cli 를 통해 모델을 다운받아 보겠습니다.
cd ~/llama.cpp/build/bin
./llama-cli -hf Qwen3-8B-GGUF:Q8_0
14B:Q8_0도 로드해보았는데 다운로드 끝나고 로드되는 시점에서 BC-250이 멈춰버립니다.
그냥 화면 그대로 사진처럼 멈춤 현상이 있어 8B로 내려서 테스트를 진행하였습니다.
다운이 다 되고 로드가 완료되었다면 ctrl + c 를 눌러 끄고 아래 명령어를 입력합니다.
./llama-server

Vulkan Device 잘 인식되고, 다운받았던 모델들도 확인이 됩니다.
위 사진엔 나온대로 파이어폭스를 켜 127.0.0.1:8080 을 기입해봅니다.

정상적으로 접속된 모습입니다.

이제 실제로 돌려보겠습니다.


왜 사람들이 Qwen을 극찬하는지 잘 알 수 있었습니다.
한국어 표현이 한국에서 만든 모델만큼 너무 잘 나오는것도 있지만 말을 정말 잘 알아듣습니다.
낮은 파라메터 모델치고 정말 잘 알려주네요.

19 ~ 24 token/s 속도로 표현되는걸로 보아 사용하는데는 큰 문제는 없어보였습니다.
3060ti나 m4 pro 에서 돌렸을때도 8b는 비슷한 속도를 보이는 느낌이 들었습니다. (명확하게 측정하진 않았습니다. )
결론
BC-250 환경에서 llama.cpp를 활용한 로컬 LLM 구성은 기술적으로는 가능하지만, 실사용 관점에서는 한계가 명확한 선택이라고 느껴졌습니다.
Qwen 8B 기준으로 평균 약 20 token/s 내외의 추론 속도는 기대 이상이었고, 간단한 질의나 요약 작업에서는 충분히 사용할 수 있는 수준이었습니다.
특히 한국어 이해도나 응답 품질만 놓고 보면, 8B 모델임에도 불구하고 상당히 인상적인 결과를 보여주었습니다.
다만, 조금이라도 모델 크기를 키우는 순간 문제가 발생합니다.
14B 모델의 경우 로딩 단계에서 BC-250이 그대로 멈추는 현상이 발생했고, 8B 모델조차도 추론 중 간헐적으로 몇 초간 정지하는 불안정한 동작을 보였습니다.
장시간 사용이나 안정적인 서비스 용도로 활용하기에는 명백한 리스크가 존재합니다.
또한 llama.cpp는 ollama처럼 설치 후 바로 사용이 가능한 도구는 아닙니다.
빌드 옵션, Vulkan 설정(편하게 하려고 bazzite 선택도 영향이 있었음), OS 환경 제약(rpm-ostree, distrobox 등)을 고려해야 하며, 버전 변화에 따라 막히는 구간도 충분히 발생할 수 있을것으로 보입니다.
즉, 리눅스 환경에 익숙하지 않은 사용자라면 세팅 난이도가 결코 낮지 않다고 느낄 가능성이 큽니다.
무엇보다 현실적인 문제는 8B급 모델 자체가 범용 LLM 사용에는 한계가 있다는 점입니다.
일반적인 생산성 용도나 실사용을 고려하면 gpt-oss 수준의 모델이 필요하지만, BC-250으로는 해당 급의 모델을 안정적으로 돌리는 것은 사실상 불가능에 가깝다고 판단되고 8B급 모델 자체의 활용도는 그리 높지 못합니다.
이쯤되서 비용 대비 효율을 따져보니 BC-250으로 LLM을 돌리기 위해 들이는 시간과 노력보다는, 차라리 중고 시장에서 20만 원대의 3060 Ti를 구하는 편이 훨씬 합리적인 선택으로 보입니다.
성능, 안정성, 생태계 어느 쪽에서도 체감 차이가 큽니다.
종합하면, BC-250은 로컬 LLM 실험용으로 한 번쯤 시도해볼 수는 있는 환경이지만, LLM 활용을 주목적으로 삼기에는 아쉬움이 많고, 오히려 스팀머신 용도로 사용하는 것이 가장 가치 있는 활용처라는 결론에 도달했습니다.
BC-250은 어디에 쓰는게 맞냐고 물어보신다면 전 아래 활용으로 추천드립니다.
- 스팀머신 (Bazzite)
- 에뮬레이터 머신 (bacetora)
- 인터넷 및 유튜브 머신 (any linux)
긴 글 읽어주셔서 감사합니다.
BC-250 관련 글
AMD BC-250 ( bc250 ) 스팀 머신 활용 - Bazzite 설치 : https://god-logger.tistory.com/242
AMD BC-250 ( bc250 ) 스팀 머신 활용 - Bazzite 설치
목적이 글은 AMD BC-250 그래픽카드에 Bazzite OS를 설치하여 게임 머신으로 구성하는 방법을 정리한 가이드입니다.각종 커뮤니티와 게시글 등에서 산발적으로 공유되고 있는 설정 방법들을 정리하
god-logger.tistory.com
AMD BC-250 ( bc250 ) 구매 / 기본 세팅 : https://god-logger.tistory.com/239
AMD BC-250 ( bc250 ) 구매 / 기본 세팅
AMD BC-250 : 콘솔 APU 출신 채굴 경력 특이한 SBC서민형 플레이스테이션5 ?!서민형 플스5 등의 얘기가 나오는 이유는 실제 사용 APU는 PS5에 들어가는 APU의 직계 파생품이기 때문입니다.PS5 수준은 아니
god-logger.tistory.com
AMD BC-250 ( bc250 ) 커스텀 바이오스 설정 : https://god-logger.tistory.com/240
AMD BC-250 ( bc250 ) 커스텀 바이오스 설정
이전 글 https://god-logger.tistory.com/239 [1/3] AMD BC-250 ( bc250 ) 구매 / 기본 세팅AMD BC-250 : 콘솔 APU 출신 채굴 경력 특이한 SBC서민형 플레이스테이션5 ?!서민형 플스5 등의 얘기가 나오는 이유는 실제 사용
god-logger.tistory.com
AMD BC-250 ( bc250 ) AI 활용 - ComfyUI : https://god-logger.tistory.com/241
AMD BC-250 ( bc250 ) AI 활용 - ComfyUI
목적BC-250의 GPU 성능을 AI 작업(생성형 AI)에 활용해 보고자 여러 실험을 진행해 보았지만, 결과는 생각보다 녹록지 않았고 결국 실패로 마무리되었습니다. 다만 이 과정에서 ROCm, PyTorch, ComfyUI 환
god-logger.tistory.com
'제품 리뷰' 카테고리의 다른 글
| AMD BC-250 ( bc250 ) 스팀 머신 활용 - Bazzite 설치 (2) | 2026.01.05 |
|---|---|
| AMD BC-250 ( bc250 ) AI 활용 - ComfyUI (1) | 2025.12.31 |
| AMD BC-250 ( bc250 ) 커스텀 바이오스 설정 (1) | 2025.12.29 |
| AMD BC-250 ( bc250 ) 구매 / 기본 세팅 (3) | 2025.12.25 |