KR20220068777A - Apparatus and method for measuring real-time core usage of mobile radar with complex sensor - Google Patents

Apparatus and method for measuring real-time core usage of mobile radar with complex sensor Download PDF

Info

Publication number
KR20220068777A
KR20220068777A KR1020200155925A KR20200155925A KR20220068777A KR 20220068777 A KR20220068777 A KR 20220068777A KR 1020200155925 A KR1020200155925 A KR 1020200155925A KR 20200155925 A KR20200155925 A KR 20200155925A KR 20220068777 A KR20220068777 A KR 20220068777A
Authority
KR
South Korea
Prior art keywords
usage
cpu core
monitoring
core
cpu
Prior art date
Application number
KR1020200155925A
Other languages
Korean (ko)
Other versions
KR102429327B1 (en
Inventor
권세훈
류한춘
권준범
Original Assignee
엘아이지넥스원 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘아이지넥스원 주식회사 filed Critical 엘아이지넥스원 주식회사
Priority to KR1020200155925A priority Critical patent/KR102429327B1/en
Publication of KR20220068777A publication Critical patent/KR20220068777A/en
Application granted granted Critical
Publication of KR102429327B1 publication Critical patent/KR102429327B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/02Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Traffic Control Systems (AREA)

Abstract

According to a preferred embodiment of the present invention, a device and method for measuring real-time core usage of a complex sensor mobile radar measure the real-time usage of each CPU core of the mobile radar, change a monitoring cycle for each CPU core based on the measured real-time usage, and reallocate computation tasks assigned to the CPU core so that real-time performance can be maintained even if a sudden increase in computation occurs in a complex multi-sensor mobile radar environment with many complex computations.

Description

복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치 및 방법{Apparatus and method for measuring real-time core usage of mobile radar with complex sensor}Apparatus and method for measuring real-time core usage of mobile radar with complex sensor

본 발명은 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치 및 방법에 관한 것으로서, 더욱 상세하게는 복합 센서를 포함하는 이동형 레이더의 CPU 코어에 대한 사용량을 측정하는, 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for measuring real-time core usage of a complex sensor mobile radar, and more particularly, to an apparatus and method for measuring the CPU core usage of a mobile radar including a complex sensor.

복합 센서를 포함하는 이동형 레이더는 특정 부분을 탐색하여 표적이나 표적 후보에 대한 정보를 획득하여 표적을 탐색하고, 표적을 정밀 추적하여 표적 거리, 표적 각도 등과 같은 표적 정보를 획득한다. 복합 센서 이동형 레이더는 표적 정보 획득을 위해 RF 센서와 광학 센서 등과 같이 서로 다른 특성의 센서를 두 개 이상 사용하여 연산을 수행한다.A mobile radar including a complex sensor searches a specific part to acquire information about a target or target candidate to search for a target, and precisely tracks the target to acquire target information such as a target distance and target angle. The complex sensor mobile radar performs calculations using two or more sensors with different characteristics, such as an RF sensor and an optical sensor, to acquire target information.

복합 센서를 통해 수신되는 표적의 원시 정보는 하드웨어에서 기본적인 신호 처리 등을 수행한 후에 소프트웨어에서 연산을 포함한 전체 신호 처리 과정을 통해 거리와 각도 등 의미 있는 정보로 획득된다. 하드웨어의 데이터 처리는 각각 독립된 하드웨어에서 수행이 가능하지만, 소프트웨어 연산의 경우 일반적으로 고정되어 사용하는 한정된 신호 처리 주기 내에서 각 센서 별 획득한 원시 정보의 개별 연산과 통합 연산 등을 수행해야 하므로 단일 센서에 비해 더 많은 연산을 수행한다. 한정된 시간(또는 신호 처리 주기) 내에서 연산을 효율적으로 사용하기 위해 소프트웨어 개발자는 먼저 사전에 이동형 레이더 운용에 필요한 연산을 태스크 단위로 구분한 후 각 태스크들의 CPU 코어 배치에 대한 설계를 수행한다. 일반적으로 사용하는 상용 OS의 스케줄링을 사용하여 개발자가 설정한 태스크 별 우선순위를 기반으로 태스크를 CPU 코어에 자동 할당하거나 필요한 경우 개발자가 강제로 CPU 코어에 할당하는 방법을 사용한다.The raw information of the target received through the complex sensor is acquired as meaningful information such as distance and angle through the entire signal processing process including calculation in software after basic signal processing is performed in hardware. Hardware data processing can be performed on independent hardware, but in the case of software operation, it is necessary to perform individual and integrated operations on raw information acquired by each sensor within a limited signal processing cycle that is generally fixed and used. perform more calculations than In order to efficiently use computation within a limited time (or signal processing cycle), the software developer first divides the computation required for mobile radar operation into task units in advance, and then designs the CPU core arrangement for each task. Using the scheduling of a commonly used commercial OS, tasks are automatically assigned to CPU cores based on the priority for each task set by the developer, or if necessary, the developer forcibly allocates them to the CPU cores.

복합 센서 이동형 레이더는 일반적인 단일 센서 이동형 레이더에 비해 센서 별 데이터 융합을 비롯한 표적 정보를 추출하기 위한 연산이 많으며, 특히 운용 중에 다중 표적 및 클러터 등 표적 조우 상황과 환경적 요인으로 인해 연산량이 매우 짧은 시간에 급증할 수 있다.Compared to general single-sensor mobile radar, complex sensor mobile radar requires more calculations to extract target information including data fusion for each sensor. may increase over time.

이 경우, 특정 CPU 코어에 점유율이 증가하여 우선 순위가 낮은 연산 태스크의 실행이 늦어질 수 있으며, 이로 인해 특정 태스크가 신호 처리 주기 동안 처리 되지 못하거나, 개발 시 설계한 태스크 실행 순서가 바뀌는 등 사용자가 요구하는 기능을 원활히 수행하지 못하고 심한 경우 이동형 레이더 연산의 실시간성이 깨질 수 있다.In this case, the occupancy of a specific CPU core increases and the execution of low-priority computational tasks may be delayed. In severe cases, the real-time performance of mobile radar operation may be broken.

본 발명이 이루고자 하는 목적은, 복합 센서를 포함하는 이동형 레이더에 탑재되어, 이동형 레이더의 CPU 코어별 실시간 사용량을 측정하고, 측정한 실시간 사용량을 기반으로 CPU 코어별 모니터링 주기를 가변하며 CPU 코어에 할당된 연산 태스크들을 재할당하는, 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치 및 방법을 제공하는 데 있다.An object of the present invention is to be mounted on a mobile radar including a complex sensor, to measure the real-time usage for each CPU core of the mobile radar, and to vary the monitoring period for each CPU core based on the measured real-time usage and to allocate to the CPU cores An object of the present invention is to provide a real-time core usage measurement apparatus and method of a multi-sensor mobile radar for reallocating the calculated computational tasks.

본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.Other objects not specified in the present invention may be additionally considered within the scope that can be easily inferred from the following detailed description and effects thereof.

상기의 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치는, 복합 센서를 포함하는 이동형 레이더에 탑재되는 실시간 코어 사용량 측정 장치로서, 상기 이동형 레이더의 CPU 코어 개수만큼 생성되어 상기 CPU 코어 각각에서 태스크 형식으로 실행되며, 모니터링 주기에 따라 상기 CPU 코어의 사용량을 모니터링하는 복수개의 사용량 감시부; 상기 사용량 감시부를 통해 획득한 상기 CPU 코어의 사용량을 상기 CPU 코어별로 분석하는 사용량 분석부; 상기 사용량 분석부를 통해 분석된 결과를 기반으로, 상기 CPU 코어에 대한 상기 모니터링 주기를 상기 CPU 코어별로 제어하는 감시 제어부; 및 상기 감시 제어부를 통해 제어되는 상기 모니터링 주기를 기반으로, 상기 CPU 코어에 할당되어 있는 연산 태스크를 다시 할당하는 스케줄링부;를 포함한다.In order to achieve the above object, a real-time core usage measuring device of a complex sensor mobile radar according to a preferred embodiment of the present invention is a real-time core usage measuring device mounted on a mobile radar including a complex sensor, and the CPU core of the mobile radar a plurality of usage monitoring units that are generated as many as the number of the CPU cores and are executed in a task format in each of the CPU cores, and monitor the usage of the CPU cores according to a monitoring period; a usage analysis unit for analyzing the usage of the CPU core obtained through the usage monitoring unit for each CPU core; a monitoring control unit configured to control the monitoring period for the CPU core for each CPU core based on a result analyzed by the usage analysis unit; and a scheduling unit for re-allocating the operation task allocated to the CPU core based on the monitoring period controlled by the monitoring control unit.

여기서, 상기 사용량 감시부는, 동작 초기에 상기 CPU 코어의 초당 최대 연산 횟수를 측정하고, 가장 낮은 우선순위로 설정되어, 상기 모니터링 주기에 따라 다른 태스크가 상기 CPU 코어를 점유하지 않는 시간에 상기 CPU 코어를 점유하여 유휴 상태에서의 초당 연산 횟수를 측정할 수 있다.Here, the usage monitoring unit measures the maximum number of operations per second of the CPU core at the beginning of operation, is set to the lowest priority, and according to the monitoring period, the CPU core at a time when other tasks do not occupy the CPU core It is possible to measure the number of operations per second in the idle state by occupying

여기서, 상기 사용량 감시부는, 동작 초기에 미리 설정된 시간 간격으로 미리 설정된 횟수 동안 반복적으로 초당 연산 횟수를 측정하고, 측정한 복수개의 초당 연산 횟수 중에서 가장 큰 값을 초당 최대 연산 횟수로 획득하고, 유휴 상태에 미리 설정된 시간 간격으로 미리 설정된 횟수 동안 반복적으로 초당 연산 횟수를 측정하고, 측정한 복수개의 초당 연산 횟수 중에서 가장 큰 값을 유휴 상태에서의 초당 연산 횟수로 획득할 수 있다.Here, the usage monitoring unit repeatedly measures the number of operations per second for a preset number of times at a preset time interval at the beginning of the operation, and obtains the largest value among the measured number of operations per second as the maximum number of operations per second, and in an idle state may repeatedly measure the number of operations per second for a preset number of times at a preset time interval, and obtain the largest value among a plurality of measured number of operations per second as the number of operations per second in the idle state.

여기서, 상기 사용량 분석부는, 복수개의 상기 사용량 감시부로부터 제공받은 상기 CPU 코어의 초당 최대 연산 횟수와 상기 CPU 코어의 유휴 상태에서의 초당 연산 횟수를 기반으로, 상기 CPU 코어별로 상기 CPU 코어의 사용량을 분석할 수 있다.Here, the usage analysis unit, based on the maximum number of operations per second of the CPU core provided from the plurality of usage monitoring units and the number of operations per second in the idle state of the CPU core, the usage of the CPU core for each CPU core can be analyzed.

여기서, 상기 감시 제어부는, 상기 사용량 분석부로부터 제공받은 상기 CPU 코어별 상기 CPU 코어의 사용량을 기반으로 상기 CPU 코어 각각에 대한 상기 모니터링 주기를 업데이트하고, 상기 CPU 코어별로 업데이트된 상기 모니터링 주기를 복수개의 상기 사용량 감시부에 제공할 수 있다.Here, the monitoring control unit updates the monitoring cycle for each of the CPU cores based on the usage of the CPU cores for each CPU core provided from the usage analysis unit, and includes a plurality of the monitoring cycles updated for each CPU core. It can be provided to the usage monitoring unit of dogs.

여기서, 상기 감시 제어부는, 상기 사용량 분석부로부터 제공받은 상기 CPU 코어의 사용량이 미리 설정된 CPU 코어 사용량 임계치보다 크면, CPU 코어 사용량 초과 횟수를 하나 증가시키고, CPU 코어 사용량 안정 횟수를 0으로 초기화하며, 상기 CPU 코어의 사용량, 상기 CPU 코어 사용량 임계치 및 상기 CPU 코어 사용량 초과 횟수를 기반으로 감소 계수를 획득하고, 상기 CPU 코어의 사용량이 상기 CPU 코어 사용량 임계치보다 작거나 같으면, 상기 CPU 코어 사용량 초과 횟수는 0으로 초기화하고, 상기 CPU 코어 사용량 안정 횟수를 하나 증가시키며, 상기 CPU 코어 사용량 안정 횟수가 미리 설정된 안정 임계치보다 크면, 상기 감소 계수를 기존의 감소 계수의 1/2로 변경하고, 상기 CPU 코어 사용량 안정 횟수가 상기 안정 임계치보다 작거나 같으면, 상기 감소 계수를 기존의 감소 계수로 유지하며, 상기 감소 계수가 1보다 작거나 같으면, 상기 모니터링 주기를 미리 설정된 초기 모니터링 주기로 업데이트하고, 상기 감소 계수가 1보다 크면, 상기 모니터링 주기를 이전 모니터링 주기에 1/상기 감소 계수를 곱하여 획득한 모니터링 주기로 업데이트하며, 업데이트되는 상기 모니터링 주기는, 미리 설정된 최소 모니터링 주기보다는 크거나 같고, 상기 초기 모니터링 주기보다는 작거나 같을 수 있다.Here, the monitoring control unit, if the usage of the CPU core provided from the usage analysis unit is greater than a preset CPU core usage threshold, increases the number of times of exceeding the CPU core usage by one, and initializes the number of stable CPU core usage to 0, A reduction factor is obtained based on the CPU core usage, the CPU core usage threshold, and the number of times the CPU core usage is exceeded, and if the usage of the CPU core is less than or equal to the CPU core usage threshold, the number of times the CPU core usage is exceeded is Initialize to 0, increase the number of stable CPU core usage by one, and when the stable number of CPU core usage is greater than a preset stability threshold, change the reduction coefficient to 1/2 of the existing reduction coefficient, and the CPU core usage If the number of stabilization is less than or equal to the stability threshold, the reduction coefficient is maintained as the existing reduction coefficient, and when the reduction coefficient is less than or equal to 1, the monitoring period is updated to a preset initial monitoring period, and the reduction coefficient is 1 If greater than, the monitoring period is updated with a monitoring period obtained by multiplying the previous monitoring period by 1/the reduction factor, and the updated monitoring period is greater than or equal to the preset minimum monitoring period and less than or equal to the initial monitoring period can

여기서, 상기 스케줄링부는, 상기 감시 제어부를 통해 업데이트되는 상기 모니터링 주기가 상기 최소 모니터링 주기와 일치하면, 업데이트되는 상기 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크를 다른 CPU 코어에 다시 할당할 수 있다.Here, when the monitoring period updated through the monitoring control unit matches the minimum monitoring period, the scheduling unit may re-assign a computation task assigned to a CPU core corresponding to the updated monitoring period to another CPU core. have.

여기서, 상기 스케줄링부는, 업데이트되는 상기 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크 중에서 우선순위가 가장 낮은 연산 태스크를 CPU 코어의 사용량이 가장 적은 다른 CPU 코어에 할당할 수 있다.Here, the scheduling unit may allocate a calculation task having the lowest priority among the calculation tasks allocated to the CPU core corresponding to the updated monitoring period to another CPU core having the lowest usage of the CPU core.

여기서, 상기 스케줄링부는, 다른 CPU 코어들에 대한 모니터링 주기가 전부 상기 최소 모니터링 주기와 일치하면, 업데이트되는 상기 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크의 재할당 동작을 대기할 수 있다.Here, when the monitoring period for all other CPU cores coincides with the minimum monitoring period, the scheduling unit may wait for a reassignment operation of the operation task allocated to the CPU core corresponding to the updated monitoring period.

상기의 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법은, 복합 센서를 포함하는 이동형 레이더에 탑재되고, 상기 이동형 레이더의 CPU 코어 개수만큼 생성되어 상기 CPU 코어 각각에서 태스크 형식으로 실행되는 복수개의 사용량 감시부, 사용량 분석부, 감시 제어부 및 스케줄링부를 포함하는 실시간 코어 사용량 측정 장치에서 수행되는 실시간 코어 사용량 측정 방법으로서, 상기 사용량 감시부가, 모니터링 주기에 따라 상기 CPU 코어의 사용량을 모니터링하는 단계; 상기 사용량 분석부가, 상기 사용량 감시부를 통해 획득한 상기 CPU 코어의 사용량을 상기 CPU 코어별로 분석하는 단계; 상기 감시 제어부가, 상기 사용량 분석부를 통해 분석된 결과를 기반으로, 상기 CPU 코어에 대한 상기 모니터링 주기를 상기 CPU 코어별로 제어하는 단계; 및 상기 스케줄링부가, 상기 감시 제어부를 통해 제어되는 상기 모니터링 주기를 기반으로, 상기 CPU 코어에 할당되어 있는 연산 태스크를 다시 할당하는 단계;를 포함한다.The real-time core usage measurement method of the complex sensor mobile radar according to a preferred embodiment of the present invention for achieving the above object is mounted on a mobile radar including a complex sensor, and is generated by the number of CPU cores of the mobile radar, and the CPU A real-time core usage measurement method performed in a real-time core usage measurement device including a plurality of usage monitoring units, usage analysis units, monitoring control units, and scheduling units that are executed in the form of a task on each core, wherein the usage monitoring unit includes: monitoring CPU core usage; analyzing, by the usage analysis unit, the usage amount of the CPU core acquired through the usage monitoring unit for each CPU core; controlling, by the monitoring control unit, the monitoring period for the CPU core for each CPU core based on a result analyzed by the usage analysis unit; and re-assigning, by the scheduling unit, the operation task allocated to the CPU core based on the monitoring period controlled through the monitoring control unit.

여기서, 상기 CPU 코어 사용량 모니터링 단계는, 상기 사용량 감시부가, 동작 초기에 상기 CPU 코어의 초당 최대 연산 횟수를 측정하고, 가장 낮은 우선순위로 설정되어, 상기 모니터링 주기에 따라 다른 태스크가 상기 CPU 코어를 점유하지 않는 시간에 상기 CPU 코어를 점유하여 유휴 상태에서의 초당 연산 횟수를 측정하는 것으로 이루어질 수 있다.Here, in the CPU core usage monitoring step, the usage monitoring unit measures the maximum number of operations per second of the CPU core at the beginning of the operation, and is set to the lowest priority, so that other tasks can control the CPU core according to the monitoring period It may consist of measuring the number of operations per second in an idle state by occupying the CPU core in a non-occupied time.

여기서, 상기 모니터링 주기 제어 단계는, 상기 감시 제어부가, 상기 사용량 분석부로부터 제공받은 상기 CPU 코어별 상기 CPU 코어의 사용량을 기반으로 상기 CPU 코어 각각에 대한 상기 모니터링 주기를 업데이트하고, 상기 CPU 코어별로 업데이트된 상기 모니터링 주기를 복수개의 상기 사용량 감시부에 제공하는 것으로 이루어질 수 있다.Here, in the monitoring cycle control step, the monitoring control unit updates the monitoring cycle for each of the CPU cores based on the usage of the CPU cores for each CPU core provided from the usage analysis unit, and for each CPU core The updated monitoring period may be provided to a plurality of the usage monitoring units.

상기의 기술적 과제를 달성하기 위한 본 발명의 바람직한 실시예에 따른 컴퓨터 프로그램은 컴퓨터로 읽을 수 있는 기록 매체에 저장되어 상기한 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법 중 어느 하나를 컴퓨터에서 실행시킨다.A computer program according to a preferred embodiment of the present invention for achieving the above technical problem is stored in a computer-readable recording medium and executes any one of the real-time core usage measurement methods of the complex sensor mobile radar in the computer.

본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치 및 방법에 의하면, 이동형 레이더의 CPU 코어별 실시간 사용량을 측정하고, 측정한 실시간 사용량을 기반으로 CPU 코어별 모니터링 주기를 가변하며 CPU 코어에 할당된 연산 태스크들을 재할당함으로써, 연산이 많고 복잡한 복합 센서 이동형 레이더 환경에서 갑작스런 연산 증가가 발생되더라도 실시간성을 유지할 수 있다.According to an apparatus and method for measuring real-time core usage of a complex sensor mobile radar according to a preferred embodiment of the present invention, the real-time usage for each CPU core of the mobile radar is measured, and the monitoring period for each CPU core is varied based on the measured real-time usage. By reallocating the computation tasks assigned to the CPU core, real-time performance can be maintained even when a sudden increase in computation occurs in a complex sensor mobile radar environment with many computations.

본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

도 1은 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치를 설명하기 위한 블록도이다.
도 2는 도 1에 도시한 실시간 코어 사용량 측정 장치의 동작 과정을 설명하기 위한 도면이다.
도 3은 도 1에 도시한 사용량 감시부의 동작 과정을 설명하기 위한 도면으로, 도 3의 (a)는 사용량 감시부가 실행되는 CPU 코어의 일례를 나타내고, 도 3의 (b)는 사용량 감시부의 모니터링 동작을 설명하기 위한 것이다.
도 4는 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법을 설명하기 위한 흐름도이다.
도 5는 도 4에 도시한 모니터링 단계의 세부 단계를 설명하기 위한 흐름도이다.
도 6은 도 4에 도시한 사용량 분석 단계의 세부 단계를 설명하기 위한 흐름도이다.
도 7은 도 4에 도시한 모니터링 주기 제어 단계의 세부 단계를 설명하기 위한 흐름도이다.
도 8은 도 4에 도시한 연산 태스크 재할당 단계의 세부 단계를 설명하기 위한 흐름도이다.
1 is a block diagram illustrating an apparatus for measuring real-time core usage of a multi-sensor mobile radar according to a preferred embodiment of the present invention.
FIG. 2 is a diagram for explaining an operation process of the real-time core usage measuring apparatus shown in FIG. 1 .
3 is a view for explaining the operation process of the usage monitoring unit shown in FIG. 1 . FIG. 3 (a) shows an example of a CPU core on which the usage monitoring unit is executed, and FIG. 3 (b) is monitoring of the usage monitoring unit. This is to explain the operation.
4 is a flowchart for explaining a method for measuring a real-time core usage of a multi-sensor mobile radar according to a preferred embodiment of the present invention.
FIG. 5 is a flowchart for explaining detailed steps of the monitoring step shown in FIG. 4 .
6 is a flowchart for explaining the detailed steps of the usage analysis step shown in FIG. 4 .
7 is a flowchart for explaining detailed steps of the monitoring cycle control step shown in FIG. 4 .
FIG. 8 is a flowchart illustrating detailed steps of the operation task reallocation step shown in FIG. 4 .

이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention, and a method for achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments published below, but may be implemented in various different forms, and only these embodiments make the publication of the present invention complete, and common knowledge in the art to which the present invention pertains It is provided to fully inform those who have the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used herein may be used with the meaning commonly understood by those of ordinary skill in the art to which the present invention belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless clearly defined in particular.

본 명세서에서 "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.In the present specification, terms such as “first” and “second” are for distinguishing one component from other components, and the scope of rights should not be limited by these terms. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.

본 명세서에서 각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In the present specification, identification symbols (eg, a, b, c, etc.) in each step are used for convenience of description, and identification symbols do not describe the order of each step, and each step is clearly Unless a specific order is specified, the order may differ from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 명세서에서, "가진다", "가질 수 있다", "포함한다" 또는 "포함할 수 있다"등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.In this specification, expressions such as “have”, “may have”, “include” or “may include” indicate the existence of a corresponding feature (eg, a numerical value, function, operation, or component such as a part). and does not exclude the presence of additional features.

또한, 본 명세서에 기재된 '~부'라는 용어는 소프트웨어 또는 FPGA(field-programmable gate array) 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터 구조들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다.In addition, the term '~ unit' as used herein means software or a hardware component such as a field-programmable gate array (FPGA) or ASIC, and '~ unit' performs certain roles. However, '-part' is not limited to software or hardware. '~' may be configured to reside on an addressable storage medium or may be configured to refresh one or more processors. Accordingly, as an example, '~' indicates components such as software components, object-oriented software components, class components, and task components, and processes, functions, properties, and procedures. , subroutines, segments of program code, drivers, firmware, microcode, circuitry, data structures and variables. The functions provided in the components and '~ units' may be combined into a smaller number of components and '~ units' or further separated into additional components and '~ units'.

이하에서 첨부한 도면을 참조하여 본 발명에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치 및 방법의 바람직한 실시예에 대해 상세하게 설명한다.Hereinafter, with reference to the accompanying drawings, a preferred embodiment of the real-time core usage measuring apparatus and method of the complex sensor mobile radar according to the present invention will be described in detail.

먼저, 도 1 내지 도 3을 참조하여 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치에 대하여 설명한다.First, a real-time core usage measuring apparatus of a multi-sensor mobile radar according to a preferred embodiment of the present invention will be described with reference to FIGS. 1 to 3 .

도 1은 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치를 설명하기 위한 블록도이고, 도 2는 도 1에 도시한 실시간 코어 사용량 측정 장치의 동작 과정을 설명하기 위한 도면이며, 도 3은 도 1에 도시한 사용량 감시부의 동작 과정을 설명하기 위한 도면으로, 도 3의 (a)는 사용량 감시부가 실행되는 CPU 코어의 일례를 나타내고, 도 3의 (b)는 사용량 감시부의 모니터링 동작을 설명하기 위한 것이다.1 is a block diagram for explaining a real-time core usage measurement apparatus of a complex sensor mobile radar according to a preferred embodiment of the present invention, and FIG. 2 is a diagram for explaining an operation process of the real-time core usage measurement apparatus shown in FIG. 3 is a view for explaining the operation process of the usage monitoring unit shown in FIG. 1 . FIG. 3 (a) shows an example of a CPU core on which the usage monitoring unit is executed, and FIG. 3 (b) is usage monitoring This is to explain the negative monitoring operation.

도 1을 참조하면, 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치(이하 '실시간 코어 사용량 측정 장치'라 한다)(100)는 복합 센서를 포함하는 이동형 레이더(도시하지 않음)에 탑재되어, 이동형 레이더의 CPU 코어별 실시간 사용량을 측정하고, 측정한 실시간 사용량을 기반으로 CPU 코어별 모니터링 주기를 가변하며 CPU 코어에 할당된 연산 태스크들을 재할당할 수 있다.Referring to FIG. 1 , a real-time core usage measuring device (hereinafter referred to as 'real-time core usage measuring device') 100 of a composite sensor mobile radar according to a preferred embodiment of the present invention is a mobile radar (not shown) including a composite sensor. not), measures the real-time usage of each CPU core of the mobile radar, varies the monitoring cycle for each CPU core based on the measured real-time usage, and can reallocate computation tasks assigned to the CPU cores.

