KR20240070784A - 실시간 ai 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 기록 매체에 저장된 프로그램 - Google Patents

실시간 ai 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 기록 매체에 저장된 프로그램 Download PDF

Info

Publication number
KR20240070784A
KR20240070784A KR1020220152087A KR20220152087A KR20240070784A KR 20240070784 A KR20240070784 A KR 20240070784A KR 1020220152087 A KR1020220152087 A KR 1020220152087A KR 20220152087 A KR20220152087 A KR 20220152087A KR 20240070784 A KR20240070784 A KR 20240070784A
Authority
KR
South Korea
Prior art keywords
time
statistical
data
processing
module
Prior art date
Application number
KR1020220152087A
Other languages
English (en)
Inventor
김성민
Original Assignee
티에스엔랩 주식회사
Filing date
Publication date
Application filed by 티에스엔랩 주식회사 filed Critical 티에스엔랩 주식회사
Publication of KR20240070784A publication Critical patent/KR20240070784A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y10/00Economic sectors
    • G16Y10/75Information technology; Communication
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y20/00Information sensed or collected by the things
    • G16Y20/10Information sensed or collected by the things relating to the environment, e.g. temperature; relating to location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Abstract

본 발명의 일 실시예에 의하면, 감지 데이터의 수집으로부터 타겟 노드로에서의 전송 데이터의 수신까지 걸리는 시간에 대하여 각 프로세스별 처리 시간을 산출하고, 산출된 프로세스별 처리 시간의 통계값을 저장하고, 요구되는 데이터 전송 주기와 데이터 도달 타이밍에 대한 타이밍 조건을 입력받고, 상기 통계 모듈에서 저장하는 프로세스별 처리 시간의 통계값을 이용하여 타이밍 조건에 대응하여 센서 인터페이스, AI 가속기 및 통신 모듈의 동작에 대한 스케줄링을 수행함으로써 높은 실시간성을 갖는 AI 추론 및 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 프로그램이 제공될 수 있다.

Description

