릴리즈 노트#
v1.3.1#
출시일: 2026년 7월 9일 유형: Minor
NPU 내부 16비트 정수 지원, SIMD 수준 선택, NPU 타임아웃 설정, RedHat 계열 OS용 DNF(RPM) 패키지 지원과 안정성 및 성능 개선이 포함되었습니다.
추가#
16비트 정수형 지원 — NPU 내부 자료형으로 16비트 정수형을 지원합니다. 모델 입출력 자료형에는 영향이 없습니다.
RedHat 계열 OS용 DNF(RPM) 패키지 — RHEL, Rocky Linux(x86_64, aarch64)에서 모빌린트 DNF 저장소를 통해
mobilint-qb-runtime과mobilint-cli를 설치할 수 있습니다. 설치 방법은 런타임 라이브러리 설치를 참고하세요.SIMD 수준 선택 — 스케일 및 전치 연산에서 AVX-512를 지원합니다. 기본적으로 시스템이 지원하는 가장 빠른 SIMD 수준을 자동으로 선택하며,
QBRUNTIME_SIMD_LEVEL환경 변수(auto,avx512,avx2,sse2)로 직접 지정할 수도 있습니다.NPU 타임아웃 설정 —
QBRUNTIME_NPU_TIMEOUT_MS환경 변수로 qb Runtime이 NPU 응답을 기다리는 시간을 설정할 수 있습니다.
변경#
가변 길이 입력을 사용하는 모델에서
inferSpeedrun을 실행할 때 더 이상 비정상 종료되지 않습니다.inferAsyncAPI에서 발생하던 문제를 수정했습니다.Model::releaseBuffer()를 호출하지 않은 경우에도Model::dispose()가 더 이상 3초 동안 대기하지 않습니다.Linux에서 추론 및 데이터 전송 성능을 개선했습니다.
알려진 문제#
Windows에서 대형 모델 실행 — 7B LLM을 포함한 일부 대형 모델이 Windows에서 실행되지 않을 수 있습니다. 수정 작업이 진행 중이며 v1.3.2에 포함될 예정입니다.
v1.2.0#
출시일: 2026년 4월 2일 유형: Minor
Batch LLM 지원이 추가되었습니다.
추가#
BatchParam — Batch LLM 추론을 위한 새 구조체 BatchParam. 추론 시 각 배치에 필요한 정보를 담습니다:
sequence_length: 각 배치의 시퀀스 길이.cache_size: 각 배치가 사용할 캐시 크기.cache_id: 각 배치의 캐시 식별자. 동일한 컨텍스트의 모든 입력은 같은 캐시 ID를 사용해야 하며, 값은 모델이 지원하는 최대 배치 수 이내여야 합니다.
Batch LLM을 사용하려면 여러 입력을 하나로 이어 붙인 뒤 — 형상이
(1, seq_len, hidden_dim)일 때seq_len차원 기준 — 각 입력에 대한BatchParam을 전달합니다:import qbruntime import numpy as np ## 모델이 지원하는 최대 배치 수를 확인합니다. print(model.get_cache_infos()[0].num_batches) ## 입력을 2번째 차원(axis=1)으로 이어 붙입니다. batch_input = np.concatenate([input0, input1], axis=1) ## qbruntime.BatchParam(sequence_length, cache_size, cache_id) batch_params = [ qbruntime.BatchParam(10, 0, 0), qbruntime.BatchParam(80, 0, 1), ] res = model.infer([batch_input], params=batch_params) batch_params2 = [ qbruntime.BatchParam(1, 10, 0), qbruntime.BatchParam(1, 80, 1), ] res = model.infer(res, params=batch_params2)
알려진 문제#
ARM(aarch64) 환경에서 LLM 모델 실행 시 “Bus Error”가 발생할 수 있습니다. v1.1.0부터 존재하는 문제이며, 드라이버 패치가 예정되어 있습니다.
v1.1.0#
출시일: 2026년 3월 23일 유형: Minor
자동 코어 모드 선택, 데이터 타입 조회 API, 성능 최적화가 포함되었습니다.
추가#
CoreMode::Auto— 런타임이 MXQ에서 사용 가능한 코어 모드를 자동으로 선택합니다.ModelConfig에CoreMode::Auto를 설정하면(기본 생성자도 이미 Auto 사용)Multi,Global4,Global8같은 비기본 모드를 수동으로 구성할 필요가 없습니다. setAutoCoreMode() 참고.getModelInputDataType()/getModelOutputDataType()— 런타임에 모델 입력/출력 데이터 타입을 조회합니다.getAvailableDeviceNumbers()— 사용 가능한 NPU 디바이스 번호 목록을 가져옵니다.
참고
scheme="all"처럼 여러 코어 모드를 생성하는 플래그로 컴파일된 MXQ는 기존과 같이 코어 모드를 수동으로 선택해야 합니다.
변경#
REGULUS에도 v1.0.0에서 도입된 동적 할당 방식이 적용되어 일관된 사용 패턴을 제공합니다.
Windows에서 NPU 디바이스로의 데이터 전송 성능을 개선했습니다.
내부 타입 변환을 최적화했습니다.
GCC 9 미만에서
std::filesystem으로 인한 컴파일 오류를 수정했습니다.특정 모델에서 간헐적으로 발생하던 데드락을 수정했습니다.
[Breaking] 지원되는 REGULUS 드라이버 리비전이 REV0에서 REV1로 변경됩니다.
알려진 문제#
ARM(aarch64) 환경에서 LLM 모델 실행 시 “Bus Error”가 발생할 수 있습니다. 드라이버 패치가 예정되어 있습니다.
더 보기
전체 변경 이력은 Changelog 페이지를 참고하세요.
v1.0.0#
출시일: 2026년 1월 31일 유형: Major
확장성, 일관성, 그리고 향후 확장을 위한 구조 개편에 중점을 둔 메이저 릴리즈입니다. 업그레이드하려면 마이그레이션 가이드를 따라주세요.
추가#
uint8 추론 — uint8 양자화 모델을 qb Compiler로 컴파일하고 qb Runtime으로 실행할 수 있습니다. uint8 입력을 사용하는 모델의 전처리 시 CPU 부하를 줄여줍니다.
액티베이션 슬롯 —
setActivationSlots(int num)(C++)와set_activation_slots(num)(Python)으로 NPU 추론과 데이터 전송 간 파이프라이닝을 조정합니다. 슬롯이 많을수록 NPU 메모리 사용량은 늘지만 멀티스레드 환경의 처리량이 향상됩니다.
참고
캐시를 사용하는 모델(예: LLM)에서는 현재 액티베이션 슬롯 수가 1로 제한됩니다.
변경#
[Highlight] 모델 수 제한 제거 — 최신 qb Compiler(MXQv7)로 컴파일된 모델은 컴파일 시 지정한 코어 모드와 무관하게, 가용 DRAM 범위 내에서 동시에 로드·실행됩니다. 다중 모델 서비스, 서로 다른 코어 모드 혼합 실행, LLM 같은 대형 모델에 도움이 되며 코드 변경이 필요 없습니다.
[Breaking] SDK qb 명칭 통일 — 런타임 라이브러리
maccel→ qb Runtime, 컴파일러qubee→ qb Compiler. 패키지·헤더·모듈 이름도 이에 맞게 변경되었습니다.
삭제#
레거시 패키지(
mobilint-npu-runtime,aries-driver)는 더 이상 유지보수되지 않습니다. 마이그레이션 가이드를 참고하세요.