이를 위해, 실시간 코어 사용량 측정 장치(100)는 복수개의 사용량 감시부(110), 사용량 분석부(130), 감시 제어부(150) 및 스케줄링부(170)를 포함할 수 있다.To this end, the real-time core usage measuring apparatus 100 may include a plurality of usage monitoring unit 110 , usage analysis unit 130 , monitoring control unit 150 , and scheduling unit 170 .

사용량 감시부(110)는 이동형 레이더의 CPU 코어 개수만큼 생성되어 CPU 코어 각각에서 태스크 형식으로 실행되며, 모니터링 주기에 따라 CPU 코어의 사용량을 모니터링할 수 있다.The usage monitoring unit 110 is generated as many as the number of CPU cores of the mobile radar and is executed in the form of a task on each CPU core, and can monitor the usage of the CPU cores according to the monitoring period.

즉, 사용량 감시부(110)는 동작 초기(즉, 이동형 레이더의 운용 초기)에 CPU 코어의 초당 최대 연산 횟수(Cntmax)를 측정할 수 있다.That is, the usage monitoring unit 110 may measure the maximum number of operations per second (Cnt max ) of the CPU core at the initial stage of operation (ie, the initial operation of the mobile radar).

이때, 사용량 감시부(110)는 동작 초기에 미리 설정된 시간(예컨대, 1초 등) 간격으로 미리 설정된 횟수(예컨대, 2회 등) 동안 반복적으로 초당 연산 횟수를 측정하고, 측정한 복수개의 초당 연산 횟수 중에서 가장 큰 값을 초당 최대 연산 횟수(Cntmax)로 획득할 수 있다. 예컨대, 사용량 감시부(110)는 아래의 [표 1]과 같은 알고리즘을 사용하여 동작 초기의 초당 최대 연산 횟수(Cntmax)를 측정할 수 있다.At this time, the usage monitoring unit 110 repeatedly measures the number of operations per second for a preset number of times (eg, 2 times, etc.) at a preset time (eg, 1 second, etc.) interval at the beginning of the operation, and the measured plurality of operations per second The largest value among the counts can be obtained as the maximum number of operations per second (Cnt max ). For example, the usage monitoring unit 110 may measure the maximum number of operations per second (Cnt max ) at the initial stage of operation by using an algorithm as shown in Table 1 below.

