엣지 컴퓨팅에 대하여1

도건우·2025년 6월 11일
0

엣지 컴퓨팅

목록 보기
1/3

2025년 5월 30일 지도교수님이 엣지 컴퓨팅에 대한 사전 조사를 오더했다. 이에 따라 정리한 내용을 공유하고자 한다.

Edge Computing

엣지 컴퓨팅(Edge Computing)이란, 데이터를 생성한 곳 근처(=Edge)에서 직접 처리하고 분석하여, 중앙 서버나 클라우드로 보내는 데이터의 양을 줄이고, 지연(Latency)과 트래픽 비용을 줄이는 컴퓨팅 방식이다.

쉽게 말하면, 클라우드 컴퓨팅의 반대되는 개념이다. 이 주제는 내가 학부시절 졸업과제로 수행했던 작품 주제와 유사한 내용이였다.

예를 들면, CCTV 감지 시스템에서 촬영된 이미지를 서버로 전송하지 않고, 카메라 혹은 엣지 노드에서 객체 탐지 등 처리하는 내용이라면 이것은 엣지 컴퓨팅이라고 부를 수 있다.

내가 학부 시절에 구현한 주제는 버스 얼굴 기반 결제 시스템이였는데, 이 때 나는 얼굴 촬영 이미지를 전부 서버로 전송하도록 구현했다. 이러한 개념을 좀 더 알았다면 높은 퀄리티의 졸업작품을 만들 수 있지 않았을까? 하는 아쉬움이 남는다.

다시 돌아와서, 엣지 컴퓨팅은 데이터가 생성된 그 자리에서 처리하는 컴퓨팅이다.

네트워크 트래픽 부하

네트워크 기반 전송은 오버헤드가 분명하다. 물론 이 자체가 오버헤드는 아니지만, 아주 큰 크기의 데이터 전송이라면 오버헤드가 된다. 한 가지 예를 들어서 설명드리면, 아래 이미지 2개를 첨부한다.

Fig 1. Disaggregation Flash

Fig 2. figure shows that the percentage
resource savings of disaggregated Flash as a function of compute intensity and storage capacity requirement scaling

Fig 1처럼 스토리지와 CPU를 분리하여 각각 다른 노드로 설정하는 방식은 아주 흔하다. 이를 디스어그리게이션(Disaggregation)이라고 말하며, 하나의 서버에 통합되어 있는 자원을 분리해서, 각각 독립적으로 구성하고 네트워크로 연결해서 사용하는 구조이다.

왜 이러한 기법이 필요한가? 자원 낭비, 유연한 확장을 위해서 이러한 기법이 사용된다. 어떤 서버는 CPU가 남고, 스토리지가 부족할 수도 있다. 반대로 스토리지는 부족하고 연산은 자주 사용하지 않을 수 있다.
즉, 필요한 자원만 동적으로 할당해서 낭비를 줄이기 위함이다.

근데 Fig 2는 뭔데?

Fig 2는 스토리지 요구량과 연산 요구량이 밸런스를 이루지 않는다면, 오히려 디스어그리게이션이 네트워크 오버헤드를 발생시키고, 이점은 없다는 것이다.

여기서 내가 말하고 싶은 것은 생각보다 네트워크 이동량이 오버헤드를 발생시키는 경우가 많다.

엣지 컴퓨팅과 트래픽

클라우드 중심 구조의 문제는 다음과 같다. 모든 데이터를 클라우드로 전송하면 트래픽이 폭증한다. 결과적으로 지연 증가, 비용 증가, 장애 취약점이다.
이 때, 엣지 컴퓨팅은 필요한 데이터만 클라우드로 보내거나, 전처리 요약등을 엣지에서 먼저 수행하는 Near-Data-processing을 수행할 수 있다.

딥 러닝과 엣지 컴퓨팅

최근들어 스마트시티, 지능형 CCTV와 같은 엣지에서 딥 러닝 모델이 사용되는 경우가 있다. 따라서 딥러닝과 엣지 컴퓨팅은 상호 보완적 기술인데, 딥러닝은 데이터가 많고, 연산도 아주 무겁다. 즉 그래픽카드가 장착된 노드에서는 추론 및 가벼운 연산을 수행할 수 있겠지만,

그래픽카드가 장착된 CCTV를 굳이 만들 필요가 있을까? 하지만, 이를 CPU 기반에서도 추론 및 연산(학습)을 하도록 다양한 연구가 진행되고 있다.

주요 기술 동향

  1. TinyML
  2. 모델 양자화
  3. 온-디바이스 학습
  4. 스플릿 컴퓨팅

TinyML/Mobile DL

양자화랑 비슷하게 작고 가벼운 모델을 엣지에서 실행할 수 있도록 하는 것이다.
아주 작은 초경량 머신러닝 모델인데, 아직 이 부분에 대한 자료는 탐색하지 않았다.

NDPipe

DGIST(대구경북과기원)에서 발표한 논문 주제이다. 이 논문에서는 사진 저장 시스템에서 이미지 데이터 전송이 병목이 된다고 제시한다. 이에 따라 데이터 주변 처리(NDP)를 도입하여, 병목 현상을 완화하고자 했으나 오히려 이러한 점이 새로운 오버헤드를 발생시키고 있다고 한다.

NDP를 적용하여도 여러 저장 서버간 가중치 동기화 과정이 큰 오버헤드이다. 논문에서는 엣지 서버의 낮은 성능으로 인해 이러한 문제가 발생한다고 한다.

위 이미지를 보면 일반 시스템 대비 가중치 동기화, 딥러닝 연산이 떨어지는 것을 확인할 수 있다.

이 논문의 노벨티는 저장 서버에서 연산 작업을 최적화하는 엔진을 개발했다는 점이 있으며, 관심있는 독자는 한번 직접 읽어보길 바란다.

데이터 스플릿

NDPipe의 예시를 들어 설명하고자 한다.

위 이미지를 보면 학습 가능 레이어와, 가중치 고정 레이어가 있는데, 의미는 학습 가능 레이어같이 연산이 작은 부분은 엣지에서 수행하는 것이다.

또한 무거운 작업은 중앙 서버에서 처리하도록 하는 것을 말한다. 해당 논문에서는 이를 통해 파인 튜닝이 빨라졌다고 설명하고 있다.

파인튜닝과 엣지튜닝

머신러닝, 딥러닝을 연구하는 사람이라면 파인튜닝이라는 용어를 들어 봤을 것이다.

파인튜닝은 사전학습(pretrained)된 딥러닝 모델을, 작은 양의 목적 데이터에 맞게 추가 학습시켜 특화시키는 과정이다.
전체 모델 혹은 일부 레이어의 파라미터를 업데이트하여 고성능 서버나 GPU에서 수행한다. 대표적인 Transfer Learning 기법이다.

그러나 엣지 튜닝은 엣지 디바이스에서도 부분적인 파인튜닝을 가능하게 하기 위한 경량 학습 기법인데, 즉엣지에서 생성되는 데이터를 기반으로 엣지에 최적화된 모델을 학습하겠다는 것이다.

총총

즉 엣지 컴퓨팅은 아주 다양한 기술의 연합이라고 할 수 있는데, 엣지 컴퓨팅 기반 연합 학습, 엣지 스토리지 등등
아주 다양한 파생 기술들이 존재한다.
다음 포스트에서는 연합 학습에 대해서 살펴보도록 하자.

0개의 댓글