LLM 구현을 위한 효율적인 메모리 관리 및 병렬화 기법을 갖는 추론연산 DRAM PIM 하드웨어 구조 개발
초거대 언어 모델 (LLM) 추론 시스템의 메모리 사용량 감소, 전력 효율성 향상, 및 처리율 향상을 지원하는 PIM 하드웨어, 컴파일러, 및 시스템 SW 개발하며 다음의 산출물을 가진다. ● HW 아키텍처 디자인: 희소화 및 양자화된 LLM 가속을 지원하는 PIM 아키텍처 및 전력 효율성 향상을 위한 HW-SW 기술 개발● 컴파일러: PIM 다중 이기종 ...
메모리 내재 연산
초거대 언어 모델
메모리 근접 연산
인공지능 가속기 컴파일러
인공지능 추론 시스템
2
주관|
2020년 2월-2023년 2월
|150,000,000원
마이크로서비스 구조에서 사용자 서비스 수준 목표(SLO) 만족을 위한 컴퓨팅 자원 관리 기술 및 통합 관리 프레임워크 연구 및 개발
- 1년차 세부 내용: 먼저, 다양한 종류의 마이크로서비스를 수행할 컴퓨팅 환경을 구축하고, 구축한 컴퓨팅 환경에서 각 마이크로서비스를 수행하여, 마이크로서비스 별로 컴퓨팅 자원 사용량을 분석하고, 각 컴퓨팅 자원(CPU, memory, storage, network 등) 및 소프트웨어의 상태 변화에 따른 마이크로서비스의 성능 변화를 관찰 및 분석한다. 이를 위해, 기존 자원 격리 기술들을 이용하여, 각 인스턴스에게 할당된 자원의 양을 조절하고 마이크로서비스의 응답 시간에 끼치는 영향을 관찰 및 분석한다. 또한, 이종 마이크로서비스 인스턴스들을 다양한 조합으로 한 컴퓨팅 노드에 배치해 봄으로, 다른 마이크로서비스로 인한 자원 간섭에 따른 종단 간 지연시간(end-to-end latency)의 영향을 분석한다. - 2년차 세부 내용: 먼저, 각 컴퓨팅 노드에서 마이크로서비스 인스턴스들 간 자원 간섭 및 포화상태를 주기적으로 관측하는 경량의 모니터(light-weight monitor)를 연구 및 개발한다. 컴퓨팅 자원 사용 정보 중 마이크로서비스의 성능에 영향이 큰 정보를 선별적으로 관리자에게 전송한다. 또한, 동적으로 모니터링 주기 및 요소를 조절하여, 실제 컴퓨팅 노드에 모니터링으로 인한 부하를 최소화하고, 실제 서비스의 응답시간에 영향을 주지 않는 모니터링 기술을 연구 및 개발한다. 다음으로, 각 컴퓨팅 노드에서 마이크로서비스 성능에 영향을 주는 자원이 부족하거나 간섭이 발생하면, 해당 자원을 격리 및 전용으로 할당하는 자원 관리 기술을 연구 및 개발한다. 모니터로부터 전달받은 정보를 기반으로 마이크로서비스의 성능을 예측하고, 성능 보장을 위해 변화하는 부하에 맞춰 마이크로서비스 인스턴스가 사용하는 컴퓨팅 자원을 동적으로 조절하며, 간섭이 발생하는 자원을 적절히 격리(isolation)하는 자원 관리 기술을 연구 및 개발한다. - 3년차: 하나의 서비스를 구성하는 마이크로서비스들의 의존성 및 실행 순서 등을 고려하여 종단간 지연시간을 파악하는 모니터링 기술을 연구 및 개발한다. 특히, 2년차에서 개발한 컴퓨팅 노드 수준의 모니터링과 연계하여 어느 마이크로서비스가 과도한 부하로 인해 응답시간을 초과하는지 빠르게 파악하고 대처할 수 있도록 한다. 다음으로, 모니터링을 통해 발견한 문제를 해결하기 위해, 마이크로서비스 간 네트워크 부하를 줄이고 컴퓨팅 자원 간섭 문제를 해결할 수 있는 마이크로서비스 인스턴스 배치 및 관리 정책을 연구하고 개발한다. 예를 들어, 간섭이 심한 서버에서 수행 중이던 인스턴스를 중지시키고 다른 노드에 인스턴스를 새롭게 생성한다든지, 하나의 마이크로서비스를 위해 여러 머신에 걸쳐 인스턴스를 배치시킬지 등을 서비스 수준의 인스턴스 관리기법을 연구 및 개발한다. 또한, 마이크로서비스 간의 매핑(mapping)을 새롭게 하거나, 인스턴스 간 패스(path)를 변경함으로써 지연시간을 개선할 수 있는 기술도 연구 및 개발한다. - 4년차: 1~3년차에 연구 및 개발한 기술들을 통합하여 서비스의 사용자 SLO를 만족시킬 수 있는 통합 프레임워크를 개발한다. 개발된 기술들이 효과적으로 통합되어, 어떠한 상황에서도 서비스 수준에서 사용자 SLO를 만족시킬 수 있도록 한다. 또한, 온라인으로 인스턴스들의 특성을 판단하여 배치할 수 있도록 온라인 프로파일링(profiling) 기법 연구 및 개발한다.
마이크로서비스 구조에서 사용자 서비스 수준 목표(SLO) 만족을 위한 컴퓨팅 자원 관리 기술 및 통합 관리 프레임워크 연구 및 개발
- 1년차 세부 내용: 먼저, 다양한 종류의 마이크로서비스를 수행할 컴퓨팅 환경을 구축하고, 구축한 컴퓨팅 환경에서 각 마이크로서비스를 수행하여, 마이크로서비스 별로 컴퓨팅 자원 사용량을 분석하고, 각 컴퓨팅 자원(CPU, memory, storage, network 등) 및 소프트웨어의 상태 변화에 따른 마이크로서비스의 성능 변화를 관찰 및 분석한다. 이를 위해, 기존 자원 격리 기술들을 이용하여, 각 인스턴스에게 할당된 자원의 양을 조절하고 마이크로서비스의 응답 시간에 끼치는 영향을 관찰 및 분석한다. 또한, 이종 마이크로서비스 인스턴스들을 다양한 조합으로 한 컴퓨팅 노드에 배치해 봄으로, 다른 마이크로서비스로 인한 자원 간섭에 따른 종단 간 지연시간(end-to-end latency)의 영향을 분석한다. - 2년차 세부 내용: 먼저, 각 컴퓨팅 노드에서 마이크로서비스 인스턴스들 간 자원 간섭 및 포화상태를 주기적으로 관측하는 경량의 모니터(light-weight monitor)를 연구 및 개발한다. 컴퓨팅 자원 사용 정보 중 마이크로서비스의 성능에 영향이 큰 정보를 선별적으로 관리자에게 전송한다. 또한, 동적으로 모니터링 주기 및 요소를 조절하여, 실제 컴퓨팅 노드에 모니터링으로 인한 부하를 최소화하고, 실제 서비스의 응답시간에 영향을 주지 않는 모니터링 기술을 연구 및 개발한다. 다음으로, 각 컴퓨팅 노드에서 마이크로서비스 성능에 영향을 주는 자원이 부족하거나 간섭이 발생하면, 해당 자원을 격리 및 전용으로 할당하는 자원 관리 기술을 연구 및 개발한다. 모니터로부터 전달받은 정보를 기반으로 마이크로서비스의 성능을 예측하고, 성능 보장을 위해 변화하는 부하에 맞춰 마이크로서비스 인스턴스가 사용하는 컴퓨팅 자원을 동적으로 조절하며, 간섭이 발생하는 자원을 적절히 격리(isolation)하는 자원 관리 기술을 연구 및 개발한다. - 3년차: 하나의 서비스를 구성하는 마이크로서비스들의 의존성 및 실행 순서 등을 고려하여 종단간 지연시간을 파악하는 모니터링 기술을 연구 및 개발한다. 특히, 2년차에서 개발한 컴퓨팅 노드 수준의 모니터링과 연계하여 어느 마이크로서비스가 과도한 부하로 인해 응답시간을 초과하는지 빠르게 파악하고 대처할 수 있도록 한다. 다음으로, 모니터링을 통해 발견한 문제를 해결하기 위해, 마이크로서비스 간 네트워크 부하를 줄이고 컴퓨팅 자원 간섭 문제를 해결할 수 있는 마이크로서비스 인스턴스 배치 및 관리 정책을 연구하고 개발한다. 예를 들어, 간섭이 심한 서버에서 수행 중이던 인스턴스를 중지시키고 다른 노드에 인스턴스를 새롭게 생성한다든지, 하나의 마이크로서비스를 위해 여러 머신에 걸쳐 인스턴스를 배치시킬지 등을 서비스 수준의 인스턴스 관리기법을 연구 및 개발한다. 또한, 마이크로서비스 간의 매핑(mapping)을 새롭게 하거나, 인스턴스 간 패스(path)를 변경함으로써 지연시간을 개선할 수 있는 기술도 연구 및 개발한다. - 4년차: 1~3년차에 연구 및 개발한 기술들을 통합하여 서비스의 사용자 SLO를 만족시킬 수 있는 통합 프레임워크를 개발한다. 개발된 기술들이 효과적으로 통합되어, 어떠한 상황에서도 서비스 수준에서 사용자 SLO를 만족시킬 수 있도록 한다. 또한, 온라인으로 인스턴스들의 특성을 판단하여 배치할 수 있도록 온라인 프로파일링(profiling) 기법 연구 및 개발한다.
● PIM 클러스터 시뮬레이터: 데이터를 연산유닛에 가져올 수 있는 대역폭이 넓을수록 빠르고 효율적인 딥러닝 학습이 가능하기 때문에 3D- stacked DRAM을 활용하는 구조를 사용하며, 내부의 논리회로층(Logic layer)에 딥러닝 가속하드웨어를 설계하여 컨트롤 코어 또는 host CPU와의 통신을 최소화 시켜 효율성을 극대화하는 것이 필수적이다. 제안하는 PIM 클러스터의 효율성을 입증하기 위한 아키텍쳐 시뮬레이터 설계가 필수적이며, 새로운 구조를 통해 3x 속도향상 시키는 것을 목표로 한다.
● PIM 클러스터 스케쥴링: 하드웨어 자원들(PIM 코어, 시스템 내부 대역폭, 컨트롤 CPU)을 대기없이 활용해야 학습속도의 향상을 극대화시킬 수 있으며, 이를 위해 다수의 딥러닝 학습요청(Multi-user)을 하드웨어에 효율적으로 배정하는 스케쥴링(Scheduling) 알고리즘 개발이 필수적이다. 기존의 스케쥴링 대비 4x 속도향상 시키는 것을 목표로 한다.
저장: 고용량·저비용 차세대 저장장치와, 과학기술분야의 다양한 이종 스토리지 시스템들을 유기적으로 통합한 고성능 탈중앙 분산 스토리지 기술을 연구한다. IoT 센서 데이터와 같이 저장하지 못하고 버리던 암흑데이터를 심층신경망 기반으로 압축 및 저장하여 활용하는 기술을 연구한다.
수집관리: 연구데이터의 변동(혈통)을 자동으로 추출 및 블록체인으로 공유하는 기술과, 비정형 연구데이터로부터 메타 데이터를 자동으로 추출하는 기술을 연구한다. 데이터 이력과 메타데이터 기반의 대규모 지능형 검색·추천 기술을 연구한다. 비정형 데이터에 대해 오류를 자동으로 정제하는 기술을 연구한다.
분석처리: 대규모 컴퓨팅 시스템 없이 PC 또는 서버 한 대 만으로 대규모 정형 및 비정형(1차원,2차원,그래프) 데이터들을 초고속으로 분석하고, 패턴 마이닝하며, 시각화하는 GPU 및 near-data processing 기반 기술들을 연구한다. 두 가지 이상의 대규모 이종 데이터를 통합 분석하는 텐서 정규화 및 분해 기술들을 연구한다.
시스템: 분산,로컬,메모리,캐쉬의 모든 수준에서 데이터 중복을 제거하여 암흑데이터를 감소시키는 기술을 연구한다. 연구 가상화 클라우드의 성능을 향상시키고 에너지를 절감하는 기술을 연구한다. 엣지 컴퓨팅을 기반으로 원격지 연구데이터의 접근 속도와 데이터 이력 블록체인의 공유 속도를 향상시키는 기술을 연구한다.