초당 최대 연산 횟수 측정 알고리즘Algorithm for measuring the maximum number of operations per second getCPU();
WHILE (run_time <= 1s)
Idle_Count++;
END WHILE
ReleaseCPU();
IF (Idle_Count > Max_Count)
Max_Count = Idle_Count;
END IF
getCPU();
WHILE(run_time <= 1s)
Idle_Count++;
END WHILE
ReleaseCPU();
IF (Idle_Count > Max_Count)
Max_Count = Idle_Count;
END IF

그리고, 사용량 감시부(110)는 가장 낮은 우선순위로 설정되어, 모니터링 주기에 따라 다른 태스크가 CPU 코어를 점유하지 않는 시간에 CPU 코어를 점유하여 모니터링 주기(Pmonitor)에 따라 유휴 상태에서의 초당 연산 횟수(Cntidle)를 측정할 수 있다. 예컨대, 도 3의 (a)에 도시된 바와 같이 CPU 코어 #1에서 실행되는 사용량 감시부(110)는 도 3의 (b)에 도시된 바와 같이 CPU 코어 #1의 유휴 상태(IDLE)에서 CPU 코어 #1을 점유하여 유휴 상태(IDLE)에서의 초당 연산 횟수(Cntidle)를 측정할 수 있다.And, the usage monitoring unit 110 is set to the lowest priority, occupies the CPU core at a time when other tasks do not occupy the CPU core according to the monitoring cycle, and according to the monitoring cycle (P monitor ), the second in the idle state. The number of operations (Cnt idle ) can be measured. For example, as shown in (a) of FIG. 3, the usage monitoring unit 110 executed in CPU core #1 is the CPU in the idle state (IDLE) of CPU core #1 as shown in FIG. 3 (b). It is possible to measure the number of operations per second (Cnt idle ) in the idle state (IDLE) by occupying the core #1.

