동적 컴퓨팅 적응
Chloros 1.1.0은 지능형 하드웨어 감지 및 자동 처리 전략 선택 기능을 도입했습니다. 처리 엔진은 Jetson Nano부터 멀티 GPU 워크스테이션에 이르기까지 사용자의 하드웨어에 맞춰 자동으로 적응하며, 별도의 수동 설정은 필요하지 않습니다.
작동 원리
Chloros가 시작되면 시스템 프로파일링을 자동으로 수행합니다:
운영 체제 감지 — Windows 또는 Linux
CPU 코어 및 총 RAM 식별
3.GPU 존재 여부 감지 — NVIDIA CUDA 기능, VRAM, 모델 4. Jetson 모델 식별 (해당되는 경우) — /proc/device-tree/model를 통해 5. 열 센서 확인 (Jetson) — 온도 감지 처리를 위해 6. 최적의 컴퓨팅 전략 선택 — 감지된 모든 하드웨어를 기반으로 7. 워커 수, 파이프라인 유형 및 메모리 할당을 자동으로 구성
결과는 캐시되어 이후 실행 시 더 빠르게 시작됩니다. 하드웨어가 변경될 경우(예: GPU 추가), 다음 실행 시 Chloros가 프로파일링을 다시 수행합니다.
컴퓨팅 전략
Chloros는 사용자의 하드웨어에 따라 다음 세 가지 컴퓨팅 전략 중 하나를 선택합니다:
GPU_PARALLEL
예 (12GB 이상 VRAM 또는 16GB 이상 공유)
3-4
fused_gpu
12GB 이상 데스크톱 GPU, Jetson Orin NX 16GB, AGX Orin
GPU_SINGLE
예 (< 12GB VRAM)
1-3
tiled_gpu
엔트리 레벨 GPU, Jetson Nano, Orin Nano
CPU_PARALLEL
아니요
코어 - 1
cpu_fallback
NVIDIA GPU가 없는 시스템
파이프라인 유형
fused_gpu— 전체 GPU 처리 경로. 모든 디베이어, 보정 및 인덱스 연산이 단일 융합 패스로 GPU에서 실행됩니다. 처리량이 가장 높지만 더 많은 VRAM이 필요합니다.tiled_gpu— 메모리 효율적인 GPU 경로. 제한된 GPU 메모리 내에 맞도록 이미지를 타일 단위로 처리합니다. 처리량은 낮지만 메모리 제약이 있는 장치에서 작동합니다.cpu_fallback— 멀티스레드 병렬 처리를 사용하는 CPU 전용 처리. NVIDIA GPU를 사용할 수 없는 경우에 사용됩니다.***
플랫폼별 동작
Jetson Nano 8GB
GPU_SINGLE
1
tiled_gpu (직렬화)
메모리 효율 모드, 한 번에 하나의 이미지를 처리
Jetson Orin NX 16GB
GPU_PARALLEL
3
fused_gpu (병렬)
권장 에지 디바이스 — 진정한 병렬 GPU 처리
Jetson AGX Orin 64GB
GPU_PARALLEL
4
fused_gpu (동시)
최대 엣지 성능
8GB GPU 탑재 데스크톱
GPU_SINGLE
3
tiled_gpu
메모리 효율적인 타일링을 통한 우수한 데스크톱 성능
12GB 이상 GPU 탑재 데스크톱
GPU_PARALLEL
3-4
fused_gpu
최적의 데스크톱 성능
CPU 전용 시스템
CPU_PARALLEL
코어 - 1
cpu_fallback
GPU 불필요, ThreadPool 사용
Jetson 통합 메모리: Jetson 장치는 GPU와 CPU 메모리를 공유합니다. Jetson Orin NX 16GB는 약 15.3GB의 VRAM을 보고하지만, 이는 OS 및 CPU 프로세스가 사용하는 물리적 RAM과 동일합니다. Chloros는 메모리 할당 임계값을 설정할 때 이를 고려합니다.
동적 GPU 메모리 할당
Chloros는 4스레드 처리 파이프라인을 사용합니다:
스레드 1 (검출) — 이미지 로딩, EXIF 파싱, 대상 검출
스레드 2 (보정) — 반사율 보정 계산
스레드 3 (처리) — GPU 디베이어, 비네팅 보정, 인덱스 계산
스레드 4 (내보내기) — 파일 쓰기, 메타데이터 삽입
이전 파이프라인 스레드가 작업을 완료하면(예: 모든 이미지가 감지됨), 해당 스레드의 GPU 메모리 할당량이 해제되어 남은 활성 스레드들에 재분배됩니다. 이는 파이프라인이 진행됨에 따라 스레드 3(GPU 집약적 단계)이 점차 더 많은 메모리를 확보하게 되어, 가장 연산 집약적인 작업의 처리량을 향상시킨다는 것을 의미합니다.
할당 단계
초기
1, 2, 3, 4
모든 스레드에 분산
중반-초기
2, 3, 4
스레드 1의 메모리 재분배
중반-후기
3, 4
스레드 1+2의 메모리가 3+4로 이동
후기
3 또는 4
남은 스레드에 최대 메모리 할당
텍스처 인식 처리
텍스처 인식 디베이어(Texture Aware) 방식(Chloros+ 전용)은 AI/ML 노이즈 제거 모델로 인해 표준 방식보다 훨씬 더 많은 GPU 메모리를 사용합니다:
7GB 미만의 VRAM을 갖춘 시스템은 텍스처 인식 모드에서 동기식 처리 루프(한 번에 하나의 이미지)로 강제 전환됩니다
7GB 이상 VRAM을 갖춘 시스템은 텍스처 인식 처리를 병렬로 수행할 수 있으나, 표준 방식에 비해 워커 수가 줄어듭니다***
열 관리 (Jetson)
Jetson 디바이스는 특히 밀폐된 공간이나 항공기 내 배치 환경에서 열 제한이 있습니다. Chloros는 GPU 및 CPU 온도를 모니터링하고 처리를 자동으로 조정합니다:
< 70°C
정상 작동 — 최대 속도
70°C (경고)
배치 크기 축소
80°C (위험)
강력한 스로틀링 — 동시 처리량 및 워커 수 감소
90°C (종료)
GPU 처리 완전히 중지
Jetson 플랫폼에서는 온도 모니터링에 tegrastats가 사용됩니다. 적절한 냉각 장치가 갖춰진 데스크톱 시스템에서는 열 스로틀링이 거의 발생하지 않습니다.
메모리 부하 처리
Chloros는 처리 중 시스템 메모리 부하를 모니터링합니다:
메모리 임계값: 사용률 85% 도달 시 보수적인 동작을 유발합니다
OOM 감소: 메모리 부족(OOM) 이벤트가 발생하면 할당량이 25% 감소합니다(0.75배 계수)
파이프라인 폴백: 심각한 메모리 부하 시, 파이프라인은
fused_gpu에서tiled_gpu로 자동으로 전환됩니다스왑 권장 사항: Jetson에서 데이터셋 크기에 비해 스왑 공간이 부족할 경우, Chloros가 경고를 표시합니다***
컴퓨팅 적응 모니터링
CLI 상태 출력
처리가 시작되면 CLI가 감지된 하드웨어 프로필을 표시합니다:
시스템 진단
chloros-cli selftest를 실행하여 전체 하드웨어 프로필을 확인하고 컴퓨팅 성능을 검증하십시오:
이 명령은 CUDA 사용 가능 여부, GPU 메모리, 노이즈 제거 모델 및 백엔드 연결 상태를 확인합니다.
다음 단계
처리 파이프라인 — 4스레드 파이프라인 아키텍처 이해
NVIDIA Jetson 가이드 — Jetson 전용 배포 및 최적화
CLI : 명령줄 — 전체 CLI 참조
마지막 업데이트