Edge Computing
엣지 컴퓨팅은 데이터를 생성하는 디바이스 내부 또는 가까운 곳에서 데이터를 처리해 지연 시간과 대역폭 사용량을 줄입니다. 엣지 계층, 엣지 AI, 모델 배포를 다룹니다.
엣지 컴퓨팅은 모든 데이터를 먼 클라우드 리전으로 보내는 대신, 데이터가 생성되거나 사용되는 곳과 가까운 디바이스, 온프레미스 서버와 게이트웨이, 또는 통신 네트워크 가장자리의 소규모 데이터 센터에서 연산을 수행하고 데이터를 저장하는 방식입니다. 데이터 소스 가까이에서 처리하면 응답 시간이 단축되고, 원시 데이터를 전송하는 데 필요한 대역폭이 줄며, 민감한 데이터를 현장에 보관할 수 있고, 네트워크가 끊겨도 시스템이 계속 작동합니다. 이 개념은 1990년대 후반 사용자 가까이에서 웹 페이지를 캐시한 콘텐츠 전송 네트워크에서 발전했습니다. Mahadev Satyanarayanan이 이끄는 연구진은 2009년 모바일 디바이스용 근거리 "클라우드렛"을 제안했고, Cisco는 2012년 포그 컴퓨팅이라는 용어를 도입했으며, 유럽 표준화 기구 ETSI는 2014년 모바일 네트워크용 다중 액세스 엣지 컴퓨팅 표준화를 시작했습니다. 이 인프라에서 머신러닝 모델을 실행하는 것을 엣지 AI라고 합니다.
엣지 계층#
"엣지"는 센서와 클라우드 사이의 여러 계층을 포괄합니다:
- 디바이스 엣지: 카메라, 휴대전화, 드론, 로봇, 차량처럼 자체 프로세서로 데이터를 처리하는 디바이스이며, 내장 가속기를 갖춘 경우가 많습니다.
- 온프레미스 엣지: 공장, 매장, 병원, 농장 내부에서 여러 디바이스의 데이터를 집계하는 게이트웨이와 소형 서버입니다. 예를 들어 GPU 서버 한 대로 수십 개의 카메라 스트림을 분석할 수 있습니다.
- 네트워크 엣지: 통신 기지국이나 지역 접속 지점에 위치한 서버로, 모바일 사용자와 몇 밀리초 거리에 있으며 로컬에서 실행하기에는 성능이 부족한 디바이스의 워크로드를 처리합니다.
- 클라우드: 모델을 학습하고, 장기 데이터를 저장하며, 엣지 디바이스 전체를 관리하는 중앙 리전입니다.
엣지에서 데이터를 처리하는 이유#
첫 번째 이유는 지연 시간입니다. 빛은 광섬유를 통해 밀리초당 약 200킬로미터를 이동하므로, 1,000km 떨어진 데이터 센터는 라우팅, 대기열 처리, 연산을 고려하기 전에도 왕복 지연 시간을 최소 10ms 추가합니다. 밀리초 단위로 반응해야 하는 자율주행차와 로봇은 기기 내에서 실시간 추론을 실행합니다. 두 번째는 대역폭입니다. 1080p H.264 카메라 스트림 한 개에는 초당 몇 메가비트가 필요하므로 카메라 100대가 있는 현장에서는 초당 수백 메가비트를 지속적으로 업로드해야 합니다. 반면 탐지 이벤트를 JSON으로 보내면 몇 킬로바이트면 됩니다. 현장에서 처리하면 사람의 원본 이미지도 로컬에 보관할 수 있어 건물 밖으로는 집계 수치, 알림, 익명화된 결과만 전송됩니다. 이를 통해 데이터 개인정보 보호 의무를 간소화할 수 있으며, 농장, 선박, 광산, 원격 인프라에서 네트워크가 중단되어도 시스템이 계속 작동합니다.
실제로 엣지와 클라우드는 순환 구조를 이룹니다. 디바이스는 모든 프레임을 로컬에서 처리하고 이벤트와 선택된 샘플만 상위 시스템으로 전송합니다. 클라우드는 이 샘플을 사용해 모델을 재학습하고 개선된 모델을 다시 배포합니다:
이 패턴은 생산 라인에서 다음 제품이 도착하기 전에 불량 부품을 걸러내야 하는 품질 검사, 연결 상태가 좋지 않은 농지의 작물 및 가축 모니터링, 교차로 카메라에 따라 신호를 조정하는 교통 관리 시스템에 적용됩니다.
엣지 컴퓨팅과 관련 용어 비교#
클라우드 컴퓨팅은 대규모 데이터 센터의 탄력적 용량을 중앙 집중화하고, 엣지 컴퓨팅은 여기서 연산을 외부로 확장하므로 대부분의 시스템은 두 방식을 함께 사용합니다. 엣지 AI는 엣지 컴퓨팅에서 AI 모델을 실행하는 분야입니다. Cisco가 도입한 용어인 포그 컴퓨팅은 디바이스와 클라우드 사이의 게이트웨이 및 로컬 서버 계층을 가리키며, 대체로 온프레미스 및 네트워크 계층과 동의어로 사용됩니다. 사물 인터넷(IoT)은 연결된 센서와 디바이스의 네트워크이며, 엣지 컴퓨팅은 이들이 생성한 데이터 대부분이 처리되는 위치입니다.
엣지 디바이스에 모델 배포#
엣지 하드웨어는 마이크로컨트롤러부터 NVIDIA Jetson 모듈과 Raspberry Pi 보드까지, 데이터센터 GPU보다 메모리, 연산 성능, 전력 예산이 훨씬 적습니다. 모델을 8비트 정수로 바꾸는 모델 양자화, 가지치기, 지식 증류를 사용해 크기와 속도를 최적화한 뒤 대상의 런타임 및 가속기에 맞춰 컴파일합니다. 예를 들면 NVIDIA GPU용 TensorRT, Intel CPU 및 NPU용 OpenVINO, Android용 LiteRT, Apple 장치용 Core ML이 있습니다. Ultralytics YOLO의 내보내기 모드는 학습된 모델 하나를 이러한 형식으로 변환합니다. 다음 예제는 YOLO26을 모바일 및 ARM CPU용 Tencent 추론 프레임워크인 NCNN으로 내보내고, 변환된 모델을 실행합니다.
from ultralytics import YOLO
# Export YOLO26n to NCNN, a lightweight runtime for ARM CPUs and mobile devices
model = YOLO("yolo26n.pt")
ncnn_path = model.export(format="ncnn") # writes the yolo26n_ncnn_model folder
# Load the exported model and run it on this machine's CPU
ncnn_model = YOLO(ncnn_path)
results = ncnn_model("https://ultralytics.com/images/bus.jpg")
print(f"Inference: {results[0].speed['inference']:.1f} ms")내보내기 과정에서 네트워크 구조용 model.ncnn.param, 가중치용 model.ncnn.bin, 클래스 이름과 입력 크기용 metadata.yaml가 포함된 yolo26n_ncnn_model 폴더가 생성됩니다. 출력된 시간은 모델을 실행하는 머신에서 측정한 이미지당 추론 지연 시간이며, 엣지 애플리케이션의 프레임 레이트 예산에 모델이 들어맞는지를 결정하는 수치입니다.