이때, 사용량 감시부(110)는 유휴 상태에 미리 설정된 시간(예컨대, 1초 등) 간격으로 미리 설정된 횟수(예컨대, 2회 등) 동안 반복적으로 초당 연산 횟수를 측정하고, 측정한 복수개의 초당 연산 횟수 중에서 가장 큰 값을 유휴 상태에서의 초당 연산 횟수(Cntidle)로 획득할 수 있다. 예컨대, 사용량 감시부(110)는 위의 [표 1]과 같은 알고리즘을 사용하여 유휴 상태에서의 초당 연산 횟수(Cntidle)를 측정할 수 있다.At this time, the usage monitoring unit 110 repeatedly measures the number of operations per second for a preset number of times (eg, two times, etc.) at intervals of a preset time (eg, 1 second, etc.) in the idle state, and the measured plurality of operations per second The largest value among the counts can be obtained as the number of operations per second (Cnt idle ) in the idle state. For example, the usage monitoring unit 110 may measure the number of operations per second (Cnt idle ) in the idle state using the algorithm shown in Table 1 above.

사용량 분석부(130)는 사용량 감시부(110)를 통해 획득한 CPU 코어의 사용량을 CPU 코어별로 분석할 수 있다.The usage analysis unit 130 may analyze the usage of CPU cores obtained through the usage monitoring unit 110 for each CPU core.

즉, 사용량 분석부(130)는 복수개의 사용량 감시부(110)로부터 제공받은 CPU 코어의 초당 최대 연산 횟수(Cntmax)와 CPU 코어의 유휴 상태에서의 초당 연산 횟수(Cntidle)를 기반으로, CPU 코어별로 CPU 코어의 사용량(CPUrate)을 분석할 수 있다.That is, the usage analysis unit 130 is based on the maximum number of operations per second (Cnt max ) of the CPU core provided from the plurality of usage monitoring units 110 and the number of operations per second in the idle state of the CPU core (Cnt idle ), You can analyze the CPU core usage (CPU rate ) for each CPU core.

예컨대, 사용량 분석부(130)는 아래의 [수학식 1]을 통해 CPU 코어별로 CPU 코어의 사용량(CPUrate)을 측정할 수 있다.For example, the usage analysis unit 130 may measure the usage (CPU rate ) of the CPU core for each CPU core through [Equation 1] below.

Figure pat00001
Figure pat00001

감시 제어부(150)는 사용량 분석부(130)를 통해 분석된 결과를 기반으로, CPU 코어에 대한 모니터링 주기를 CPU 코어별로 제어할 수 있다.The monitoring control unit 150 may control the monitoring period for the CPU core for each CPU core based on the result analyzed by the usage analysis unit 130 .

즉, 감시 제어부(150)는 사용량 분석부(130)로부터 제공받은 CPU 코어별 CPU 코어의 사용량(CPUrate)을 기반으로 CPU 코어 각각에 대한 모니터링 주기(Pmonitor)를 업데이트할 수 있다.That is, the monitoring control unit 150 may update the monitoring period (P monitor ) for each CPU core based on the usage (CPU rate ) of the CPU cores for each CPU core provided from the usage analysis unit 130 .

이때, 사용량 분석부(130)로부터 제공받은 CPU 코어의 사용량(CPUrate)이 미리 설정된 CPU 코어 사용량 임계치(CPUT)보다 크면, 감시 제어부(150)는 CPU 코어 사용량 초과 횟수(CntExceed)를 하나 증가시키고, CPU 코어 사용량 안정 횟수(CntStable)를 0으로 초기화할 수 있다. 그리고, 감시 제어부(150)는 CPU 코어의 사용량(CPUrate), CPU 코어 사용량 임계치(CPUT) 및 CPU 코어 사용량 초과 횟수(CntExceed)를 기반으로 감소 계수(Coffreduce)를 획득할 수 있다. 예컨대, 감시 제어부(150)는 아래의 [수학식 2]를 통해 감소 계수(Coffreduce)를 측정할 수 있다.At this time, if the usage (CPU rate ) of the CPU core provided from the usage analysis unit 130 is greater than the preset CPU core usage threshold (CPU T ), the monitoring control unit 150 is the CPU core usage exceeding number (Cnt Exceed ) One increase, and the number of stable CPU core usage (Cnt Stable ) can be initialized to 0. In addition, the monitoring control unit 150 may obtain a reduction coefficient (Coff reduce ) based on the CPU core usage (CPU rate ), the CPU core usage threshold (CPU T ), and the CPU core usage excess number (Cnt Exceed ). For example, the monitoring control unit 150 may measure the reduction coefficient (Coff reduce ) through [Equation 2] below.

Figure pat00002
Figure pat00002

이에 반면, CPU 코어의 사용량(CPUrate)이 CPU 코어 사용량 임계치(CPUT)보다 작거나 같으면, 감시 제어부(150)는 CPU 코어 사용량 초과 횟수(CntExceed)는 0으로 초기화하고, CPU 코어 사용량 안정 횟수(CntStable)를 하나 증가시킬 수 있다. 그리고, CPU 코어 사용량 안정 횟수(CntStable)가 미리 설정된 안정 임계치(CntStable,T)보다 크면, 감시 제어부(150)는 감소 계수(Coffreduce)를 기존의 감소 계수(Coffreduce)의 1/2로 변경할 수 있다. 반면, CPU 코어 사용량 안정 횟수(CntStable)가 안정 임계치(CntStable,T)보다 작거나 같으면, 감시 제어부(150)는 감소 계수(Coffreduce)를 기존의 감소 계수(Coffreduce)로 유지할 수 있다.On the other hand, if the CPU core usage (CPU rate ) is less than or equal to the CPU core usage threshold (CPU T ), the monitoring control unit 150 initializes the CPU core usage excess count (Cnt Exceed ) to 0, and stabilizes the CPU core usage The number of times (Cnt Stable ) can be increased by one. And, if the CPU core usage stable number of times (Cnt Stable ) is greater than the preset stability threshold (Cnt Stable,T ), the monitoring control unit 150 reduces the reduction coefficient (Coff reduce ) of the existing reduction coefficient (Coff reduce ) 1/2 can be changed to On the other hand, if the CPU core usage stable count (Cnt Stable ) is less than or equal to the stability threshold (Cnt Stable,T ), the monitoring control unit 150 maintains the reduction coefficient (Coff reduce ) as the existing reduction coefficient (Coff reduce ). .