실시간 AI 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 기록 매체에 저장된 프로그램{INTELLIGENT INTERNET OF THINGS PROCESSING DEVICE FOR REAL-TIME AI INFERENCE AND DATA TRANSMISSION, INTELLIGENT INTERNET OF THINGS PROCESSING METHOD AND PROGRAM STORED IN A RECORDING MEDIUM}
본 발명은 지능형 사물 인터넷 처리 기술에 관한 것으로, 보다 상세하게는 실시간 AI 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 기록 매체에 저장된 프로그램에 관한 것이다.
컴퓨터 통신에서 실시간성 이라는 의미는 정해진 시간에 정해진 데이터가 높은 확률로 도착하는 것을 의미한다. 예를 들어, A라는 노드가 데이터를 생성해 B라는 노드에 전송할 때 높은 확률로 예정된 시간 안에 데이터가 도착하면 실시간성이 높다고 표현하고, 낮은 확률로 예정된 시간에 도착하면 실시간성이 낮다고 표현할 수 있다.
IoT(Internet of Things) 분야의 통신에서 실시간성을 보장하기 위해선 예정된 시간에 데이터가 도착하도록 보장하기 위해, (1) 센서로부터 데이터 수집, (2) 데이터를 패킷 형태로 가공, (3) 패킷 전송, (4) 패킷 도착까지의 4가지 프로세스가 정해진 시간 내에 완료가 되도록 스케줄링 할 필요가 있다.
최근 지능형 사물 인터넷(AIoT:AI IoT) 분야에선 위의 과정에 AI 추론 기능이 추가 되기 때문에 (1) 센서로부터 데이터 수집, (2) AI 추론, (3) 데이터를 패킷 형태로 가공, (4) 패킷 전송, (5) 패킷 도착까지의 5가지 프로세스가 수행되므로, 종래와 비교하여 AI 추론 과정이 추가된다. AI 추론 과정은 다른 과정에 비해 처리 시간이 길기 때문에 정해진 시간에 패킷이 도착하게 하게 위해선 특화된 형태로 H/W를 구성해야 하고, 특화된 형태의 H/W를 이용한 스케줄링을 해야 한다.
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 도출된 것으로서, 본 발명이 해결하기 위한 과제는, 높은 실시간성을 갖는 AI 추론 및 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 프로그램을 제공하는 것이다.
상술한 과제를 해결하기 위한 수단으로서, 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치는, 실시간 AI 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치로서, 감지 데이터를 수집하는 하나 이상의 IoT 센서와 연결되고, 수집된 감지 데이터를 IoT 센서로부터 수신하는 센서 인터페이스; 수신된 감지 데이터를 머신러닝에 의해 구축된 AI 학습 모델에 입력하여 추론 프로세스를 수행하고, AI 학습 모델에 의한 추론 결과 데이터를 생성하는 AI 가속기; 추론 결과 데이터를 포함하는 전송 데이터를 통신 네트워크를 통하여 외부의 노드로 전송하는 통신 모듈; 감지 데이터의 수집으로부터 타겟 노드로에서의 전송 데이터의 수신까지 걸리는 시간에 대하여 각 프로세스별 처리 시간을 산출하고, 산출된 프로세스별 처리 시간의 통계값을 저장하는 통계 모듈; 및 요구되는 데이터 전송 주기와 데이터 도달 타이밍에 대한 타이밍 조건을 입력받고, 상기 통계 모듈에서 저장하는 프로세스별 처리 시간의 통계값을 이용하여 타이밍 조건에 대응하여 상기 센서 인터페이스, 상기 AI 가속기 및 상기 통신 모듈의 동작에 대한 스케줄링을 수행하는 스케줄링 모듈을 포함할 수 있다.
일 실시예에서, 상기 통계 모듈이 산출하는 각 프로세스별 처리 시간은, IoT 센서가감지 데이터를 전송한 시간부터 상기 센서 인터페이스가 감지 데이터를 수신할 때까지 걸리는 시간, 상기 AI 가속기가 감지 데이터를 수신한 시간부터 추론 결과 데이터를 생성할 때까지 걸리는 시간, 상기 통신 모듈이 추론 결과 데이터를 수신한 시간부터 추론 결과 데이터를 패킷화하여 전송 데이터를 생성할 때까지 걸리는 시간, 및 상기 타겟 노드가 상기 통신 모듈의 전송 데이터를 수신할 때까지 걸리는 시간을 포함할 수 있다.
일 실시예에서, 상기 통계 모듈은 프로세스별 처리 시간의 통계값으로부터 미리 결정된 시간 동안의 가장 최신의 통계값인 현재 시간 통계값을 산출하여 제공하고, 상기 스케줄링 모듈은 현재 시간 통계값에 기초하여 스케줄링을 수행할 수 있다.
일 실시예에서, 상기 통계 모듈은 프로세스별 처리 시간의 통계값으로부터 과거의 동일한 시간대별 통계값인 시간대별 통계값을 산출하여 제공하고, 상기 스케줄링 모듈은 시간대별 통계값에 기초하여 스케줄링을 수행할 수 있다.
일 실시예에서, 상기 통계 모듈은 프로세스별 처리 시간의 통계값으로부터 미리 결정된 시간 동안의 가장 최신의 통계값인 현재 시간 통계값을 산출하여 제공하고, 상기 통계 모듈은 프로세스별 처리 시간의 통계값으로부터 과거의 시간대별 통계값인 시간대별 통계값을 산출하여 제공하며, 상기 스케줄링 모듈은 현재 시간 통계값 및 시간대별 통계값에 기초하여 스케줄링을 수행할 수 있다.
일 실시예에서, 상기 스케줄링 모듈은 현재 시간 통계값과 바로 이전의 현재 시간 통계값의 변화량인 현재 시간 통계값 변화량을 산출하고, 요구되는 타이밍 조건의 시간대별 통계값과 바로 이전 시간대의 시간대별 통계값의 변화량인 시간대별 통계값 변화량을 산출하며, 현재 시간 통계값 변화량과 시간대별 통계값 변화량의 크기에 비례하여, 현재 시간 통계값 및 시간대별 통계값을 반영하여 스케줄링을 수행할 수 있다.
일 실시예에서, 상기 AI 가속기는 복수의 AI 학습 모델을 포함하고, 상기 통계 모듈은 각 AI 학습 모델에 대한 프로세스별 처리 시간을 산출하고, 각 AI 학습 모델에 대한 프로세스별 처리 시간의 통계값을 저장하고, 상기 스케줄링 모듈은 요구되는 타이밍 조건과 관련된 AI 학습 모델에 대한 프로세스별 처리 시간의 통계값에 기초하여 스케줄링을 수행할 수 있다.
일 실시예에서, 상기 센서 인터페이스는 상기 스케줄링 모듈의 스케줄링에 따라 하나 이상의 IoT 센서에 감지 데이터 수집을 요청할 수 있다.
상술한 과제를 해결하기 위한 다른 수단으로서, 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 방법은, 실시간 AI 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치에 의해 수행되는 지능형 사물 인터넷 처리 방법으로서, 감지 데이터를 수집하는 하나 이상의 IoT 센서로부터 수집된 감지 데이터를 수신하는 센서 인터페이스 처리 단계; 수신된 감지 데이터를 머신러닝에 의해 구축된 AI 학습 모델에 입력하여 추론 프로세스를 수행하고, AI 학습 모델에 의한 추론 결과 데이터를 생성하는 AI 가속기 처리 단계; 추론 결과 데이터를 포함하는 전송 데이터를 통신 네트워크를 통하여 외부의 노드로 전송하는 통신 모듈 처리 단계; 감지 데이터의 수집으로부터 타겟 노드로에서의 전송 데이터의 수신까지 걸리는 시간에 대하여 각 프로세스별 처리 시간을 산출하고, 산출된 프로세스별 처리 시간의 통계값을 저장하는 통계 모듈 처리 단계; 및 요구되는 데이터 전송 주기와 데이터 도달 타이밍에 대한 타이밍 조건을 입력받고, 상기 통계 모듈 처리 단계에서 저장된 프로세스별 처리 시간의 통계값을 이용하여 타이밍 조건에 대응하여 센서 인터페이스, AI 가속기 및 통신 모듈의 동작에 대한 스케줄링을 수행하는 스케줄링 모듈 처리 단계를 포함할 수 있다.
상술한 과제를 해결하기 위한 수단으로서, 본 발명의 일 실시예에 따른 프로그램은 상기 지능형 사물 인터넷 처리 방법을 컴퓨터에 의해 수행시키기 위해 기록 매체에 저장된 프로그램을 포함할 수 있다.
본 발명의 일 실시예에 따르면, 감지 데이터의 수집으로부터 타겟 노드로에서의 전송 데이터의 수신까지 걸리는 시간에 대하여 각 프로세스별 처리 시간을 산출하고, 산출된 프로세스별 처리 시간의 통계값을 저장하고, 요구되는 데이터 전송 주기와 데이터 도달 타이밍에 대한 타이밍 조건을 입력받고, 상기 통계 모듈에서 저장하는 프로세스별 처리 시간의 통계값을 이용하여 타이밍 조건에 대응하여 센서 인터페이스, AI 가속기 및 통신 모듈의 동작에 대한 스케줄링을 수행함으로써 높은 실시간성을 갖는 AI 추론 및 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 프로그램이 제공될 수 있다.
도 1은 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치 의 구성을 도시하는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치 의 스케줄링 방법의 실시예이다.
도 3은 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치 의 스케줄링 방법의 실시예이다.
도 4는 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치 에 의해 수행되는 지능형 사물 인터넷 처리 방법의 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.
본 발명의 실시예들은 당해 기술 분야에서 통상의 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위하여 제공되는 것이며, 하기 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 하기 실시예에 한정되는 것은 아니다. 오히려, 이들 실시예는 본 개시를 더욱 충실하고 완전하게 하고, 당업자에게 본 발명의 사상을 완전하게 전달하기 위하여 제공되는 것이다.
여기에 설명되는 다양한 실시예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 장치로 읽을 수 있는 기록매체 내에서 구현될 수 있다.
하드웨어적인 구현에 의하면, 여기에 설명되는 실시예는 ASICs (application specific integrated circuits), DSPs (digital signal processors), DSPDs (digital signal processing devices), PLDs (programmable logic devices), FPGAs (field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기능 수행을 위한 전기적인 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
소프트웨어적인 구현에 의하면, 절차나 기능과 같은 실시예들은 적어도 하나의 기능 또는 작동을 수행하게 하는 별개의 소프트웨어 모듈과 함께 구현될 수 있다. 소프트웨어 코드는 적절한 프로그램 언어로 쓰여진 소프트웨어 어플리케이션에 의해 구현될 수 있다.
도 1은 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치 (100)의 구성을 나타내는 블록도이다.
도 1을 참조하면, 지능형 사물 인터넷 처리 장치(100)는 IoT 센서(200) 및 노드(300)와 통신 네트워크를 통하여 연결될 수 있다. 지능형 사물 인터넷 처리 장치(100)는 센서 인터페이스(101), AI 가속기(102), 통신 모듈(103), 스케줄링 모듈(104) 및 통계 모듈(105)를 포함할 수 있다.
지능형 사물 인터넷 처리 장치(100)는 통신 네트워크 상에서 타겟 노드(300)와 다른 노드를 구성할 수 있다. 도 1에는 IoT 센서(200)가 지능형 사물 인터넷 처리 장치(100)와 다른 노드 구성으로 도시되어 있으나, 본 발명은 이러한 실시예에 한정되지 않고, IoT 센서(200)가 지능형 사물 인터넷 처리 장치(100)의 내부에 포함되어 통신 네트워크 상에서 IoT 센서(200)와 지능형 사물 인터넷 처리 장치(100)가 하나의 노드를 구성할 수 있다.
센서 인터페이스(101)는 감지 데이터를 수집하는 하나 이상의 IoT 센서(200)와 연결되고, 수집된 감지 데이터를 IoT 센서(200)로부터 수신할 수 있다. 센서 인터페이스(101)는 스케줄링 모듈(104)의 스케줄링에 따라 하나 이상의 IoT 센서(200)에 감지 데이터 수집을 요청할 수 있다.
AI 가속기(102)는 수신된 감지 데이터를 머신러닝에 의해 구축된 AI 학습 모델에 입력하여 추론 프로세스를 수행하고, AI 학습 모델에 의한 추론 결과 데이터를 생성할 수 있다. AI 가속기(102)는 AI 학습 모델에 의한 추론 기능의 통상의 프로세스를 가속화하여 통상의 AI 학습 모델에 의한 추론 기능 보다 지연 시간 측면에서 더 향상된 성능을 나타낼 수 있다.
통신 모듈(103)은 추론 결과 데이터를 포함하는 전송 데이터를 통신 네트워크를 통하여 외부의 타겟노드(300)로 전송할 수 있다. 통신 모듈(103)은 추론 결과 데이터를 패킷 형태로 가공하여 전송 데이터를 생성하고, 생성된 데이터를 전송할 수 있다. 패킷 형태로 가공할 때, 필요에 따라 인코딩, 암호화 등의 추가적인 처리가 수행될 수 있다.
통계 모듈(105)은 감지 데이터의 수집으로부터 타겟 노드(300)로에서의 전송 데이터의 수신까지 걸리는 시간에 대하여 각 프로세스별 처리 시간을 산출하고, 산출된 프로세스별 처리 시간의 통계값을 저장할 수 있다.
통계 모듈(105)이 산출하는 각 프로세스별 처리 시간은, IoT 센서(200)가 감지 데이터를 전송한 시간부터 센서 인터페이스(101)가 감지 데이터를 수신할 때까지 걸리는 시간, AI 가속기(102)가 센서 인터페이스(101)로부터 감지 데이터를 수신한 시간부터 추론 결과 데이터를 생성할 때까지 걸리는 시간, 통신 모듈(103)이 추론 결과 데이터를 수신한 시간부터 추론 결과 데이터를 패킷화하여 전송 데이터를 생성할 때까지 걸리는 시간, 및 타겟 노드(300)가 통신 모듈(103)의 전송 데이터를 수신할 때까지 걸리는 시간을 포함할 수 있다.
스케줄링 모듈(104)은 요구되는 데이터 전송 주기와 데이터 도달 타이밍에 대한 타이밍 조건을 입력받고, 통계 모듈(105)에서 저장하는 프로세스별 처리 시간의 통계값을 이용하여 타이밍 조건에 대응하여 센서 인터페이스(101), AI 가속기(102) 및 통신 모듈(103)의 동작에 대한 스케줄링을 수행할 수 있다.
본 발명의 제1 실시예에서, 통계 모듈(103)은 프로세스별 처리 시간의 통계값으로부터 미리 결정된 시간 주기 동안의 가장 최신의 통계값인 현재 시간 통계값을 산출하여 제공하고, 스케줄링 모듈(104)은 현재 시간 통계값에 기초하여 스케줄링을 수행할 수 있다.
예를 들면, 미리 결정된 시간 주기가 1시간인 경우에, 통계 모듈(103)은 현재 시점으로부터 1시간 동안의 각 프로세스별 처리 시간의 최신 통계값(현재 시간 통계값)을 산출할 수 있다. 스케줄링 모듈(104)는 현재 시점부터 1시간 동안의 최신 통계값(현재 시간 통계값)에 기초하여 센서 인터페이스(101), AI 가속기(102) 및 통신 모듈(103)의 동작에 대한 스케줄링을 수행할 수 있다. 제1 실시예에 의한 현재 시간 통계값은 현재 시점 이전의 단기간의 프로세스별 처리 시간을 반영할 수 있다.
본 발명의 제2 실시예에서, 통계 모듈(103)은 프로세스별 처리 시간의 통계값으로부터 과거의 동일한 시간대별 통계값인 시간대별 통계값을 산출하여 제공하고 스케줄링 모듈(104)은 시간대별 통계값에 기초하여 스케줄링을 수행할 수 있다. 과거의 동일한 시간대는 미리 결정된 기간 동안(예를 들면, 최근 1주일 동안 또는 최근 1달 동안 등)의 과거의 동일한 시간대를 의미할 수 있다.
예를 들면, 통계 모듈(103)은 1시간 동안의 각 프로세스별 통계값을 매시간 주기마다 산출하고, 매시간 주기마다 산출한 매일의 통계값을 저장할 수 있다. 또한, 통계 모듈(103)은 최근 1주일 동안의 동일한 시간대별 통계값을 평균한 값을 시간대별 통계값으로 설정할 수 있다. 스케줄링 모듈(104)가 현재 시각 14:30에서 최근 1주일 동안의 14:00~15:00 사이의 통계값을 평균화한 시간대별 통계값에 기초하여 센서 인터페이스(101), AI 가속기(102) 및 통신 모듈(103)의 동작에 대한 스케줄링을 수행할 수 있다. 제2 실시예의 시간대별 통계값은 과거의 동일 시간대의 통계값을 반영하며, 제1 실시예의 현재 시간 통계값과 비교하여 더 장기간의 프로세스별 처리 시간을 반영할 수 있다.
본 발명의 제3 실시예에서, 통계 모듈(103)은 프로세스별 처리 시간의 통계값으로부터 미리 결정된 시간 동안의 가장 최신의 통계값인 현재 시간 통계값(제1 실시예)을 산출하여 제공하고, 프로세스별 처리 시간의 통계값으로부터 과거의 시간대별 통계값인 시간대별 통계값(제2 실시예)을 산출하여 제공하며, 스케줄링 모듈(104)은 현재 시간 통계값 및 시간대별 통계값에 기초하여 스케줄링을 수행할 수 있다. 스케줄링 모듈(104)은 현재 시간 통계값과 시간대별 통계값 중 어느 하나만을 반영하여 스케줄링을 수행할 수도 있고, 현재 시간 통계값과 시간대별 통계값을 모두 반영하여 스케줄링을 수행할 수 있다. 이에 대하여는 도 2에서 상세히 설명한다.
본 발명의 제 4 실시예에서, 스케줄링 모듈(104)은 요구되는 타이밍 조건과 관련된 AI 학습 모델에 대한 프로세스별 처리 시간의 통계값에 기초하여 스케줄링을 수행할 수 있다. AI 가속기(102)가 복수의 AI 학습 모델을 포함하고, IoT 센서(200)으로부터 수집되는 감지 데이터에 대하여 복수의 AI 학습 모델의 추론이 수행되는 경우에, 각 AI 학습 모델의 추론 시간이 각각 상이할 수 있다.
통계 모듈(105)은 각 AI 학습 모델에 대한 프로세스별 처리 시간을 산출하여 저장하고, 스케줄링 모듈(104)은 통계 모듈(105)이 저장하고 있는 복수의 AI 학습 모델에 대한 프로세스별 처리 시간 중에서 수집 데이터의 요구되는 타이밍 조건과 관련된 하나 또는 그 이상의 AI 학습 모델의 처리 시간의 통계값에 기초하여 스케줄링을 수행할 수 있다.
도 2는 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치(100)의 스케줄링 방법의 실시예이다.
도 2를 참조하면, 스케줄링 모듈(104)는 현재 시간 통계값 변화량을 산출할 수 있다(S210). 현재 시간 통계값 변화량은 현재 시간 통계값과 바로 이전의 현재 시간 통계값의 변화량을 의미한다. 통계 모듈(105)은 프로세스별 처리 시간의 통계값으로부터 미리 결정된 시간 동안의 가장 최신의 통계값인 현재 시간 통계값을 주기적으로 계산하며, 스케줄링 모듈(104)은 최신의 현재 시간 통계값과 바로 이전의 현재 시간 통계값의 변화량인 현재 시간 통계값 변화량을 산출할 수 있다.
예를 들면, 현재 시각이 14:00이라고 할 때, 현재 시간 통계값은 13:00~14:00 동안의 통계값을 의미할 수 있고, 바로 이전의 현재 시간 통계값은 12:00~13:00 동안의 통계값을 의미할 수 있다. 현재 시간 통계값 변화량은 13:00~14:00 동안의 통계값으로부터 12:00~13:00 동안의 통계값까지의 변화량(차분)을 의미할 수 있다. 이러한 현재 시간 통계값의 변화량은 단기간의 프로세스별 통계값의 변화를 반영할 수 있다.
스케줄링 모듈(104)는 시간대별 통계값 변화량을 산출할 수 있다(S220). 시간대별 통계값 변화량은 요구되는 타이밍 조건의 시간대별 통계값과 바로 이전 시간대의 시간대별 통계값의 변화량을 의미한다. 통계 모듈(105)은 프로세스별 처리 시간의 통계값으로부터 과거의 동일한 시간대별 통계값인 시간대별 통계값을 산출하며, 스케줄링 모듈(104)는 요구되는 타이밍 조건의 시간대별 통계값과 바로 이전의 시간대별 통계값의 변화량인 시간대별 통계값 변화량을 산출할 수 있다.
예를 들면, 현재 시각이 14:30이라고 할 때, 현재 시점에서의 시간대별 통계값은 최근 1주일 동안의 14:00~15:00 동안의 통계값을 의미할 수 있고, 바로 이전 시간대의 시간대별 통계값은 최근 1주일 동안의 13:00~14:00 동안의 통계값을 의미할 수 있다. 시간대별 통계값 변화량은 최근 1주일 동안의 14:00~15:00 동안의 통계값으로부터 최근 1주일 동안의 13:00~14:00 동안의 통계값까지의 변화량(차분)을 의미할 수 있다. 이러한 시간대별 통계값의 변화량은 현재 시간 통계값의 변화량과 비교하여 장기간의 프로세스별 통계값의 변화를 반영할 수 있다.
스케줄링 모듈(104)는 현재 시간 통계값 변화량 및 시간대별 통계값 변화량의 크기에 비례하여 현재 시간 통계값 및 시간대별 통계값을 반영하여 스케줄링을 수행할 수 있다(S230). 예를 들면, 현재 시간 통계값 변화량의 크기가 10이고, 시간대별 통계값 변화량의 크기가 20인 경우에, 스케줄링에 반영하는 현재 시간 통계값과 시간대별 통계값의 비율을 1:2로 설정하여 스케줄링을 수행할 수 있다.
도 2에 도시된 실시예와 다른 실시예로서, 스케줄링 모듈(104)은 현재 시간 통계값과 바로 이전의 현재 시간 통계값의 변화량인 현재 시간 통계값 변화량을 산출하고, 요구되는 타이밍 조건의 시간대별 통계값과 바로 이전의 시간대별 통계값의 변화량인 시간대별 통계값 변화량을 산출하고, 통계값 변화량이 큰 쪽만을 반영하여 스케줄링을 수행할 수 있다.
즉, 현재 시간 통계값 변화량이 시간대별 통계값 변화량보다 큰 경우에, 스케줄링 모듈(104)은 현재 시간 통계값에 기초하여 스케줄링을 수행할 수 있다. 또한, 시간대별 통계값 변화량이 현재 시간 통계값 변화량 보다 큰 경우에, 스케줄링 모듈(104)은 시간대별 통계값에 기초하여 스케줄링을 수행할 수 있다.
도 3은 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치(100)의 스케줄링 방법의 실시예이다.
도 3을 참조하면, 통계 모듈(105)는 복수의 AI 학습 모델에 대한 통계값을 산출할 수 있다. AI 가속기(102)가 복수의 AI 학습 모델을 갖고 있는 경우에, 각 AI 학습 모델별로 추론에 걸리는 시간의 차이가 발생할 수 있다. 이러한 경우, 모든 AI 학습에 대하여 하나의 통계값만을 이용한다면 실시간성을 유지하기 어려울 수 있다. 도 4의 실시에에서는 AI 가속기(102)가 복수의 AI 학습 모델을 포함하는 경우의 예시이다.
스케줄링 모듈(104)는 요구되는 타이밍 조건과 관련된 AI 학습 모델을 결정할 수 있다. 요구되는 타이밍 조건에서 제1 AI 학습 모델을 사용하는 것이 요구된 경우에, 스케줄링 모듈(104)는 제1 AI 학습 모델을 스케줄링 대상으로 결정할 수 있다.
스케줄링 모듈(104)는 결정된 AI 학습 모델에 대한 통계값에 기초하여 스케줄링을 수행할 수 있다. 예를 들면, 제1 AI 학습 모델의 사용이 요구된 경우에, 제1 AI 학습 모델에 대한 통계값에 기초하여 스케줄링을 수행할 수 있다.
상술한 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치에 따르면, 데이터를 수집, 추론, 가공, 전송하는 전 과정을 하나의 장치로 묶고, 그 안에서 지연시간이 오래 걸릴만한 요소에 대해 처리 시간에 대한 통계 자료를 확보 함으로써 전체 데이터 처리 시간을 정해진 시간 내에 가능하도록 스케줄링할 수 있다.
또한, 상술한 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치에 따르면, 데이터 수집부터 전송까지 모든 과정이 하나의 장치 안에 통제 가능한 상태로 존재하기 때문에 데이터를 전송 하는 입장에선 정해진 시간 내에 데이터를 발송할 수 있고, 데이터를 전송 받는 입장에선 정해진 시간 내에 데이터를 전송 받을 수 있다. 이에 따라, AI와 IoT가 결합된 AIoT 분야에서 높은 수준의 데이터 전송 실시간성이 보장될 수 있다.
도 4는 본 발명의 일 실시예에 따른 지능형 사물 인터넷 처리 장치(100)에 의해 수행되는 지능형 사물 인터넷 처리 방법의 흐름도이다.
도 4를 참조하면, 지능형 사물 인터넷 처리 방법은 센서 인터페이스 처리 단계(S110), AI 가속기 처리 단계(S120), 통신 모듈 처리 단계(S130), 통계 모듈 처리 단계(S140), 스케줄링 모듈 처리 단계(S150)를 포함할 수 있다.
센서 인터페이스 처리 단계(S110)에서는, 센서 인터페이스(101)가 감지 데이터를 수집하는 하나 이상의 IoT 센서(200)로부터 수집된 감지 데이터를 수신할 수 있다.
AI 가속기 처리 단계(S120)에서는, AI 가속기(102)가 수신된 감지 데이터를 머신러닝에 의해 구축된 AI 학습 모델에 입력하여 추론 프로세스를 수행하고, AI 학습 모델에 의한 추론 결과 데이터를 생성할 수 있다.
통신 모듈 처리 단계(S130)에서는, 통신 모듈(103)이 추론 결과 데이터를 포함하는 전송 데이터를 통신 네트워크를 통하여 타겟 노드(300)로 전송할 수 있다.
통계 모듈 처리 단계(S140)에서는, 통계 모듈(105)이 감지 데이터의 수집으로부터 타겟 노드(300)로에서의 전송 데이터의 수신까지 걸리는 시간에 대하여 각 프로세스별 처리 시간을 산출하고, 산출된 프로세스별 처리 시간의 통계값을 저장할 수 있다.
스케줄링 모듈 처리 단계(S150)에서는, 스케줄링 모듈(104)이 요구되는 데이터 전송 주기와 데이터 도달 타이밍에 대한 타이밍 조건을 입력받고, 통계 모듈(105)에서 저장하는 프로세스별 처리 시간의 통계값을 이용하여 타이밍 조건에 대응하여 센서 인터페이스(101), AI 가속기(102) 및 통신 모듈(103)의 동작에 대한 스케줄링을 수행할 수 있다.
센서 인터페이스 처리 단계(S110), AI 가속기 처리 단계(S120), 통신 모듈 처리 단계(S130), 통계 모듈 처리 단계(S140), 스케줄링 모듈 처리 단계(S150)의 각 단계에 대한 설명은 센서 인터페이스(101), AI 가속기(102), 통신 모듈(103), 스케줄링 모듈(104) 및 통계 모듈(105)에 관한 상술한 설명이 참조될 수 있다.
이상에서 설명된 단계 또는 프로세스는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합에 의해 실행될 수 있다. 예를 들어, 실시예들에서 설명된 단계 또는 프로세스는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 실행될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로 (collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (10)

  1. 실시간 AI 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치로서,
    감지 데이터를 수집하는 하나 이상의 IoT 센서와 연결되고, 수집된 감지 데이터를 IoT 센서로부터 수신하는 센서 인터페이스;
    수신된 감지 데이터를 머신러닝에 의해 구축된 AI 학습 모델에 입력하여 추론 프로세스를 수행하고, AI 학습 모델에 의한 추론 결과 데이터를 생성하는 AI 가속기;
    추론 결과 데이터를 포함하는 전송 데이터를 통신 네트워크를 통하여 외부의 노드로 전송하는 통신 모듈;
    감지 데이터의 수집으로부터 타겟 노드로에서의 전송 데이터의 수신까지 걸리는 시간에 대하여 각 프로세스별 처리 시간을 산출하고, 산출된 프로세스별 처리 시간의 통계값을 저장하는 통계 모듈; 및
    요구되는 데이터 전송 주기와 데이터 도달 타이밍에 대한 타이밍 조건을 입력받고, 상기 통계 모듈에서 저장하는 프로세스별 처리 시간의 통계값을 이용하여 타이밍 조건에 대응하여 상기 센서 인터페이스, 상기 AI 가속기 및 상기 통신 모듈의 동작에 대한 스케줄링을 수행하는 스케줄링 모듈
    을 포함하는 지능형 사물 인터넷 처리 장치.
  2. 제1항에 있어서,
    상기 통계 모듈이 산출하는 각 프로세스별 처리 시간은, IoT 센서가감지 데이터를 전송한 시간부터 상기 센서 인터페이스가 감지 데이터를 수신할 때까지 걸리는 시간, 상기 AI 가속기가 감지 데이터를 수신한 시간부터 추론 결과 데이터를 생성할 때까지 걸리는 시간, 상기 통신 모듈이 추론 결과 데이터를 수신한 시간부터 추론 결과 데이터를 패킷화하여 전송 데이터를 생성할 때까지 걸리는 시간, 및 상기 타겟 노드가 상기 통신 모듈의 전송 데이터를 수신할 때까지 걸리는 시간을 포함하는 지능형 사물 인터넷 처리 장치
  3. 제1항에 있어서,
    상기 통계 모듈은 프로세스별 처리 시간의 통계값으로부터 미리 결정된 시간 동안의 가장 최신의 통계값인 현재 시간 통계값을 산출하여 제공하고,
    상기 스케줄링 모듈은 현재 시간 통계값에 기초하여 스케줄링을 수행하는 지능형 사물 인터넷 처리 장치.
  4. 제1항에 있어서,
    상기 통계 모듈은 프로세스별 처리 시간의 통계값으로부터 과거의 동일한 시간대별 통계값인 시간대별 통계값을 산출하여 제공하고,
    상기 스케줄링 모듈은 시간대별 통계값에 기초하여 스케줄링을 수행하는 지능형 사물 인터넷 처리 장치.
  5. 제1항에 있어서,
    상기 통계 모듈은 프로세스별 처리 시간의 통계값으로부터 미리 결정된 시간 동안의 가장 최신의 통계값인 현재 시간 통계값을 산출하여 제공하고,
    상기 통계 모듈은 프로세스별 처리 시간의 통계값으로부터 과거의 시간대별 통계값인 시간대별 통계값을 산출하여 제공하며,
    상기 스케줄링 모듈은 현재 시간 통계값 및 시간대별 통계값에 기초하여 스케줄링을 수행하는 지능형 사물 인터넷 처리 장치.
  6. 제1항에 있어서,
    상기 스케줄링 모듈은 현재 시간 통계값과 바로 이전의 현재 시간 통계값의 변화량인 현재 시간 통계값 변화량을 산출하고, 요구되는 타이밍 조건의 시간대별 통계값과 바로 이전 시간대의 시간대별 통계값의 변화량인 시간대별 통계값 변화량을 산출하며,
    현재 시간 통계값 변화량과 시간대별 통계값 변화량의 크기에 비례하여, 현재 시간 통계값 및 시간대별 통계값을 반영하여 스케줄링을 수행하는 지능형 사물 인터넷 처리 장치.
  7. 제1항에 있어서,
    상기 AI 가속기는 복수의 AI 학습 모델을 포함하고,
    상기 통계 모듈은 각 AI 학습 모델에 대한 프로세스별 처리 시간을 산출하고, 각 AI 학습 모델에 대한 프로세스별 처리 시간의 통계값을 저장하고,
    상기 스케줄링 모듈은 요구되는 타이밍 조건과 관련된 AI 학습 모델에 대한 프로세스별 처리 시간의 통계값에 기초하여 스케줄링을 수행하는 지능형 사물 인터넷 처리 장치.
  8. 제1항에 있어서,
    상기 센서 인터페이스는 상기 스케줄링 모듈의 스케줄링에 따라 하나 이상의 IoT 센서에 감지 데이터 수집을 요청하는 지능형 사물 인터넷 처리 장치.
  9. 실시간 AI 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치에 의해 수행되는 지능형 사물 인터넷 처리 방법으로서,
    감지 데이터를 수집하는 하나 이상의 IoT 센서로부터 수집된 감지 데이터를 수신하는 센서 인터페이스 처리 단계;
    수신된 감지 데이터를 머신러닝에 의해 구축된 AI 학습 모델에 입력하여 추론 프로세스를 수행하고, AI 학습 모델에 의한 추론 결과 데이터를 생성하는 AI 가속기 처리 단계;
    추론 결과 데이터를 포함하는 전송 데이터를 통신 네트워크를 통하여 외부의 노드로 전송하는 통신 모듈 처리 단계;
    감지 데이터의 수집으로부터 타겟 노드로에서의 전송 데이터의 수신까지 걸리는 시간에 대하여 각 프로세스별 처리 시간을 산출하고, 산출된 프로세스별 처리 시간의 통계값을 저장하는 통계 모듈 처리 단계; 및
    요구되는 데이터 전송 주기와 데이터 도달 타이밍에 대한 타이밍 조건을 입력받고, 상기 통계 모듈 처리 단계에서 저장된 프로세스별 처리 시간의 통계값을 이용하여 타이밍 조건에 대응하여 센서 인터페이스, AI 가속기 및 통신 모듈의 동작에 대한 스케줄링을 수행하는 스케줄링 모듈 처리 단계
    을 포함하는 지능형 사물 인터넷 처리 방법.
  10. 제9항에 기재된 지능형 사물 인터넷 처리 방법을 컴퓨터에 의해 수행시키기 위해 기록 매체에 저장된 프로그램.
KR1020220152087A 2022-11-14 실시간 ai 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 기록 매체에 저장된 프로그램 KR20240070784A (ko)

Publications (1)

Publication Number Publication Date
KR20240070784A true KR20240070784A (ko) 2024-05-22

Family

ID=

Similar Documents

Publication Publication Date Title
CN111726303B (zh) 一种流量控制方法、装置以及计算设备
CN110781007A (zh) 任务处理方法、装置、服务器、客户端、系统和存储介质
US20120254881A1 (en) Parallel computer system and program
US20120297216A1 (en) Dynamically selecting active polling or timed waits
US9772920B2 (en) Dynamic service fault detection and recovery using peer services
US20180088983A1 (en) Method and system for master less node communication
US20210232472A1 (en) Low-latency systems to trigger remedial actions in data centers based on telemetry data
KR100577659B1 (ko) 전송기로부터 수신기로 요청을 재시도하는 방법 및 그 장치
WO2020100581A1 (ja) 評価装置、評価方法および評価プログラム
Ghosh et al. Statistical hypothesis testing of controller implementations under timing uncertainties
KR20240070784A (ko) 실시간 ai 추론과 데이터 전송을 위한 지능형 사물 인터넷 처리 장치, 지능형 사물 인터넷 처리 방법 및 기록 매체에 저장된 프로그램
CN113746763B (zh) 一种数据处理的方法、装置和设备
Shi et al. Model predictive control under timing constraints induced by controller area networks
CN112949847A (zh) 神经网络算法加速系统、调度系统及调度方法
CN110275780B (zh) 用于限制流量的方法和装置
WO2022199000A1 (zh) 一种控制方法、控制系统及智能设备
Gillis et al. Quantifying the Performance Benefits of Partitioned Communication in MPI
Yoshihisa et al. A low-load stream processing scheme for IoT environments
US7991831B2 (en) System and method for speculative remote display
US11969890B2 (en) Control method and control system using the same
CN105373436A (zh) 控制设备和对此的运行方法
AU2020393361B2 (en) Distributed voltage control for power networks
Dickens A lightweight, high performance communication protocol for grid computing
US20220308914A1 (en) Non-transitory computer-readable storage medium, data processing method, and data processing system
Babu et al. Mechanisms for precise virtual time advancement in network emulation