그런 다음, 감시 제어부(150)는 감소 계수(Coffreduce)가 1보다 작거나 같으면, 모니터링 주기(Pi monitor)를 미리 설정된 초기 모니터링 주기(Pinit monitor)로 업데이트할 수 있다. 반면, 감소 계수(Coffreduce)가 1보다 크면, 감시 제어부(150)는 모니터링 주기(Pi monitor)를 이전 모니터링 주기(Pi-1 monitor)에 1/감소 계수(Coffreduce)를 곱하여 획득한 모니터링 주기로 업데이트할 수 있다.Then, when the reduction coefficient (Coff reduce ) is less than or equal to 1, the monitoring control unit 150 may update the monitoring period (P i monitor ) to a preset initial monitoring period (P init monitor ). On the other hand, if the reduction coefficient (Coff reduce ) is greater than 1, the monitoring control unit 150 obtains the monitoring period (P i monitor ) by multiplying the previous monitoring period (P i-1 monitor ) by 1/ the reduction coefficient (Coff reduce ). It can be updated on a monitoring cycle.

여기서, 업데이트되는 모니터링 주기(Pi monitor)는 미리 설정된 최소 모니터링 주기(Pmin monitor)보다는 크거나 같고, 초기 모니터링 주기(Pinit monitor)보다는 작거나 같을 수 있다.Here, the updated monitoring period (P i monitor ) may be greater than or equal to the preset minimum monitoring period (P min monitor ), and may be less than or equal to the initial monitoring period (P init monitor ).

그리고, 감시 제어부(150)는 CPU 코어별로 업데이트된 모니터링 주기를 복수개의 사용량 감시부(110)에 제공할 수 있다.In addition, the monitoring control unit 150 may provide an updated monitoring period for each CPU core to the plurality of usage monitoring units 110 .

스케줄링부(170)는 감시 제어부(150)를 통해 제어되는 모니터링 주기를 기반으로, CPU 코어에 할당되어 있는 연산 태스크를 다시 할당할 수 있다.The scheduling unit 170 may re-allocate the operation task allocated to the CPU core based on the monitoring period controlled through the monitoring control unit 150 .

즉, 스케줄링부(170)는 감시 제어부(150)를 통해 업데이트되는 모니터링 주기가 최소 모니터링 주기와 일치하면, 업데이트되는 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크를 다른 CPU 코어에 다시 할당할 수 있다.That is, when the monitoring period updated through the monitoring control unit 150 matches the minimum monitoring period, the scheduling unit 170 re-assigns the operation task assigned to the CPU core corresponding to the updated monitoring period to another CPU core. can

이때, 스케줄링부(170)는 업데이트되는 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크 중에서 우선순위가 가장 낮은 연산 태스크를 CPU 코어의 사용량이 가장 적은 다른 CPU 코어에 할당할 수 있다.In this case, the scheduling unit 170 may allocate a calculation task having the lowest priority among the calculation tasks allocated to the CPU core corresponding to the updated monitoring period to another CPU core having the lowest usage of the CPU core.

한편, 다른 CPU 코어들에 대한 모니터링 주기가 전부 최소 모니터링 주기와 일치하면, 스케줄링부(170)는 업데이트되는 모니터링 주기에 대응되는 CPU 코어의 사용량이 미리 설정된 값 이하로 줄어들 때까지, 업데이트되는 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크의 재할당 동작을 대기할 수 있다.On the other hand, if the monitoring period for all other CPU cores coincides with the minimum monitoring period, the scheduling unit 170 updates the monitoring period until the usage of the CPU core corresponding to the updated monitoring period decreases to a preset value or less. You can wait for the reallocation operation of the computation task assigned to the CPU core corresponding to .

그러면, 도 4 내지 도 8을 참조하여 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법에 대하여 설명한다.Then, a method for measuring the real-time core usage of the multi-sensor mobile radar according to a preferred embodiment of the present invention will be described with reference to FIGS. 4 to 8 .

도 4는 본 발명의 바람직한 실시예에 따른 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법을 설명하기 위한 흐름도이다.4 is a flowchart for explaining a method for measuring a real-time core usage of a multi-sensor mobile radar according to a preferred embodiment of the present invention.

도 4를 참조하면, 사용량 감시부(110)가, 모니터링 주기에 따라 CPU 코어의 사용량을 모니터링한다(S110). 이때, 사용량 감시부(110)는 이동형 레이더의 CPU 코어 개수만큼 생성되어 CPU 코어 각각에서 태스크 형식으로 실행되며, 모니터링 주기에 따라 CPU 코어의 사용량을 모니터링할 수 있다.Referring to FIG. 4 , the usage monitoring unit 110 monitors the usage of the CPU core according to the monitoring period ( S110 ). In this case, the usage monitoring unit 110 may be generated as many as the number of CPU cores of the mobile radar and executed in the form of a task on each CPU core, and may monitor the usage of the CPU cores according to the monitoring period.

이후, 사용량 분석부(130)가, 사용량 감시부(110)를 통해 획득한 CPU 코어의 사용량을 CPU 코어별로 분석한다(S130).Thereafter, the usage analysis unit 130 analyzes the usage of CPU cores acquired through the usage monitoring unit 110 for each CPU core (S130).

그런 다음, 감시 제어부(150)가, 사용량 분석부(130)를 통해 분석된 결과를 기반으로, CPU 코어에 대한 모니터링 주기를 CPU 코어별로 제어한다(S150). 즉, 감시 제어부(150)는 사용량 분석부(130)로부터 제공받은 CPU 코어별 CPU 코어의 사용량을 기반으로 CPU 코어 각각에 대한 모니터링 주기를 업데이트할 수 있다. 그리고, 감시 제어부(150)는 CPU 코어별로 업데이트된 모니터링 주기를 복수개의 사용량 감시부(110)에 제공할 수 있다.Then, the monitoring control unit 150, based on the result analyzed by the usage analysis unit 130, controls the monitoring period for the CPU core for each CPU core (S150). That is, the monitoring control unit 150 may update the monitoring period for each CPU core based on the CPU core usage for each CPU core provided from the usage analysis unit 130 . In addition, the monitoring control unit 150 may provide an updated monitoring period for each CPU core to the plurality of usage monitoring units 110 .

그리고, 스케줄링부(170)가, 감시 제어부(150)를 통해 제어되는 모니터링 주기를 기반으로, CPU 코어에 할당되어 있는 연산 태스크를 다시 할당할 수 있다(S170).Then, the scheduling unit 170, based on the monitoring period controlled through the monitoring control unit 150, may re-allocate the operation task assigned to the CPU core (S170).

도 5는 도 4에 도시한 모니터링 단계의 세부 단계를 설명하기 위한 흐름도이다.FIG. 5 is a flowchart for explaining detailed steps of the monitoring step shown in FIG. 4 .

도 5를 참조하면, 사용량 감시부(110)는 동작 초기에 CPU 코어의 초당 최대 연산 횟수(Cntmax)를 측정할 수 있다(S111). 이때, 사용량 감시부(110)는 동작 초기에 미리 설정된 시간(예컨대, 1초 등) 간격으로 미리 설정된 횟수(예컨대, 2회 등) 동안 반복적으로 초당 연산 횟수를 측정하고, 측정한 복수개의 초당 연산 횟수 중에서 가장 큰 값을 초당 최대 연산 횟수(Cntmax)로 획득할 수 있다.Referring to FIG. 5 , the usage monitoring unit 110 may measure the maximum number of operations per second (Cnt max ) of the CPU core at the initial stage of operation ( S111 ). At this time, the usage monitoring unit 110 repeatedly measures the number of operations per second for a preset number of times (eg, 2 times, etc.) at a preset time (eg, 1 second, etc.) interval at the beginning of the operation, and the measured plurality of operations per second The largest value among the counts can be obtained as the maximum number of operations per second (Cnt max ).

이후, 모니터링 주기에 따라 모니터링 시점이 되면(S113-Y), 사용량 감시부(110)는 CPU 코어의 유휴 상태에서의 초당 연산 횟수를 측정할 수 있다(S115). 즉, 사용량 감시부(110)는 가장 낮은 우선순위로 설정되어, 모니터링 주기에 따라 다른 태스크가 CPU 코어를 점유하지 않는 시간에 CPU 코어를 점유하여 모니터링 주기(Pmonitor)에 따라 유휴 상태에서의 초당 연산 횟수(Cntidle)를 측정할 수 있다. 이때, 사용량 감시부(110)는 유휴 상태에 미리 설정된 시간(예컨대, 1초 등) 간격으로 미리 설정된 횟수(예컨대, 2회 등) 동안 반복적으로 초당 연산 횟수를 측정하고, 측정한 복수개의 초당 연산 횟수 중에서 가장 큰 값을 유휴 상태에서의 초당 연산 횟수(Cntidle)로 획득할 수 있다.Thereafter, when the monitoring time comes according to the monitoring period (S113-Y), the usage monitoring unit 110 may measure the number of operations per second in the idle state of the CPU core (S115). That is, the usage monitoring unit 110 is set to the lowest priority, occupies the CPU core at a time when other tasks do not occupy the CPU core according to the monitoring cycle, and in the idle state according to the monitoring cycle (P monitor ) The number of operations (Cnt idle ) can be measured. At this time, the usage monitoring unit 110 repeatedly measures the number of operations per second for a preset number of times (eg, two times, etc.) at intervals of a preset time (eg, 1 second, etc.) in the idle state, and the measured plurality of operations per second The largest value among the counts can be obtained as the number of operations per second (Cnt idle ) in the idle state.

도 6은 도 4에 도시한 사용량 분석 단계의 세부 단계를 설명하기 위한 흐름도이다.6 is a flowchart for explaining the detailed steps of the usage analysis step shown in FIG. 4 .

도 6을 참조하면, 사용량 분석부(130)는 CPU 코어의 초당 최대 연산 횟수(Cntmax)와 CPU 코어의 유휴 상태에서의 초당 연산 횟수(Cntidle)를 기반으로, CPU 코어별로 CPU 코어의 사용량(CPUrate)을 분석할 수 있다(S131).Referring to FIG. 6 , the usage analysis unit 130 determines the usage of CPU cores for each CPU core based on the maximum number of operations per second (Cnt max ) of the CPU core and the number of operations per second (Cnt idle ) in the idle state of the CPU core. (CPU rate ) can be analyzed (S131).

예컨대, 사용량 분석부(130)는 위의 [수학식 1]을 통해 CPU 코어별로 CPU 코어의 사용량(CPUrate)을 측정할 수 있다.For example, the usage analysis unit 130 may measure the usage (CPU rate ) of the CPU core for each CPU core through the above [Equation 1].

도 7은 도 4에 도시한 모니터링 주기 제어 단계의 세부 단계를 설명하기 위한 흐름도이다.7 is a flowchart for explaining detailed steps of the monitoring cycle control step shown in FIG. 4 .

도 7을 참조하면, CPU 코어의 사용량(CPUrate)이 CPU 코어 사용량 임계치(CPUT)보다 크면(S151-Y), 감시 제어부(150)는 CPU 코어 사용량 초과 횟수(CntExceed)를 하나 증가시키고, CPU 코어 사용량 안정 횟수(CntStable)를 0으로 초기화할 수 있다(S152).7, if the CPU core usage (CPU rate ) is greater than the CPU core usage threshold (CPU T ) (S151-Y), the monitoring control unit 150 increases the number of CPU core usage excess counts (Cnt Exceed ) by one and , the number of stable CPU core usage (Cnt Stable ) may be initialized to 0 (S152).

그런 다음, 감시 제어부(150)는 CPU 코어의 사용량(CPUrate), CPU 코어 사용량 임계치(CPUT) 및 CPU 코어 사용량 초과 횟수(CntExceed)를 기반으로 감소 계수(Coffreduce)를 획득할 수 있다(S153). 예컨대, 감시 제어부(150)는 위의 [수학식 2]를 통해 감소 계수(Coffreduce)를 측정할 수 있다.Then, the monitoring control unit 150 is based on the CPU core usage (CPU rate ), the CPU core usage threshold (CPU T ) and the number of times the CPU core usage exceeds the number (Cnt Exceed ) It is possible to obtain a reduction coefficient (Coff reduce ). (S153). For example, the monitoring control unit 150 may measure the reduction coefficient (Coff reduce ) through [Equation 2] above.

이에 반면, CPU 코어의 사용량(CPUrate)이 CPU 코어 사용량 임계치(CPUT)보다 작거나 같으면(S151-N), 감시 제어부(150)는 CPU 코어 사용량 안정 횟수(CntStable)를 하나 증가시키고, CPU 코어 사용량 초과 횟수(CntExceed)를 0으로 초기화할 수 있다(S154).On the other hand, if the CPU core usage (CPU rate ) is less than or equal to the CPU core usage threshold (CPU T ) (S151-N), the monitoring control unit 150 increases the number of CPU core usage stabilization times (Cnt Stable ) by one, The CPU core usage excess count (Cnt Exceed ) may be initialized to 0 (S154).

이후, CPU 코어 사용량 안정 횟수(CntStable)가 안정 임계치(CntStable,T)보다 크면(S155-Y), 감시 제어부(150)는 감소 계수(Coffreduce)를 기본의 감소 계수(Coffreduce)의 1/2로 변경할 수 있다(S156).After that, if the CPU core usage stabilization count (Cnt Stable ) is greater than the stability threshold (Cnt Stable,T ) (S155-Y), the monitoring control unit 150 sets the reduction coefficient (Coff reduce ) to the basic reduction coefficient (Coff reduce ) It can be changed to 1/2 (S156).

반면, CPU 코어 사용량 안정 횟수(CntStable)가 안정 임계치(CntStable,T)보다 작거나 같으면(S155-N), 감시 제어부(150)는 감소 계수(Coffreduce)를 기존의 감소 계수(Coffreduce)로 유지할 수 있다(S157).On the other hand, if the CPU core usage stable count (Cnt Stable ) is less than or equal to the stability threshold (Cnt Stable,T ) (S155-N), the monitoring control unit 150 reduces the reduction coefficient (Coff reduce ) to the existing reduction coefficient (Coff reduce ) ) can be maintained (S157).

그런 다음, 감소 계수(Coffreduce)가 1보다 크면(S158-N), 감시 제어부(150)는 모니터링 주기(Pi monitor)를 이전 모니터링 주기(Pi-1 monitor)에 1/감소 계수(Coffreduce)를 곱하여 획득한 모니터링 주기로 업데이트할 수 있다(S159).Then, if the reduction coefficient (Coff reduce ) is greater than 1 (S158-N), the monitoring control unit 150 sets the monitoring period (P i monitor ) to the previous monitoring period (P i-1 monitor ) by 1/reduction coefficient (Coff ) reduce ) and may be updated with the obtained monitoring cycle (S159).

반면, 감소 계수(Coffreduce)가 1보다 작거나 같으면(S158-Y), 감시 제어부(150)는 모니터링 주기(Pi monitor)를 초기 모니터링 주기(Pinit monitor)로 업데이트할 수 있다(S160).On the other hand, if the reduction coefficient (Coff reduce ) is less than or equal to 1 (S158-Y), the monitoring control unit 150 may update the monitoring period (P i monitor ) to the initial monitoring period (P init monitor ) (S160) .

여기서, 업데이트되는 모니터링 주기(Pi monitor)는 미리 설정된 최소 모니터링 주기(Pmin monitor)보다는 크거나 같고, 초기 모니터링 주기(Pinit monitor)보다는 작거나 같을 수 있다.Here, the updated monitoring period (P i monitor ) may be greater than or equal to the preset minimum monitoring period (P min monitor ), and may be less than or equal to the initial monitoring period (P init monitor ).

도 8은 도 4에 도시한 연산 태스크 재할당 단계의 세부 단계를 설명하기 위한 흐름도이다.FIG. 8 is a flowchart illustrating detailed steps of the operation task reallocation step shown in FIG. 4 .

도 8을 참조하면, 스케줄링부(170)는 업데이트되는 모니터링 주기가 최소 모니터링 주기와 일치하면, 업데이트되는 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크를 다른 CPU 코어에 다시 할당할 수 있다(S171).Referring to FIG. 8 , when the updated monitoring period coincides with the minimum monitoring period, the scheduling unit 170 may re-assign the computation task allocated to the CPU core corresponding to the updated monitoring period to another CPU core ( S171).

이때, 스케줄링부(170)는 업데이트되는 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크 중에서 우선순위가 가장 낮은 연산 태스크를 CPU 코어의 사용량이 가장 적은 다른 CPU 코어에 할당할 수 있다.In this case, the scheduling unit 170 may allocate a calculation task having the lowest priority among the calculation tasks allocated to the CPU core corresponding to the updated monitoring period to another CPU core having the lowest usage of the CPU core.

한편, 다른 CPU 코어들에 대한 모니터링 주기가 전부 최소 모니터링 주기와 일치하면, 스케줄링부(170)는 업데이트되는 모니터링 주기에 대응되는 CPU 코어의 사용량이 미리 설정된 값 이하로 줄어들 때까지, 업데이트되는 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크의 재할당 동작을 대기할 수 있다.On the other hand, if the monitoring period for all other CPU cores coincides with the minimum monitoring period, the scheduling unit 170 updates the monitoring period until the usage of the CPU core corresponding to the updated monitoring period decreases to a preset value or less. You can wait for the reallocation operation of the computation task assigned to the CPU core corresponding to .

이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 기록 매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 기록 매체로서는 자기기록매체, 광 기록매체 등이 포함될 수 있다.Even though all the components constituting the embodiment of the present invention described above are described as being combined or operated in combination, the present invention is not necessarily limited to this embodiment. That is, within the scope of the object of the present invention, all the components may operate by selectively combining one or more. In addition, all of the components may be implemented as one independent hardware, but a part or all of each component is selectively combined to perform some or all of the functions of the combined hardware in one or a plurality of hardware program modules It may be implemented as a computer program having In addition, such a computer program is stored in a computer readable media such as a USB memory, a CD disk, a flash memory, etc., read and executed by a computer, thereby implementing an embodiment of the present invention. The recording medium of the computer program may include a magnetic recording medium, an optical recording medium, and the like.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and various modifications, changes, and substitutions are possible within the range that does not depart from the essential characteristics of the present invention by those of ordinary skill in the art to which the present invention pertains. will be. Accordingly, the embodiments disclosed in the present invention and the accompanying drawings are for explaining, not limiting, the technical spirit of the present invention, and the scope of the technical spirit of the present invention is not limited by these embodiments and the accompanying drawings . The protection scope of the present invention should be construed by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

100 : 실시간 코어 사용량 측정 장치,
110 : 사용량 감시부,
130 : 사용량 분석부,
150 : 감시 제어부,
170 : 스케줄링부
100: real-time core usage measurement device;
110: usage monitoring unit,
130: usage analysis unit;
150: monitoring control unit;
170: scheduling unit

Claims (13)

복합 센서를 포함하는 이동형 레이더에 탑재되는 실시간 코어 사용량 측정 장치로서,
상기 이동형 레이더의 CPU 코어 개수만큼 생성되어 상기 CPU 코어 각각에서 태스크 형식으로 실행되며, 모니터링 주기에 따라 상기 CPU 코어의 사용량을 모니터링하는 복수개의 사용량 감시부;
상기 사용량 감시부를 통해 획득한 상기 CPU 코어의 사용량을 상기 CPU 코어별로 분석하는 사용량 분석부;
상기 사용량 분석부를 통해 분석된 결과를 기반으로, 상기 CPU 코어에 대한 상기 모니터링 주기를 상기 CPU 코어별로 제어하는 감시 제어부; 및
상기 감시 제어부를 통해 제어되는 상기 모니터링 주기를 기반으로, 상기 CPU 코어에 할당되어 있는 연산 태스크를 다시 할당하는 스케줄링부;
를 포함하는 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
A real-time core usage measurement device mounted on a mobile radar including a complex sensor,
a plurality of usage monitoring units that are generated as many as the number of CPU cores of the mobile radar and are executed in the form of a task in each of the CPU cores, and monitor the usage of the CPU cores according to a monitoring period;
a usage analysis unit for analyzing the usage of the CPU core obtained through the usage monitoring unit for each CPU core;
a monitoring control unit configured to control the monitoring period for the CPU core for each CPU core based on a result analyzed by the usage analysis unit; and
a scheduling unit for re-allocating the operation task allocated to the CPU core based on the monitoring period controlled through the monitoring control unit;
A real-time core usage measurement device of a complex sensor mobile radar comprising a.
제1항에서,
상기 사용량 감시부는,
동작 초기에 상기 CPU 코어의 초당 최대 연산 횟수를 측정하고, 가장 낮은 우선순위로 설정되어, 상기 모니터링 주기에 따라 다른 태스크가 상기 CPU 코어를 점유하지 않는 시간에 상기 CPU 코어를 점유하여 유휴 상태에서의 초당 연산 횟수를 측정하는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
In claim 1,
The usage monitoring unit,
At the beginning of operation, the maximum number of operations per second of the CPU core is measured, and it is set to the lowest priority, and occupies the CPU core at a time when other tasks do not occupy the CPU core according to the monitoring period, so that the to measure the number of operations per second,
Real-time core usage measurement device for multi-sensor mobile radar.
제2항에서,
상기 사용량 감시부는,
동작 초기에 미리 설정된 시간 간격으로 미리 설정된 횟수 동안 반복적으로 초당 연산 횟수를 측정하고, 측정한 복수개의 초당 연산 횟수 중에서 가장 큰 값을 초당 최대 연산 횟수로 획득하고,
유휴 상태에 미리 설정된 시간 간격으로 미리 설정된 횟수 동안 반복적으로 초당 연산 횟수를 측정하고, 측정한 복수개의 초당 연산 횟수 중에서 가장 큰 값을 유휴 상태에서의 초당 연산 횟수로 획득하는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
In claim 2,
The usage monitoring unit,
At the beginning of the operation, the number of operations per second is repeatedly measured for a preset number of times at a preset time interval, and the largest value among the measured number of operations per second is obtained as the maximum number of operations per second,
Repeatedly measuring the number of operations per second for a preset number of times at a preset time interval in the idle state, and obtaining the largest value among the measured number of operations per second as the number of operations per second in the idle state,
Real-time core usage measurement device for multi-sensor mobile radar.
제2항에서,
상기 사용량 분석부는,
복수개의 상기 사용량 감시부로부터 제공받은 상기 CPU 코어의 초당 최대 연산 횟수와 상기 CPU 코어의 유휴 상태에서의 초당 연산 횟수를 기반으로, 상기 CPU 코어별로 상기 CPU 코어의 사용량을 분석하는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
In claim 2,
The usage analysis unit,
Based on the maximum number of operations per second of the CPU core provided from the plurality of usage monitoring units and the number of operations per second in the idle state of the CPU core, analyzing the usage of the CPU core for each CPU core,
Real-time core usage measurement device for multi-sensor mobile radar.
제4항에서,
상기 감시 제어부는,
상기 사용량 분석부로부터 제공받은 상기 CPU 코어별 상기 CPU 코어의 사용량을 기반으로 상기 CPU 코어 각각에 대한 상기 모니터링 주기를 업데이트하고, 상기 CPU 코어별로 업데이트된 상기 모니터링 주기를 복수개의 상기 사용량 감시부에 제공하는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
In claim 4,
The monitoring control unit,
Updates the monitoring cycle for each of the CPU cores based on the usage of the CPU cores for each CPU core provided from the usage analysis unit, and provides the updated monitoring cycle for each CPU core to a plurality of usage monitoring units doing,
Real-time core usage measurement device for multi-sensor mobile radar.
제5항에서,
상기 감시 제어부는,
상기 사용량 분석부로부터 제공받은 상기 CPU 코어의 사용량이 미리 설정된 CPU 코어 사용량 임계치보다 크면, CPU 코어 사용량 초과 횟수를 하나 증가시키고, CPU 코어 사용량 안정 횟수를 0으로 초기화하며, 상기 CPU 코어의 사용량, 상기 CPU 코어 사용량 임계치 및 상기 CPU 코어 사용량 초과 횟수를 기반으로 감소 계수를 획득하고,
상기 CPU 코어의 사용량이 상기 CPU 코어 사용량 임계치보다 작거나 같으면, 상기 CPU 코어 사용량 초과 횟수는 0으로 초기화하고, 상기 CPU 코어 사용량 안정 횟수를 하나 증가시키며, 상기 CPU 코어 사용량 안정 횟수가 미리 설정된 안정 임계치보다 크면, 상기 감소 계수를 기존의 감소 계수의 1/2로 변경하고, 상기 CPU 코어 사용량 안정 횟수가 상기 안정 임계치보다 작거나 같으면, 상기 감소 계수를 기존의 감소 계수로 유지하며,
상기 감소 계수가 1보다 작거나 같으면, 상기 모니터링 주기를 미리 설정된 초기 모니터링 주기로 업데이트하고,
상기 감소 계수가 1보다 크면, 상기 모니터링 주기를 이전 모니터링 주기에 1/상기 감소 계수를 곱하여 획득한 모니터링 주기로 업데이트하며,
업데이트되는 상기 모니터링 주기는,
미리 설정된 최소 모니터링 주기보다는 크거나 같고, 상기 초기 모니터링 주기보다는 작거나 같은,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
In claim 5,
The monitoring control unit,
If the usage of the CPU core provided from the usage analysis unit is greater than the preset CPU core usage threshold, the number of times of exceeding the CPU core usage is increased by one, the number of stable CPU core usage is initialized to 0, the usage of the CPU core, the obtaining a reduction coefficient based on the CPU core usage threshold and the number of times the CPU core usage exceeds;
When the CPU core usage is less than or equal to the CPU core usage threshold, the CPU core usage excess count is initialized to 0, the CPU core usage stable count is increased by one, and the CPU core usage stable count is preset to a preset stability threshold If greater than, change the reduction coefficient to 1/2 of the existing reduction coefficient, and if the number of stable CPU core usage stabilization times is less than or equal to the stability threshold, maintain the reduction coefficient as the existing reduction coefficient,
If the reduction factor is less than or equal to 1, updating the monitoring period to a preset initial monitoring period,
If the reduction coefficient is greater than 1, updating the monitoring period to a monitoring period obtained by multiplying the previous monitoring period by 1/the reduction coefficient,
The updated monitoring period is,
greater than or equal to the preset minimum monitoring period and less than or equal to the initial monitoring period;
Real-time core usage measurement device for multi-sensor mobile radar.
제6항에서,
상기 스케줄링부는,
상기 감시 제어부를 통해 업데이트되는 상기 모니터링 주기가 상기 최소 모니터링 주기와 일치하면, 업데이트되는 상기 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크를 다른 CPU 코어에 다시 할당하는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
In claim 6,
The scheduling unit,
When the monitoring period updated through the monitoring control unit coincides with the minimum monitoring period, re-assigning a computation task assigned to a CPU core corresponding to the updated monitoring period to another CPU core,
Real-time core usage measurement device for multi-sensor mobile radar.
제7항에서,
상기 스케줄링부는,
업데이트되는 상기 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크 중에서 우선순위가 가장 낮은 연산 태스크를 CPU 코어의 사용량이 가장 적은 다른 CPU 코어에 할당하는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
In claim 7,
The scheduling unit,
Allocating a calculation task with the lowest priority among the calculation tasks assigned to the CPU core corresponding to the monitoring cycle to be updated to another CPU core with the lowest usage of the CPU core,
Real-time core usage measurement device for multi-sensor mobile radar.
제7항에서,
상기 스케줄링부는,
다른 CPU 코어들에 대한 모니터링 주기가 전부 상기 최소 모니터링 주기와 일치하면, 업데이트되는 상기 모니터링 주기에 대응되는 CPU 코어에 할당되어 있는 연산 태스크의 재할당 동작을 대기하는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 장치.
In claim 7,
The scheduling unit,
If the monitoring period for all other CPU cores coincides with the minimum monitoring period, waiting for the reassignment operation of the computation task allocated to the CPU core corresponding to the updated monitoring period,
Real-time core usage measurement device for multi-sensor mobile radar.
복합 센서를 포함하는 이동형 레이더에 탑재되고, 상기 이동형 레이더의 CPU 코어 개수만큼 생성되어 상기 CPU 코어 각각에서 태스크 형식으로 실행되는 복수개의 사용량 감시부, 사용량 분석부, 감시 제어부 및 스케줄링부를 포함하는 실시간 코어 사용량 측정 장치에서 수행되는 실시간 코어 사용량 측정 방법으로서,
상기 사용량 감시부가, 모니터링 주기에 따라 상기 CPU 코어의 사용량을 모니터링하는 단계;
상기 사용량 분석부가, 상기 사용량 감시부를 통해 획득한 상기 CPU 코어의 사용량을 상기 CPU 코어별로 분석하는 단계;
상기 감시 제어부가, 상기 사용량 분석부를 통해 분석된 결과를 기반으로, 상기 CPU 코어에 대한 상기 모니터링 주기를 상기 CPU 코어별로 제어하는 단계; 및
상기 스케줄링부가, 상기 감시 제어부를 통해 제어되는 상기 모니터링 주기를 기반으로, 상기 CPU 코어에 할당되어 있는 연산 태스크를 다시 할당하는 단계;
를 포함하는 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법.
A real-time core including a plurality of usage monitoring unit, usage analysis unit, monitoring control unit, and scheduling unit mounted on a mobile radar including a complex sensor, generated by the number of CPU cores of the mobile radar and executed in a task format on each CPU core A real-time core usage measurement method performed by a usage measurement device, comprising:
monitoring, by the usage monitoring unit, the usage of the CPU core according to a monitoring period;
analyzing, by the usage analysis unit, the usage amount of the CPU core acquired through the usage monitoring unit for each CPU core;
controlling, by the monitoring control unit, the monitoring period for the CPU core for each CPU core based on a result analyzed by the usage analysis unit; and
re-assigning, by the scheduling unit, the operation task allocated to the CPU core based on the monitoring period controlled through the monitoring control unit;
A real-time core usage measurement method of a complex sensor mobile radar comprising a.
제10항에서,
상기 CPU 코어 사용량 모니터링 단계는,
상기 사용량 감시부가, 동작 초기에 상기 CPU 코어의 초당 최대 연산 횟수를 측정하고, 가장 낮은 우선순위로 설정되어, 상기 모니터링 주기에 따라 다른 태스크가 상기 CPU 코어를 점유하지 않는 시간에 상기 CPU 코어를 점유하여 유휴 상태에서의 초당 연산 횟수를 측정하는 것으로 이루어지는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법.
In claim 10,
The CPU core usage monitoring step is,
The usage monitoring unit measures the maximum number of operations per second of the CPU core at the beginning of the operation, and is set to the lowest priority, and occupies the CPU core at a time when other tasks do not occupy the CPU core according to the monitoring period This consists of measuring the number of operations per second in the idle state,
A method for measuring real-time core usage of a multi-sensor mobile radar.
제10항에서,
상기 모니터링 주기 제어 단계는,
상기 감시 제어부가, 상기 사용량 분석부로부터 제공받은 상기 CPU 코어별 상기 CPU 코어의 사용량을 기반으로 상기 CPU 코어 각각에 대한 상기 모니터링 주기를 업데이트하고, 상기 CPU 코어별로 업데이트된 상기 모니터링 주기를 복수개의 상기 사용량 감시부에 제공하는 것으로 이루어지는,
복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법.
In claim 10,
The monitoring cycle control step includes:
The monitoring control unit updates the monitoring cycle for each of the CPU cores based on the usage of the CPU cores for each CPU core provided from the usage analysis unit, and sets the updated monitoring cycle for each CPU core to a plurality of the Consisting of providing to the usage monitoring unit,
A method for measuring real-time core usage of a multi-sensor mobile radar.
제10항 내지 제12항 중 어느 한 항에 기재된 복합 센서 이동형 레이더의 실시간 코어 사용량 측정 방법을 컴퓨터에서 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록 매체에 저장된 컴퓨터 프로그램.
A computer program stored in a computer-readable recording medium in order to execute the real-time core usage measurement method of the complex sensor mobile radar according to any one of claims 10 to 12 in a computer.
KR1020200155925A 2020-11-19 2020-11-19 Apparatus and method for measuring real-time core usage of mobile radar with complex sensor KR102429327B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200155925A KR102429327B1 (en) 2020-11-19 2020-11-19 Apparatus and method for measuring real-time core usage of mobile radar with complex sensor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200155925A KR102429327B1 (en) 2020-11-19 2020-11-19 Apparatus and method for measuring real-time core usage of mobile radar with complex sensor

Publications (2)

Publication Number Publication Date
KR20220068777A true KR20220068777A (en) 2022-05-26
KR102429327B1 KR102429327B1 (en) 2022-08-04

Family

ID=81808714

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200155925A KR102429327B1 (en) 2020-11-19 2020-11-19 Apparatus and method for measuring real-time core usage of mobile radar with complex sensor

Country Status (1)

Country Link
KR (1) KR102429327B1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002328159A (en) * 2001-04-27 2002-11-15 Furuno Electric Co Ltd Network system for marine apparatus
KR20040111568A (en) * 2002-05-07 2004-12-31 지멘스 악티엔게젤샤프트 Method for determining priority-dependent computer time distribution in a priority-controlled multiprocess computing system
KR20110075296A (en) * 2009-12-28 2011-07-06 삼성전자주식회사 Job allocation method on multi-core system and apparatus thereof
KR20130115574A (en) * 2012-04-12 2013-10-22 삼성전자주식회사 Method and apparatus for performing a task scheduling in a terminal
KR20140146272A (en) * 2013-06-14 2014-12-26 한국전자통신연구원 Apparatus and method for monitoring based on a multi-core processor
JP2016118841A (en) * 2014-12-19 2016-06-30 株式会社東芝 Resource control apparatus, method, and program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002328159A (en) * 2001-04-27 2002-11-15 Furuno Electric Co Ltd Network system for marine apparatus
KR20040111568A (en) * 2002-05-07 2004-12-31 지멘스 악티엔게젤샤프트 Method for determining priority-dependent computer time distribution in a priority-controlled multiprocess computing system
KR20110075296A (en) * 2009-12-28 2011-07-06 삼성전자주식회사 Job allocation method on multi-core system and apparatus thereof
KR20130115574A (en) * 2012-04-12 2013-10-22 삼성전자주식회사 Method and apparatus for performing a task scheduling in a terminal
KR20140146272A (en) * 2013-06-14 2014-12-26 한국전자통신연구원 Apparatus and method for monitoring based on a multi-core processor
JP2016118841A (en) * 2014-12-19 2016-06-30 株式会社東芝 Resource control apparatus, method, and program

Also Published As

Publication number Publication date
KR102429327B1 (en) 2022-08-04

Similar Documents

Publication Publication Date Title
EP3191964B1 (en) Memory leak analysis by usage trends correlation
US11961286B2 (en) Performing object detection in an image
US20110138395A1 (en) Thermal management in multi-core processor
JP6241300B2 (en) Job scheduling apparatus, job scheduling method, and job scheduling program
US20170206462A1 (en) Method and apparatus for detecting abnormal contention on a computer system
JP6191691B2 (en) Abnormality detection apparatus, control method, and program
US9170840B2 (en) Duration sensitive scheduling in a computing environment
US11354156B2 (en) Master device for managing distributed processing of task by using resource information
WO2013119480A1 (en) Self-tuning statistical resource leak detection
US11847493B2 (en) Highly efficient inexact computing storage device
US10963309B2 (en) Network interface controller-based scheduling of processing tasks in a distributed computing system
US10095305B2 (en) Wake lock aware system wide job scheduling for energy efficiency on mobile devices
US8006077B2 (en) Thread migration control based on prediction of migration overhead
US8621479B2 (en) System and method for selecting task allocation method based on load balancing and core affinity metrics
WO2013014767A1 (en) Data processing system and scheduling method
KR102429327B1 (en) Apparatus and method for measuring real-time core usage of mobile radar with complex sensor
US10203988B2 (en) Adaptive parallelism of task execution on machines with accelerators
US10437654B2 (en) Context-aware application programming interface response management
US10795730B2 (en) Graphics hardware driven pause for quality of service adjustment
US20200142736A1 (en) Computer processing system with resource optimization and associated methods
KR102624334B1 (en) Apparatus and method for reallocating real-time operation task of mobile radar with complex sensor
US20170049376A1 (en) Methods and apparatuses for detecting motion disorder symptoms based on sensor data
US20170147413A1 (en) Precondition exclusivity mapping of tasks to computational locations
JP2017073045A (en) Cache contention management system, resource allocation server, and resource allocation method
US10146913B2 (en) Portable electronic device

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant