KR20210038455A - 태스크 연산량 확정 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램 - Google Patents

태스크 연산량 확정 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20210038455A
KR20210038455A KR1020210034378A KR20210034378A KR20210038455A KR 20210038455 A KR20210038455 A KR 20210038455A KR 1020210034378 A KR1020210034378 A KR 1020210034378A KR 20210034378 A KR20210034378 A KR 20210034378A KR 20210038455 A KR20210038455 A KR 20210038455A
Authority
KR
South Korea
Prior art keywords
task
target
amount
cpu
time slice
Prior art date
Application number
KR1020210034378A
Other languages
English (en)
Other versions
KR102542247B1 (ko
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 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디.
Publication of KR20210038455A publication Critical patent/KR20210038455A/ko
Application granted granted Critical
Publication of KR102542247B1 publication Critical patent/KR102542247B1/ko

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/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
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • G06F11/3423Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Image Processing (AREA)

Abstract

본 개시에서는 태스크 연산량 확정 방법, 장치 및 전자 기기를 제공하였고, 연산량 측정 측정 평가 기술 분야에 관련된다. 그중 방법은: 타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하는 단계; 상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하는 단계로서, 상기 태스크 운행 기간은 상기 타겟 태스크가 운행을 시작해서부터 상기 타겟 태스크가 운행을 종료할 때까지의 기간인 것인, 획득하는 단계; 및 상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하는 단계; 를 포함한다. 상술한 기술 수단을 사용하였기에, 본 개시에서 확정한 태스크 연산량은 더욱 진실되고, 더욱 정확하게 태스크가 점유해야 할 CPU 연산력을 특성화할 수 있다. 따라서, 태스크에 대하여 분배할 때, 본 개시에서 확정한 태스크 연산량을 기반으로 하여, 기기의 하드웨어 타입 선택에 더욱 가치있는 참고를 제공할 수 있다.

Description

태스크 연산량 확정 방법, 장치, 전자 기기, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램{TASK CALCULATION AMOUNT DETERMINING METHOD AND APPARATUS, ELECTRONIC DEVICE, COMPUTER READABLE STORAGE MEDIUM AND COMPUTER PROGRAM}
본 개시는 컴퓨터 기술 분야에 관한 것으로, 특히 연산량 측정 평가 기술 분야에 관한 것이며, 구체적으로 태스크 연산량 확정 방법, 장치 및 전자 기기에 관한 것이다.
컴퓨터 기술의 발전에 따라, 태스크의 깊이는 점차 증가되고, 태스크의 연산 복잡도 및 연산량도 따라서 상승된다. 기기에서 태스크를 분배하기 전에, 기기의 CPU(Central Processing Unit, 중앙 프로세서) 연산 능력(즉 연산력)이 태스크의 연산량을 만족하는지 여부를 고려해야 하기에, 따라서, 태스크를 분배하기 전에, 태스크에 대하여 연산량 측정 평가를 진행해야 된다. 현재, 통상적으로 MACCs(multiply-accumulate operations, 승법 누산 횟수) 및 FLOPS(floating-point operations per second, 매초 플로팅 포인트 연산 횟수)를 사용하여 태스크의 연산량을 특성화하고, 이들은 태스크가 점유해야 할 CPU 연산력을 전부 특성화할 수 없다.
본 개시에서 태스크 연산량 확정 방법, 장치 및 전자 기기를 제공하여, 기존의 태스크 연산량 특성화 방식이 태스크가 점유해야 할 CPU 연산력을 특성화할 수 없는 기술 문제를 해결한다.
상술한 기술 문제를 해결하기 위하여, 본 개시에서는 다음과 같이 구현한다.
제1 측면에 있어서, 본 개시는 태스크 연산량 확정 방법을 제공하며, 상기 방법은:
타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하는 단계;
상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하는 단계로서, 상기 태스크 운행 기간은 상기 타겟 태스크가 운행을 시작해서부터 상기 타겟 태스크가 운행을 종료할 때까지의 기간인 것인, 획득하는 단계; 및
상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하는 단계; 를 포함한다.
상술한 기술 수단을 사용하였기에, 본 개시에서 확정한 태스크 연산량은 더욱 진실되고, 더욱 정확하게 태스크가 점유해야 할 CPU 연산력을 특성화할 수 있다. 따라서, 태스크에 대하여 분배할 때, 본 개시에서 확정한 태스크 연산량을 기반으로 하여, 기기의 하드웨어 타입 선택에 더욱 가치있는 참고를 제공할 수 있다.
선택적으로, 상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하는 단계는:
상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스를 획득하는 단계;
상기 타겟 태스크가 점유한 CPU 타임 슬라이스를 획득하는 단계; 및
상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 및 상기 타겟 태스크가 점유한 CPU 타임 슬라이스에 따라, 상기 타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 확정하는 단계; 를 포함한다.
상기 실시 방식에서 있어서, 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 확정하는 것을 통하여, 타겟 태스크의 연산량 측정 평가를 정확하게 진행할 수 있다.
선택적으로, 상기 타겟 태스크의 연산량은 이미지 검측 알고리즘의 연산량, 음성 인식 알고리즘의 연산량 또는 계획 및 제어 알고리즘의 연산량을 포함한다.
본 개시에서 제공한 DMIPS 및 CPU 타임 슬라이스 점유율을 기반으로 하여 태스크 연산량을 확정하는 방안에서, CPU 타임 슬라이스 점유율이 비교적 진실되고 또한 정확하게 태스크 운행에 필요한 CPU 연산력 점유율을 특성화할 수 있기에, 연속적인 태스크에 적용될뿐만 아니라, 비연속적인 태스크에도 적용될 수 있어, 통용성을 구비하고 있다.
선택적으로, 상기 타겟 태스크의 연산량은 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량이고;
상기 타겟 CPU 코어의 DMIPS 및 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하는 단계는:
상기 이미지 검측 알고리즘이 상기 태스크 운행 기간내에 처리한 이미지 프레임수를 획득하는 단계;
상기 타겟 CPU 코어의 DMIPS, 상기 CPU 타임 슬라이스 점유율, 상기 태스크 운행 기간 및 상기 이미지 프레임수에 따라, 상기 이미지 검측 알고리즘의 싱글 프레임 연산량을 확정하는 단계; 및
상기 싱글 프레임 연산량 및 상기 타겟 프레임율에 따라, 상기 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 확정하는 단계; 를 포함한다.
상기 실시 방식에서, 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 확정하는 것을 통하여, 이미지 검측 알고리즘의 성능을 정확하게 측정 평가하는데 유리하고, 따라서, 이미지 검측 알고리즘에 대하여 분배를 진행할 때, 상기 확정한 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 기반으로 하여, 기기 하드웨어 타입 선택에 더욱 가치있는 참고를 제공할 수 있으며, 따라서 이미지 검측 알고리즘의 애플리케이션을 촉진할 수 있다.
선택적으로 상기 방법은:
상기 타겟 태스크가 상기 타겟 CPU 코어에서 운행하는 과정중에서, 상기 타겟 CPU 코어의 운행 주파수가 기설정 주파수에 있도록 제어하는 단계를 더 포함한다.
상기 실기 방식에 있어서, 타겟 태스크의 운행 과정에서 타겟 CPU 코어의 운행 주파수를 제어하는 것을 통하여, 타겟 태스크의 운행에 비교적 안정적인 운행 환경을 제공하여, 본 개시에서 확정한 태스크 연산량이 더욱 정확하도록 확보할 수 있다.
선택적으로, 상기 타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하는 단계는:
상기 타겟 태스크가 기설정 우선급으로 상기 타겟 CPU 코어중에서 운행하도록 제어하는 단계를 포함한다.
상기 실시 방식에 있어서, 타겟 태스크의 운행 과정에서 타겟 CPU 코어의 운행 주파수를 제어하는 것을 통하여, 타겟 태스크의 운행에 비교적 안정적인 운행 환경을 제공하여, 본 개시에서 확정한 태스크 연산량이 더욱 정확하도록 확보할 수 있다.
선택적으로, 상기 타겟 태스크가 타겟 CPU 코어중에서 운행하도록 제어하기 전, 상기 방법은:
클라우드 서버에서 송신한 상기 타겟 태스크를 수신하고, 상기 타겟 태스크를 사용자가 미리 상기 클라우드 서버로 업로드하는 단계를 더 포함한다.
선택적으로, 상기 타겟 태스크의 연산량을 연산한 후, 상기 방법은:
상기 클라우드 서버로 상기 타겟 태스크의 연산량을 리포팅하는 단계를 더 포함한다.
상기 실시 방식에 있어서, 개방적인 측정 평가 환경을 개설하는 것을 통하여, 태스크 설계, 태스크 트레이닝, 태스크 반포 및 태스크 연산량 측정 평가가 폐쇄 루프를 형성하도록 한다. 이에 따라, 태스크 설계 인원이 태스크 설계 및 태스크 트레이닝을 완성한 후, 제때에 태스크 연산량 측정 평가 결과를 획득할 수 있어, 태스크에 대하여 맞춤형의 최적화를 쉽게 진행하도록, 태스크 설계 인원이 태스크 연산량의 소모 상태를 제때에 장악하는 것에 유리하다.
제2 측면에 있어서, 본 개시에서 태스크 연산량 확정 장치를 제공하며, 상기 장치는:
타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하기 위한 제1 제어 모듈;
상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하기 위한 획득 모듈로서, 상기 태스크 운행 기간은 상기 타겟 태스크가 운행을 시작해서부터 상기 타겟 태스크가 운행을 종료할 때까지의 기간인 것인, 획득 모듈; 및
상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하기 위한 확정 모듈; 을 포함한다.
선택적으로, 상기 획득 모듈은:
상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스를 획득하기 위한 제1 획득 서브 모듈;
상기 타겟 태스크가 점유한 CPU 타임 슬라이스를 획득하기 위한 제2 획득 서브 모듈; 및
상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 및 상기 타겟 태스크가 점유한 CPU 타임 슬라이스에 따라, 상기 타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 확정하기 위한 제1 확정 서브 모듈; 을 포함한다.
선택적으로, 상기 타겟 태스크의 연산량은 이미지 검측 알고리즘의 연산량, 음성 인식 알고리즘의 연산량 또는 계획 및 제어 알고리즘의 연산량을 포함한다.
선택적으로, 상기 타겟 태스크의 연산량은 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량이고;
상기 확정 모듈은:
상기 이미지 검측 알고리즘이 상기 태스크 운행 기간내에 처리한 이미지 프레임수를 획득하기 위한 제2 획득 서브 모듈;
상기 타겟 CPU 코어의 DMIPS, 상기 CPU 타임 슬라이스 점유율, 상기 태스크 운행 기간 및 상기 이미지 프레임수에 따라, 상기 이미지 검측 알고리즘의 싱글 프레임 연산량을 확정하기 위한 제2 확정 서브 모듈; 및
상기 싱글 프레임 연산량 및 상기 타겟 프레임율에 따라, 상기 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 확정하기 위한 제3 확정 서브 모듈; 을 포함한다.
선택적으로, 상기 장치는:
상기 타겟 태스크가 상기 타겟 CPU 코어에서 운행하는 과정에서, 상기 타겟 CPU 코어의 운행 주파수가 기설정 주파수에 있도록 제어하기 위한 제2 제어 모듈을 더 포함한다.
선택적으로, 상기 제1 제어 모듈은 구체적으로:
상기 타겟 태스크가 기설정 우선급으로 상기 타겟 CPU 코어중에서 운행하도록 제어하기 위한 것이다.
선택적으로, 상기 장치는:
클라우드 서버에서 송신한 상기 타겟 태스크를 수신하기 위한 수신 모듈로서, 상기 타겟 태스크를 사용자가 미리 상기 클라우드 서버로 업로드한 것인, 수신 모듈을 포함한다.
선택적으로, 상기 장치는:
상기 클라우드 서버로 상기 타겟 태스크의 연산량을 리포팅하기 위한 리포팅 모듈을 포함한다.
제3 측면에 있어서, 본 개시에서 전자 기기를 제공하며, 상기 전자 기기는:
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서와 통신 연결된 메모리;를 포함하며, 그 중,
상기 메모리에는 상기 적어도 하나의 프로세서에 의하여 실행 가능한 명령이 저장되어 있고, 상기 명령은 상기 적어도 하나의 프로세서에 의하여 실행되여, 상기 적어도 하나의 프로세서로 하여금 제1 측면에 따른 임의의 어느 한 방법을 수행하도록 한다.
제4 측면에 있어서, 본 개시에서 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독 가능 저장 매체를 제공하며, 상기 컴퓨터 명령은 상기 컴퓨터로 하여금 제1 측면에 따른 임의의 어느 한 방법을 실행하기 위한 것이다.
상술한 개시중의 실시예는 하기 장점 또는 유익한 효과를 구비한다.
본 개시에서, 타겟 태스크에 대하여 연산량 측정 평가를 진행해야 되는 경우, 타겟 태스크가 타겟 CPU 코어중에서 운행하도록 제어하는 것을 통하여, 또한 타겟 태스크가 운행 과정중에서 점유한 CPU 타임 슬라이스 점유율을 획득하고, 즉 타겟 CPU 코어의 DMIPS 및 타겟 태스크가 점유한 CPU 타임 슬라이스 점유율에 따라, 타겟 태스크의 연산량을 확정한다. 상술한 기술 수단을 사용하였기에, 본 개시에서 확정한 태스크 연산량은 더욱 진실되고, 더욱 정확하게 태스크가 점유해야 할 CPU 연산력을 특성화할 수 있다. 따라서, 태스크에 대하여 분배할 때, 본 개시에서 확정한 태스크 연산량을 기반으로 하여, 기기의 하드웨어 타입 선택에 더욱 가치있는 참고를 제공할 수 있다.
상술한 선택적인 방식이 구비한 기타 효과는 하기 명세서중의 구체적인 실시예를 결합하여 추가 설명을 진행한다.
첨부 도면은 본 방안을 더욱 잘 이해하기 위한 것이고, 본 개시에 대한 제한을 구성하지 않는다. 그 중:
도 1은 본 개시의 실시예에서 제공하는 태스크 연산량 확정 방법의 플로우차트이다.
도 2는 본 개시의 실시예에서 제공하는 태스크 연산량 확정 방법의 처리 플로우차트 예시도이다.
도 3은 본 개시의 실시예에서 제공하는 태스크 연산량 측정 평가 시스템 분배 예시도이다.
도 4는 본 개시의 실시예에서 제공하는 태스크 측정 평가 폐쇄 루프 예시도이다.
도 5는 본 개시의 실시예에서 제공하는 태스크 연산량 확정 장치의 구조 예시도이다.
도 6은 본 개시의 실시예의 태스크 연산량 확정 방법을 구현하는 전자 기기의 블록도이다.
이하 도면을 결부시켜 본 개시의 예시적인 실시예에 대하여 설명을 진행하고, 그 중 이해를 돕기 위하여 본 개시의 실시예의 각종 디테일도 포함되며, 이는 오직 예시적인 것임을 이해해야 된다. 이로써, 해당 기술분야에서 통상의 지식을 가진 자들은 여기서 설명한 실시예에 대하여 각종 변화 및 수정을 진행할 수 있고, 본 개시의 범위 및 정신을 벗어나지 않음을 이해해야 한다. 동일하게, 명확하고 또한 간단명료하기 위하여, 하기 설명에서는 공지된 기능 및 구조에 대한 설명을 생략한다.
현재, 태스크 연산량은 통상적으로 MACCs 및 FLOPS를 사용하여 특성화를 하고, MACCs는 이론의 승법 누산 횟수를 특성화하기 위한 것이고, FLOPS는 GPU(Graphics Processing Unit, 그래픽 프로세서) 측의 플로팅 포인트 연산 횟수를 특성화하기 위한 것이다.
태스크의 깊이가 점차 증가되는 것에 따라, 태스크의 연산 복잡도 및 연산량도 따라서 상승되며, 태스크가 운행 과정에서 점유해야 할 CPU 연산력도 점차 높아진다. 예컨대, 인공지능(Artificial Intelligence, AI로 약칭)의 발전에 따라, 깊이 학습도 점차 각 분야에서의 메인스트림 방법으로 되어가고, 레지듀얼 네트워크(Residual Networks, ResNets로 약칭)의 이젝터에 따라, 신경 네트워크의 깊이도 점차 증가되며, 연산 복잡도 및 연산량도 따라서 상승된다. 따라서, 태스크가 기기중에서 정상적으로 운행할 수 있도록 확보하기 위하여, 기기중에서 태스크를 분배하기 전, 기기의 CPU 연산력이 태스크의 연산력 부하를 부담할 수 있을지 여부에 대하여 측정 평가를 해야 하고, 또는, 기기의 CPU 연산력이 태스크의 연산량을 만족할지 여부에 대하여 측정 평가를 해야 한다.
그러나, 상술한 두가지 태스크 연산량의 특성화 방식은 전부 태스크가 CPU중에서 운행할 때 점유해야 할 연산량을 특성화할 수 없어, 이는 현재로서 태스크가 CPU중에서 운행할 때 점유해야 할 연산량을 진실하고 또한 정확하게 확정할 수 없으며, 따라서 기기의 하드웨어 타입 선택, 태스크의 적합화 등 방면에서 지도를 제공할 수 없게 된다.
이를 기반으로, 본 개시에서 타겟 태스크가 CPU중에서 운행할 때 점유해야 할 연산량을 확정하기 위한, 또는, 타겟 태스크가 운행 과정중에서 점유해야 할 CPU 연산력을 확정하기 위한 태스크 연산량 확정 방법을 제공한다. 본 개시에서 측정 평가 기기(예컨대 컴퓨터, 핸드폰, 차량 탑재 컴퓨터 등 단말 기기)를 통하여 태스크 연산량의 확정을 진행할 수 있다.
본 개시에서, 타겟 태스크는 측정 평가 기기의 CPU중에서 운행할 수 있는 태스크를 의미하고, 타겟 태스크가 CPU중에서 운행할 때 스레드 또는 프로세스일 수 있다. 타겟 태스크의 연산량은 타겟 태스크가 운행 과정중에서 점유해야 할 CPU 연산력을 의미한다.
도 1에서 도시된 바와같이, 상기 태스크 연산량 확정 방법은 하기의 단계를 포함한다.
단계 101: 타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어한다.
현재, CPU는 일반적으로 다중 코어(즉 물리 코어) 아키텍처를 사용하고, 일부 CPU에는 대코어 및 소코어가 배치되어 있다. 상기 단계에서, 타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하는 것을 통하여, 이에 따라, 타겟 태스크의 연산량은 오직 타겟 CPU 코어의 연산력을 고려하면 되기에, 타겟 태스크의 연산량을 더욱 간단하고 또한 더욱 정확하게 확정할 수 있다.
본 개시에서, 타겟 태스크가 운행하기 전, 타겟 태스크가 기타 CPU 코어에서 운행하지 않고, 오직 타겟 CPU 코어에서 운행하도록, 미리 타겟 태스크를 위하여 CPU 코어를 바인딩할 수 있다. 타겟 태스크를 위하여 CPU 코어를 바인딩하는 방법은 예컨대, 안드로이드(Android) 시스템에서 명령 "echo "0" > /sys/devices/system/cpu/cpuN/ online"을 통하여 CPU 코어의 바인딩을 구현할 수 있고, 그 중, N는 금지해야 할 CPU 코어를 의미한다.
본 개시에서, 타겟 태스크는 이미지 검측 알고리즘을 이용하는 이미지 검측 태스크일 수 있고, 타겟 태스크의 연산량은 이미지 검측 알고리즘의 연산량일 수 있으며, 더욱 구체적으로 말하자면, 타겟 태스크의 연산량은 이미지 검측 알고리즘을 이용하여 이미지 검측을 진행하는 연산량일 수 있다. 구체적인 애플리케이션에서, 이미지 검측 태스크는 예컨대, 얼굴 검측, 얼굴 인식, 제스처 인식, 차선 검측, 보행자 차량 검측, 텍스트 인식, 물체 분류, 물체 분할 등 태스크를 포함할 수 있다.
타겟 태스크는 음성 인식 알고리즘을 이용한 음성 인식 태스크일 수 있고, 타겟 태스크의 연산량은 음성 인식 알고리즘의 연산량일 수 있으며, 더욱 구체적으로 말하자면, 타겟 태스크의 연산량은 음성 인식 알고리즘을 이용하여 음성 인식을 진행하는 연산량일 수 있다. 구체적인 애플리케이션에서, 음성 인식 태스크는 예컨대, 음성 웨이크업, 서맨틱 이해, 언어 번역, 음성 합성 등 태스크를 포함할 수 있다.
타겟 태스크는 계획과 제어 알고리즘을 이용한 태스크일 수 있고, 타겟 태스크의 연산량은 계획과 제어 알고리즘의 연산량일 수 있다. 구체적인 애플리케이션에서, 계획과 제어 알고리즘의 태스크는 예컨대 경로 계획, 궤적 예측, 학습 강화, MPC(Model Predictive Control, 모델 예측 제어) 등 태스크를 포함할 수 있다.
단계 102: 상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하고, 상기 태스크 운행 기간은 상기 타겟 태스크가 운행을 시작해서부터 상기 타겟 태스크가 운행을 종료할 때까지의 기간이다.
현재 작업 시스템(예컨대 Windows、Linux、Mac OS X 등)은 동시에 복수 개의 프로세스가 운행하는 것을 허용하고, 따라서, 태스크가 운행하는 기간에서, 타겟 태스크가 타겟 CPU 코어중에서 운행하는 것 이외, 타겟 CPU코 어중에는 가능하게 기타 프로세스가 운행할 수 있다. 또한, 타겟 태스크가 운행하는 과정에서, 가능하게 지속적으로 운행하는 것이 아니라, 기타 프로세스와 교차적으로 운행하는 것일 수 있다. 따라서, 태스크가 운행하는 기간에서, 타겟 CPU 코어의 연산력은 타겟 태스크가 전부 점유하는 것은 아니다.
CPU 타임 슬라이스(timeslice)는 또한 "양자(quantum)" 또는 "프로세서 슬라이스(processor slice)"로 칭하며, 시분할 작업 시스템이 각각의 운행중인 프로세스 마이크로뷰로 분배하는 한 기간의 CPU 타임이다. 보다시피, CPU 타임 슬라이스는 비교적 진실되게 프로세스(또는 태스크) 운행이 점유하는 CPU 타임을 나타낼 수 있다.
이로써, 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율은 비교적 진실되게 타겟 태스크 운행이 점유하는 CPU 타임 슬라이스의 비율을 나타낼 수 있고, 따라서 타겟 태스크 운행에 필요한 CPU 연산력 점유율을 측정하는데 적합하다.
이를 기반으로 하여, 상기 단계에서, 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하는 것을 통하여, 타겟 태스크 운행에 필요한 CPU 연산력 점유율을 비교적 진실되게 또한 정확하게 특성화할 수 있고, 따라서 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율은 타겟 태스크의 연산량의 확정을 위하여 근거를 제공해줄 수 있다.
여기서, 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율은, 타겟 태스크가 태스크 운행 기간에서의 타겟 CPU 코어의 타임 슬라이스 점유율로 이해할 수 도 있다.
단계 103: 상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정한다.
그 중, DMIPS(Dhrystone Million Instructions executed Per Second)는 컴퓨터 칩을 측정하는 단위이고, DMIPS 수치가 클 수록, CPU의 데이터 처리 능력은 강하다. MIPS(Million Instructions executed Per Second, 매초 백만건 명령)는 동일한 1초 내에서 시스템의 처리 능력을 연산하기 위한 것이고, 즉 매초에 얼만큼한 백만건 명령을 실행한 것이다. 보다시피, DMIPS는 비교적 진실되게 CPU의 연산 능력을 측정하고, DMIPS는 기기의 CPU 연산력의 측정 단위로 볼 수 있다. 따라서, 타겟 CPU 코어의 DMIPS는 비교적 진실되게 타겟 CPU 코어의 총 연산력을 측정할 수 있다.
본 개시에서, 타겟 태스크가 타겟 CPU 코어중에서 운행하도록 제어하는 것을 통하여, 타겟 CPU 코어의 DMIPS를 타겟 태스크 연산량의 확정 근거로 할 수 있고, 따라서 확정한 타겟 태스크의 연산량은 타겟 태스크 운행시 점유해야 할 CPU 연산력을 더욱 진실되고, 더욱 정확하게 특성화할 수 있다.
타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율이 트겟 태스크 운행에 필요한 CPU 연산력 점유율을 측정하는데 적합하기에, 타겟 CPU 코어의 DMIPS는 비교적 진실되게 타겟 CPU 코어의 총 연산력을 측정할 수 있고, 따라서, 상기 단계에서, 타겟 CPU 코어의 DMIPS 및 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율에 따라, 타겟 태스크의 연산량을 확정할 수 있다. 또한, 이에 따라 확정해낸 타겟 태스크의 연산량은 더욱 진실되고, 더욱 정확하게 태스크가 점유해야 할 CPU 연산력을 특성화할 수 있다.
예컨대, 타겟 CPU 코어의 DMIPS가 A이고, 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율이 B이며, 타겟 태스크의 연산량이 C일 때, C=a·A×b·B이고, 그 중, a 및 b는 전부 0보다 큰 계수이다.
본 개시에서, 타겟 태스크에 대하여 연산량 측정 평가를 진행해야 되는 경우, 타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하는 것을 통하여, 또한 상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하며, 즉 상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정할 수 있다. 상술한 기술 수단을 사용하였기에, 본 개시에서 확정한 태스크 연산량은 더욱 진실되고, 더욱 정확하게 태스크가 점유해야 할 CPU 연산력을 특성화할 수 있다. 따라서, 태스크에 대하여 분배할 때, 본 개시에서 확정한 태스크 연산량을 기반으로 하여, 기기의 하드웨어 타입 선택에 더욱 가치있는 참고를 제공할 수 있다.
설명해야 할 것은, 현재 아직도 CPU 점유율을 기반으로 하여 태스크 연산량에 대해 측정 평가를 진행하는 기술이 존재하고, 해당 기술은 아이들 태스크 타이밍을 통하여 CPU 점유율을 통계하지만, 이러한 방식은 오직 연속적인 태스크에 적용되고, 통용성을 구비하지 않는다. 일부 비연속족인 태스크에 대하여 말하면, CPU 점유율을 기반으로 하여 태스크 연산량의 확정을 구현할 수 없다. 이미지 검측 알고리즘을 예를 들면, 이미지 검측 알고리즘은 한 프레임 한 프레임의 이미지에 대하여 처리를 진행하기 위한 것이고, 태스크 운행 기간내에서 연속성이 결핍하며, CPU점유율을 기반으로 하여 이미지 검측 알고리즘의 연산량을 측정 평가한다면, 결과에 편차가 비교적 크다.
그러나 본 개시에서 제공하는 DMIPS 및 CPU 타임 슬라이스 점유율을 기반으로 하여 태스크 연산량을 확정하는 방안은, CPU 타임 슬라이스 점유율이 태스크 운행에 필요한 CPU 연산력 점유율을 비교적 진실되고 또한 정확하게 특성화할 수 있기에, 연속적인 태스크에 적용될 뿐만 아니라, 비연속적인 태스크에도 적용되어, 통용성을 구비하고 있다.
선택적으로, 상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하는 단계는:
상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스를 획득하는 단계;
상기 타겟 태스크가 점유한 CPU 타임 슬라이스를 획득하는 단계; 및
상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 및 상기 타겟 태스크가 점유한 CPU 타임 슬라이스에 따라, 상기 타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 확정하는 단계;를 포함한다.
해당 실시 방식에 있어서, 타겟 CPU 코어가 태스크 운행 기간에서의 CPU 타임 슬라이스는, 타겟 CPU 코어가 해당 기간에서의 총 CPU 타임 슬라이스로 이해할 수 있다. 해당 기간에서의 총 CPU 타임 슬라이스중에서, 부분 타임 슬라이스는 타겟 태스크를 운행하기 위한 것이고, 부분 타임 슬라이스는 기타 태스크 또는 프로세스를 운행하기 위한 것일 수 있고, 또는 전부의 타임 슬라이스가 타겟 태스크를 운행하기 위한 것일 수 있다.
타겟 태스크가 점유한 CPU 타임 슬라이스는, 타겟 태스크 자체가 점유한 CPU 타임 슬라이스인 것으로 이해할 수 있다.
해당 실시 방식에 있어서, CPU 타임 슬라이스 점유 검측 모듈을 통하여 상술한 두가지 CPU 타임 슬라이스의 획득을 구현할 수 있다.
예컨대, 타겟 태스크가 운행을 시작한 것으로 검측되였을 때, CPU 타임 슬라이스 점유 검측 모듈이 타겟 CPU 코어의 /proc/stat의 타임 슬라이스를 판독하여, t_cpu_start으로 기록하고; 타겟 태스크가 운행을 종료한 것으로 검측되였을 때, CPU 타임 슬라이스 점유 검측 모듈이 타겟 CPU 코어의 /proc/stat의 CPU타임 슬라이스를 판독하여, t_cpu_end으로 기록하며; 이에 따라, 타겟 CPU 코어가 태스크 운행 기간에서의 CPU 타임 슬라이스는 (t_cpu_end - t_cpu_start)이다.
상응적으로, 타겟 태스크가 운행을 시작한 것으로 검측되였을 때, CPU 타임 슬라이스 점유 검측 모듈이 타겟 CPU 코어의 /proc/[pid]/stat의 타임 슬라이스를 판독하여, t_app_cpu_start으로 기록하고; 타겟 태스크가 운행을 종료한 것으로 검측되였을 때, CPU 타임 슬라이스 점유 검측 모듈이 타겟 CPU 코어의 /proc/[pid]/stat의 CPU 타임 슬라이스를 판독하여, t_app_cpu_end으로 기록하며; 이에 따라, 타겟 태스크가 점유한 CPU 타임 슬라이스는 (t_app_cpu_end - t_app_cpu_start)이다.
상술한 /proc/[pid]/stat중의 pid는 프로세스의 id를 나타내고, 또한 타겟 태스크의 id를 나타낸다.
타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율은 하기 공식을 통하여 얻을 수 있다:
cpu_usage=(t_app_cpu_end-t_app_cpu_start)/(t_cpu_end-t_cpu_start)를 통하여 얻을 수 있으며,
그 중, cpu_usage는 타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 나타낸다.
해당 실시 방식에 있어서, 타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 확정하는 것을 통하여, 타겟 태스크의 연산량을 정확하게 측정 평가하는데 유리하다.
선택적으로, 상기 타겟 태스크의 연산량은 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량이고;
상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하는 단계는:
상기 이미지 검측 알고리즘이 상기 태스크 운행 기간내에 처리한 이미지 프레임수를 획득하는 단계;
상기 타겟 CPU 코어의 DMIPS, 상기 CPU 타임 슬라이스 점유율, 상기 태스크 운행 기간 및 상기 이미지 프레임수에 따라, 상기 이미지 검측 알고리즘의 싱글 프레임 연산량을 확정하는 단계; 및
상기 싱글 프레임 연산량 및 상기 타겟 프레임율에 따라, 상기 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 확정하는 단계;를 포함한다.
이미지 검측 알고리즘이 응용될 때, 일반적으로 이미지 검측 효율을 참조해야 되고, 즉 이미지 검측의 프레임율을 참조해야 된다. 이를 기반으로 하여, 해당 실시 방식에 있어서, 이미지 검측 알고리즘의 연산량을 연산해야 될 때, 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 고려할 수 있다.
하기 도 2를 결부하여, 상기 실시 방식의 처리 플로우차트에 대하여 예시적인 설명을 진행한다.
도 2에서 도시된 바와같이, 측정 평가 기기중 검측 태스크 인터페이스(201), CPU 타임 슬라이스 점유 검측 모듈(202), 알고리즘 운행 통계 모듈(203) 및 연산량 분석 모듈(204)을 설정할 수 있다.
검측 태스크 인터페이스(201)를 통하여 이미지 검측 알고리즘 모델(205) 및 일정한 프레임수(예컨대 500 프레임)의 아날로그 이미지(206)를 입력하고, 또한 이미지 검측 알고리즘이 타겟 CPU 코어중에서 운행하도록 제어하여, 전부의 아날로그 이미지의 검측이 완성되도록, 이미지 검측 알고리즘이 아날로그 이미지에 대하여 검측을 진행하게 한다. 이미지 검측 알고리즘이 전부의 아날로그 이미지를 처리하는 기간이 바로 태스크 운행 기간이다. 각각의 아날로그 이미지가 이미지 검측 알고리즘을 통하여 검측을 진행하는 횟수는 한회일 수 있고, 또는 복수 회일 수 있으며, 본 개시에서는 이에 대하여 한정하지 않는다.
CPU 타임 슬라이스 점유 검측 모듈(202)을 통하여 이미지 검측 알고리즘의 운행 과정중의 CPU 타임 슬라이스 점유율을 통계할 수 있고, 알고리즘 운행 통계 모듈(203)을 통하여 이미지 검측 알고리즘이 운행하는 시작 시간, 종료 시간 및 운행 횟수를 통계할 수 있다. 그 중, 이미지 검측 알고리즘이 운행하는 시작 시간에서 종료 시간까지의 기간을 태스크 운행 기간으로 하고, 운행 횟수는 이미지 검측 알고리즘이 태스크 운행 기간내에서 처리한 이미지 프레임수이다.
CPU 타임 슬라이스 점유 검측 모듈(202)은 통계한 이미지 검측 알고리즘의 운행 과정중의 CPU 타임 슬라이스 점유율을 연산량 분석 모듈(204)로 송신할 수 있고, 알고리즘 운행 통계 모듈(203)은 통계한 이미지 검측 알고리즘이 운행하는 시작 시간, 종료 시간 및 운행 횟수를 연산량 분석 모듈(204)로 송신할 수 있으며, 또한 연산량 분석 모듈(204)을 통하여 이미지 검측 알고리즘의 싱글 프레임 연산량 및 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 순차적으로 확정한다.
해당 실시 방식에 있어서, 이미지 검측 알고리즘의 싱글 연산량은 하기 공식으로 얻을 수 있다.
dmip=duration*total_DMIPS*cpu_usage/M 로 얻을 수 있으며,
그 중, dmip는 이미지 검측 알고리즘의 싱글 연산량을 나타내고, duration은 태스크 운행 기간을 나타내며, total_DMIPS는 타겟CPU 코어의 총 연산력을 나타내고, cpu_usage는 이미지 검측 알고리즘이 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 나타내며, M는 이미지 검측 알고리즘이 태스크 운행 기간내에 처리한 이미지 프레임수를 나타낸다.
이미지 검측 알고리즘의 싱글 프레임 연산량을 확정한후, 하기 공식을 통하여 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 얻을 수 있으며, 공식은:
DMIPS= dmip*fps이며,
그 중, DMIPS는 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 나타내고, dmip는 이미지 검측 알고리즘의 싱글 연산량을 나타내며, fps는 타겟 프레임율을 나타낸다.
해당 실시 방식에 있어서, 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 확정하는 것을 통하여, 이미지 검측 알고리즘의 성능을 정확하게 측정 평가하는데 유리하고, 따라서, 이미지 검측 알고리즘에 대하여 분배를 진행할 때, 확정한 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 기반으로 하여, 기기 하드웨어 타입 선택을 위하여 더욱 가치있는 참고를 제공하고, 따라서 이미지 검측 알고리즘의 응용을 촉진할 수 있다.
선택적으로, 상기 방법은:
상기 타겟 태스크가 상기 타겟 CPU 코어에서 운행하는 과정중에서, 상기 타겟 CPU 코어의 운행 주파수가 기설정 주파수에 있도록 제어하는 단계를 더 포함한다.
해당 실시 방식에 있어서, 시스템 운행 주파수의 변화가 타겟 태스크의 연산량의 확정에 대하여 영향을 주는 것을 방지하기 위하여, 타겟 태스크가 타겟 CPU 코어에서 운행하는 과정중에서, 타겟 CPU 코어의 운행 주파수에 대하여 잠금을 하여, 타겟 CPU 코어의 운행 주파수가 기설정 주파수에 있도록 제어한다.
해당 기설정 주파수는 미리 설정한 주파수 값일 수 있고, 또는 미리 설정한 주파수 범위일 수 있다. 타겟 태스크 운행 배치 파일을 통하여 타겟 CPU 코어의 운행 주파수에 대하여 배치를 진행할 수 있다.
상기 실기 방식에 있어서, 타겟 태스크의 운행 과정에서 타겟 CPU 코어의 운행 주파수를 제어하는 것을 통하여, 타겟 태스크의 운행에 비교적 안정적인 운행 환경을 제공하여, 본 개시에서 확정한 태스크 연산량이 더욱 정확하도록 확보할 수 있다.
선택적으로, 상기 타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하는 단계는:
상기 타겟 태스크가 기설정 우선급으로 상기 타겟 CPU 코어중에서 운행하도록 제어하는 단계를 포함한다.
상기 실시 방식에 있어서, 타겟 태스크가 비교적 높은 우선급으로 타겟 CPU 코어중에서 운행하도록 제어할 수 있고, 이에 따라, 타겟 태스크가 우선적으로 운행할 수 있고, 긴 시간 기다릴 필요가 없으며, 따라서 타겟 태스크의 운행 효율을 제고하여, 타겟 태스크의 연산량이 비교적 빠르게 확정될 수 있다.
선택적으로, 상기 타겟 태스크가 타겟 CPU 코어중에서 운행하도록 제어하기 전, 상기 방법은:
클라우드 서버에서 송신한 상기 타겟 태스크를 수신하고, 상기 타겟 태스크를 사용자가 미리 상기 클라우드 서버로 업로드하는 단계를 더 포함한다.
상기 실시 방식에 있어서, 클라우드 서버를 통하여 타겟 태스크를 측정 평가 기기로 푸시할 수 있고, 따라서 측정 평가 기기는 클라우드 서버로부터 타겟 태스크를 수신하여, 타겟 태스크 연산량에 대한 확정을 구현할 수 있다.
상기 실시 방식에 있어서, 태스크 연산량 측정 평가 시스템을 클라우드 서버에 분배하고, 또한 대외로 개방하는 측정 평가 환경을 건설하며, 이에 따라, 개방적인 측정 평가 환경을 건설하는 것을 통하여, 태스크 연산량의 측정 평가 효율 및 측정 평가 효과를 제고하는데 유리하다.
하기 도 3을 결부하여, 상기 실시 방식의 플로우차트에 대하여 예시적인 설명을 진행한다.
도 3에서 도시된 바와같이, 클라우드 서버(301)에서 타겟 태스크를 상이한 측정 평가 기기(302)로 푸시할 수 있다. 사용자는 web 인터페이스(303)를 통하여 측정 대기 태스크를 클라우드 서버(301)로 업로드할 수 있고, 클라우드 서버(301)에서 측정 대기 태스크를 수신한 후, 자동으로 측정 대기 태스크의 모델을 컴파일링하고, 또한 측정 대기 태스크의 모델을 상이한 측정 평가 기기(302)로 푸시할 수 있다.
선택적으로, 상기 타겟 태스크의 연산량을 연산한 후, 상기 방법은:
상기 클라우드 서버로 상기 타겟 태스크의 연산량을 리포팅하는 단계를 더 포함한다.
도 3에서 도시된 바와같이, 상기 실시 방식에 있어서, 측정 평가 기기(302)에서 확정한 타겟 태스크의 연산량을 클라우드 서버(301)로 리포팅할 수 있고, 이에 따라, 클라우드 서버(301)에서는 타겟 태스크의 연산량을 사용자한테 피드백할 수 있다.
상기 실시 방식에 있어서, 태스크 연산량 측정 평가 시스템을 클라우드 서버(301)로 분배하는 것을 통하여, 태스크 설계, 태스크 트레이닝, 태스크 반포 및 태스크 연산량 측정 평가를 폐쇄 루프를 형성하도록 한다(도 4에서 도시된 바와같이). 이에 따라, 태스크 설계 인원이 태스크 설계 및 태스크 트레이닝을 완성한 후, 태스크를 클라우드 서버(301)로 공개할 수 있고, 클라우드 서버(301)에서는 즉시 태스크를 측정 평가 기기로 푸시하여, 측정 평가 기기를 통하여 태스크 연산량 측정 평가를 진행하며, 측정 평가 기기에서 다시 태스크 연산량 측정 평가 결과를 클라우드 서버로 리포팅하고, 태스크에 대하여 맞춤형의 최적화를 쉽게 진행하도록, 태스크 설계 인원이 태스크 연산량의 소모 상태를 제때에 장악하는 것에 유리하다.
설명해야 할 것은, 본 개시중의 태스크 연산량 확정 방법중의 다중 선택적인 실시 방식은, 상호간에 결부하여 구현할 수 있고, 단독적으로 구현할 수 도 있으며, 여기에 대하여 본 개시는 한정하지 않는다.
본 개시의 상술한 실시예는 하기 우점 또는 유익한 효과를 구비한다.
본 개시에서, 타겟 태스크에 대하여 연산량 측정 평가를 진행해야 되는 경우, 타겟 태스크가 타겟 CPU 코어중에서 운행하도록 제어하는 것을 통하여, 또한 타겟 태스크가 운행 과정중에서 점유한 CPU 타임 슬라이스 점유율을 획득하고, 즉 타겟 CPU 코어의 DMIPS 및 타겟 태스크가 점유한 CPU 타임 슬라이스 점유율에 따라, 타겟 태스크의 연산량을 확정한다. 상술한 기술 수단을 사용하였기에, 본 개시에서 확정한 태스크 연산량은 더욱 진실되고, 더욱 정확하게 태스크가 점유해야 할 CPU 연산력을 특성화할 수 있다. 따라서, 태스크에 대하여 분배할 때, 본 개시에서 확정한 태스크 연산량을 기반으로 하여, 기기의 하드웨어 타입 선택에 더욱 가치있는 참고를 제공할 수 있다.
본 개시에서 태스크 연산량 확정 장치를 제공하고, 도 5에서 도시된 바와같이, 태스크 연산량 확정 장치(400)는:
타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하기 위한 제1 제어 모듈(401);
상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하기 위한 획득 모듈(402)로서, 상기 태스크 운행 기간은 상기 타겟 태스크가 운행을 시작해서부터 상기 타겟 태스크가 운행을 종료할 때까지의 기간인 것인, 획득 모듈(402); 및
상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하기 위한 확정 모듈(403); 을 포함한다.
선택적으로, 획득 모듈(402)은:
상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스를 획득하기 위한 제1 획득 서브 모듈;
상기 타겟 태스크가 점유한 CPU 타임 슬라이스를 획득하기 위한 제2 획득 서브 모듈; 및
상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 및 상기 타겟 태스크가 점유한 CPU 타임 슬라이스에 따라, 상기 타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 확정하기 위한 제1 확정 서브 모듈; 을 포함한다.
선택적으로, 상기 타겟 태스크의 연산량은 이미지 검측 알고리즘의 연산량, 음성 인식 알고리즘의 연산량 또는 계획 및 제어 알고리즘의 연산량을 포함한다.
선택적으로, 상기 타겟 태스크의 연산량은 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량이고;
확정 모듈(403)은:
상기 이미지 검측 알고리즘이 상기 태스크 운행 기간내에 처리한 이미지 프레임수를 획득하기 위한 제2 획득 서브 모듈;
상기 타겟 CPU 코어의 DMIPS, 상기 CPU 타임 슬라이스 점유율, 상기 태스크 운행 기간 및 상기 이미지 프레임수에 따라, 상기 이미지 검측 알고리즘의 싱글 프레임 연산량을 확정하기 위한 제2 확정 서브 모듈; 및
상기 싱글 프레임 연산량 및 상기 타겟 프레임율에 따라, 상기 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 확정하기 위한 제3 확정 서브 모듈; 을 포함한다.
선택적으로, 태스크 연산량 확정 장치(400)는:
상기 타겟 태스크가 상기 타겟 CPU 코어에서 운행하는 과정중에서, 상기 타겟 CPU 코어의 운행 주파수가 기설정 주파수에 있도록 제어하기 위한 제2 제어 모듈을 포함한다.
선택적으로, 제1 제어 모듈(401)은 구체적으로:
상기 타겟 태스크가 기설정 우선급으로 상기 타겟 CPU 코어중에서 운행하도록 제어하기 위한 것이다.
선택적으로, 태스크 연산량 확정 장치(400)는:
클라우드 서버에서 송신한 상기 타겟 태스크를 수신하기 위한 수신 모듈을 더 포함하며, 상기 타겟 태스크를 사용자가 미리 상기 클라우드 서버로 업로드한다.
선택적으로, 태스크 연산량 확정 장치(400)는:
상기 클라우드 서버에 상기 타겟 태스크의 연산량을 리포팅하기 위한 리포팅 모듈을 포함한다.
본 개시에서 제공하는 태스크 연산량 확정 장치(400)는 상술한 태스크 연산량 확정 방법 실시예중 태스크 연산량 확정 장치가 구현하는 각각의 과정을 구현할 수 있고, 또한 동일한 유익한 효과에 도달할 수 있으며, 중복 설명을 피면하기 위하여, 여기서 더이상 상세하게 설명하지 않는다.
본 개시의 실시예에서, 본 개시에서 전자 기기 및 판독 가능 저장 매체를 제공한다.
도 6에서 도시된 바와같이, 본 개시의 실시예의 태스크 연산량 확정 방법의 전자 기기의 블록도이다. 전자 기기는 랩탑 컴퓨터, 데스크 컴퓨터, 벤치, 개인 디지털 보조기, 서버, 블레이드 서버, 대형 컴퓨터, 및 기타 적합한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 의미한다. 전자 기기는 개인 디지털 처리, 셀룰러 전화기, 스마트폰, 웨어러블 장치 및 기타 유사한 컴퓨터 장치와 같은 각종 형식의 이동 장치를 의미한다. 본 명세서에서 제시한 컴포넌트, 이들의 연결 및 관계, 및 이들의 기능은 오직 실시예로서, 또한 그리고 본 명세서에 설명된 및/또는 청구된 본 개시의 구현을 제한하기 위한 의도는 아니다.
도 6에서 도시된 바와같이, 상기 전자 기기는: 한개 또는 복수 개의 프로세서(501), 메모리(502) 및 고속 인터페이스 및 저속 인터페이스를 포함하는 각 컴포넌트를 연결하기 위한 인터페이스를 포함한다. 각각의 컴포넌트는 상이한 버스를 이용하여 상호 연결되었고, 또한 공통 메인 플레이트에 설치될 수 있거나 또는 수요에 따라 기타 방식으로 설치될 수 있다. 프로세서는 전자 기기내에서 실행되는 명령에 대하여 처리할 수 있고, 메모리에 저장되어 있거나 또는 메모리 외부 입력/수출 장치(예컨대, 인터페이스에 결합된 표시 기기)에서 GUI로 디스플레이된 이미지 정보의 명령을 포함한다. 기타 실시 방식에 있어서, 필요하다면, 복수 개의 프로세서 및/또는 복수 개의 버스와 복수 개의 메모리 및 복수 개의 메모리와 함께 사용할 수 있다. 이와 동일하게, 복수 개의 전자 기기와 연결하여, 각각의 장치가 부분적으로 필요한 동작(예컨대, 서버 어레이, 블레이드 서버, 또는 다중 프로세서 시스템)을 제공할 수 있다. 도 6중 하나의 프로세서(501)을 예로 든다.
메모리(502)는 본 개시에서 제공하는 비일시적 컴퓨터 판독 가능 저장 매체이다. 그 중, 상기 메모리는 적어도 하나의 프로세서에 의하여 실행할 수 있는 명령이 저장되어 있어, 상기 적어도 하나의 프로세서가 본 개시에서 제공하는 태스크 연산량 확정 방법을 실행할 수 있도록 한다. 본 개시의 비일시적 컴퓨터 판독 가능 저장 매체에는 컴퓨터 명령을 저장하였고, 상기 컴퓨터 명령은 컴퓨터가 본 개시에서 제공하는 태스크 연산량 확정 방법을 실행하게 하기 위한 것이다.
메모리(502)는 일종의 비일시적 컴퓨터 판독 가능 저장 매체로서, 비일시적 소프트웨어 프로그램, 비일시적 컴퓨터 실행 가능 프로그램 및 모듈을 저장하기 위한 것일 수 있고, 예컨대 본 개시의 실시예중의 태스크 연산량 확정 방법에 대응되는 프로그램 명령/모듈(예컨대, 도5에서 도시된 바와같이 제1 제어 모듈(401), 획득 모듈(402) 및 확정 모듈(403))을 저장할 수 있다. 프로세서(501)는 메모리(502)에 저장되어 있는 비일시적 소프트웨어 프로그램, 명령 및 모듈을 운행하는 것을 통하여, 따라서 태스크 연산량 확정 장치의 각종 기능 애플리케이션 및 데이터 처리를 실행하며, 상술한 방법 실시예중의 태스크 연산량 확정 방법을 구현한다.
메모리(502)는 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있고, 여기서, 프로그램 저장 영역은 운영 체제, 적어도 하나의 기능에 필요한 응용 프로그램을 저장할 수 있으며; 데이터 저장 영역은 데이터 씨닝 방법의 전자 기기의 사용에 따라 구축된 데이터 등을 저장할 수 있다. 이 밖에, 메모리(502)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 적어도 하나의 자기 디스크 메모리, 플래시 메모리, 또는 다른 비일시적 고체 상태 메모리와 같은 비일시적 메모리를 더 포함할 수 있다. 일부 실시예에서, 메모리(502)는 프로세서(501)에 대해 원격으로 설치된 메모리를 선택적으로 포함할 수 있고, 이러한 원격 메모리는 네트워크를 통해 태스크 연산량 확정 방법의 전자 기기에 연결될 수 있다. 상기 네트워크의 구현예로 인터넷, 인트라넷, 근거리 통신망, 이동 통신망 및 이들의 조합을 포함하지만 이에 한정되지 않는다.
태스크 연산량 확정 방법을 구현하는 전자 기기는: 입력 장치(503) 및 출력 장치(504)를 포함할 수 있다. 프로세서(501), 메모리(502), 입력 장치(503) 및 출력 장치(504)는 버스 또는 기타 방식을 통하여 연결될 수 있고, 도 6에서 버스를 통하여 연결되는 것을 예를 든다.
입력 장치(503)는 입력된 디지털 또는 문자 정보를 수신할 수 있고, 태스크 연산량 확정 방법을 구현하는 전자 기기의 사용자 설정 및 기능 제어와 관련된 키 신호 입력을 발생할 수 있으며, 상기 입력 장치는 예를 들어 터치스크린, 키패드, 마우스, 트랙 패널, 터치 패널, 지시 바, 하나 또는 다수의 마우스 버튼, 트랙 볼, 조이스틱 등 입력 장치이다. 출력 장치(504)는 표시 기기, 보조 조명 장치(예를 들어, LED) 및 촉각 피드백 장치(예를 들어, 진동 모터) 등을 포함할 수 있다. 상기 표시 기기는 액정 표시 장치(LCD), 발광 다이오드(LED) 표시 장치 및 플라스마 표시 장치를 포함할 수 있지만 이에 한정되지 않는다. 일부 실시 형태에서, 표시 기기는 터치스크린일 수 있다.
여기서 설명된 시스템 및 기술의 다양한 실시 형태는 디지털 전자 회로 시스템, 집적 회로 시스템, 전용 ASIC(전용 집적 회로), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합에서 구현될 수 있다. 이러한 다양한 실시 형태는 하나 또는 다수의 컴퓨터 프로그램에서의 구현을 포함할 수 있고, 상기 하나 또는 다수의 컴퓨터 프로그램은 적어도 하나의 프로그램 가능 프로세서를 포함하는 프로그램 가능 시스템에서 실행 및/또는 해석될 수 있으며, 상기 프로그램 가능 프로세서는 전용 또는 범용 프로그램 가능 프로세서일 수 있고, 저장 시스템, 적어도 하나의 입력 장치, 및 적어도 하나의 출력 장치로부터 데이터 및 명령을 수신할 수 있으며, 데이터 및 명령을 상기 저장 시스템, 상기 적어도 하나의 입력 장치, 및 상기 적어도 하나의 출력 장치에 전송할 수 있다.
이러한 컴퓨팅 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 또는 코드라고도 함)은 프로그램 가능 프로세서의 기계 명령을 포함하고, 하이레벨 프로세스 및/또는 대상에 대한 프로그래밍 언어, 및/또는 어셈블리/기계 언어를 이용하여 이러한 컴퓨팅 프로그램을 실행할 수 있다. 본문에서 사용된 바와 같이, 용어 “기계 판독 가능한 매체” 및 “컴퓨터 판독 가능한 매체”는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서에 제공하기 위한 임의의 컴퓨터 프로그램 제품, 기기, 및/또는 장치(예를 들어, 자기 디스크, 광 디스크, 메모리, 프로그램 가능 로직 장치(PLD))를 의미하고, 기계 판독 가능한 신호인 기계 명령을 수신하는 기계 판독 가능한 매체를 포함한다. 용어 “기계 판독 가능한 신호”는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서에 제공하기 위한 임의의 신호를 의미한다.
사용자와의 인터랙션을 제공하기 위하여, 컴퓨터에서 여기서 설명된 시스템 및 기술을 실시할 수 있고, 상기 컴퓨터는 사용자에게 정보를 표시하기 위한 표시 장치(예를 들어, CRT(음극선관) 또는 LCD(액정 표시 장치) 모니터); 및 키보드 및 지향 장치(예를 들어, 마우스 또는 트랙 볼)를 구비하며, 사용자는 상기 키보드 및 상기 지향 장치를 통해 컴퓨터에 입력을 제공할 수 있다. 다른 타입의 장치는 또한 사용자와의 인터랙션을 제공할 수도 있는데, 예를 들어, 사용자에게 제공된 피드백은 임의의 형태의 감지 피드백(예를 들어, 시각 피드백, 청각 피드백, 또는 촉각 피드백)일 수 있고; 임의의 형태(소리 입력, 음성 입력, 또는 촉각 입력)로 사용자로부터의 입력을 수신할 수 있다.
여기서 설명된 시스템 및 기술을 백그라운드 부재를 포함하는 컴퓨팅 시스템(예를 들어, 데이터 서버), 또는 미들웨어 부재를 포함하는 컴퓨팅 시스템(예를 들어, 응용 서버), 또는 프론트 엔드 부재를 포함하는 컴퓨팅 시스템(예를 들어, 그래픽 사용자 인터페이스 또는 웹 브라우저를 구비하는 사용자 컴퓨터이고, 사용자는 상기 그래픽 사용자 인터페이스 또는 웹 브라우저를 통해 여기서 설명된 시스템 및 기술의 실시 형태와 인터랙션할 수 있음), 또는 이러한 백그라운드 부재, 미들웨어 부재, 또는 프론트 엔드 부재의 임의의 조합을 포함하는 컴퓨팅 시스템에서 실시할 수 있다. 임의의 형태 또는 매체의 디지털 데이터 통신(예를 들어, 통신 네트워크)을 통해 시스템의 부재를 서로 연결시킬 수 있다. 통신 네트워크의 예시로 근거리 통신망(LAN), 광역 통신망(WAN), 인터넷을 포함한다.
컴퓨터 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 멀리 떨어져 있고 일반적으로 통신 네트워크를 통해 서로 인터랙션한다. 대응되는 컴퓨터에서 실행되고 또한 서로 클라이언트-서버 관계를 가지는 컴퓨터 프로그램을 통해 클라이언트 및 서버의 관계를 생성한다.
본 개시의 실시예의 기술 방안에 따라, 본 개시에서, 타겟 태스크에 대하여 연산량 측정 평가를 진행해야 되는 경우, 타겟 태스크가 타겟 CPU 코어중에서 운행하도록 제어하는 것을 통하여, 또한 타겟 태스크가 운행 과정중에서 점유한 CPU 타임 슬라이스 점유율을 획득하고, 즉 타겟 CPU 코어의 DMIPS 및 타겟 태스크가 점유한 CPU 타임 슬라이스 점유율에 따라, 타겟 태스크의 연산량을 확정한다. 상술한 기술 수단을 사용하였기에, 본 개시에서 확정한 태스크 연산량은 더욱 진실되고, 더욱 정확하게 태스크가 점유해야 할 CPU 연산력을 특성화할 수 있다. 따라서, 태스크에 대하여 분배할 때, 본 개시에서 확정한 태스크 연산량을 기반으로 하여, 기기의 하드웨어 타입 선택에 더욱 가치있는 참고를 제공할 수 있다.
이해해야 할 것은, 위에서 제시한 각종 형식의 플라우차트를 사용하여, 재정렬, 추가 또는 삭제 단계를 진행할 수 있다. 예컨대, 본 개시중에 기재된 각 단계는 병행하여 실행할 수 있고 또는 순차적으로 실행할 수도 있으며 또는 상이한 순서로 실행할 수도 있고, 본 개시의 기술 방안이 원하는 결과를 구현할 수만 있다면, 본 명세서에서는 이에 대하여 한정하지 않는다.
상술한 구체적인 실시 방식은, 본 개시의 보호 범위에 대한 제한을 구성하지 않는다. 본 기술 분야의 통상적인 기술을 가진 자들이 알아야 할 것은, 설계 요구 및 기타 요소에 의하여, 각종 수정, 조합, 서브 조합 및 대체를 진행할 수 있다. 임의의 본 개시의 정신 및 원칙내에서 진행한 수정, 등가 치환 및 개진 등은, 전부 본 개시의 보호 범위내에 포함된다.

Claims (19)

  1. 태스크 연산량 확정 방법에 있어서,
    상기 방법은:
    타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하는 단계;
    상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하는 단계로서, 상기 태스크 운행 기간은 상기 타겟 태스크가 운행을 시작해서부터 상기 타겟 태스크가 운행을 종료할 때까지의 기간인 것인, 획득하는 단계; 및
    상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하는 단계;
    를 포함하는 것을 특징으로 하는 태스크 연산량 확정 방법.
  2. 제1항에 있어서,
    상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하는 단계는:
    상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스를 획득하는 단계;
    상기 타겟 태스크가 점유한 CPU 타임 슬라이스를 획득하는 단계; 및
    상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 및 상기 타겟 태스크가 점유한 CPU 타임 슬라이스에 따라, 상기 타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 확정하는 단계;
    를 포함하는 것을 특징으로 하는 태스크 연산량 확정 방법.
  3. 제1항에 있어서,
    상기 타겟 태스크의 연산량은 이미지 검측 알고리즘의 연산량, 음성 인식 알고리즘의 연산량 또는 계획 및 제어 알고리즘의 연산량을 포함하는 것을 특징으로 하는 태스크 연산량 확정 방법.
  4. 제3항에 있어서,
    상기 타겟 태스크의 연산량은 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량이고;
    상기 타겟 CPU 코어의 DMIPS 및 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하는 단계는:
    상기 이미지 검측 알고리즘이 상기 태스크 운행 기간내에 처리한 이미지 프레임수를 획득하는 단계;
    상기 타겟 CPU 코어의 DMIPS, 상기 CPU 타임 슬라이스 점유율, 상기 태스크 운행 기간 및 상기 이미지 프레임수에 따라, 상기 이미지 검측 알고리즘의 싱글 프레임 연산량을 확정하는 단계; 및
    상기 싱글 프레임 연산량 및 상기 타겟 프레임율에 따라, 상기 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 확정하는 단계;
    를 포함하는 것을 특징으로 하는 태스크 연산량 확정 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 방법은:
    상기 타겟 태스크가 상기 타겟 CPU 코어에서 운행하는 과정중에서, 상기 타겟 CPU 코어의 운행 주파수가 기설정 주파수에 있도록 제어하는 단계를 더 포함하는 것을 특징으로 하는 태스크 연산량 확정 방법.
  6. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하는 단계는:
    상기 타겟 태스크가 기설정 우선급으로 상기 타겟 CPU 코어중에서 운행하도록 제어하는 단계를 포함하는 것을 특징으로 하는 태스크 연산량 확정 방법.
  7. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 타겟 태스크가 타겟 CPU 코어중에서 운행하도록 제어하기 전에, 상기 방법은:
    클라우드 서버에서 송신한 상기 타겟 태스크를 수신하고, 상기 타겟 태스크를 사용자가 미리 상기 클라우드 서버로 업로드하는 단계를 더 포함하는 것을 특징으로 하는 태스크 연산량 확정 방법.
  8. 제7항에 있어서,
    상기 타겟 태스크의 연산량을 연산한 후, 상기 방법은:
    상기 클라우드 서버로 상기 타겟 태스크의 연산량을 리포팅하는 단계를 더 포함하는 것을 특징으로 하는 태스크 연산량 확정 방법.
  9. 태스크 연산량 확정 장치에 있어서,
    상기 장치는:
    타겟 태스크가 타겟 CPU 코어에서 운행하도록 제어하기 위한 제1 제어 모듈;
    상기 타겟 태스크가 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 획득하기 위한 획득 모듈로서, 상기 태스크 운행 기간은 상기 타겟 태스크가 운행을 시작해서부터 상기 타겟 태스크가 운행을 종료할 때까지의 기간인 것인, 획득 모듈; 및
    상기 타겟 CPU 코어의 DMIPS 및 상기 CPU 타임 슬라이스 점유율에 따라, 상기 타겟 태스크의 연산량을 확정하기 위한 확정 모듈;
    을 포함하는 것을 특징으로 하는 태스크 연산량 확정 장치.
  10. 제9항에 있어서,
    상기 획득 모듈은:
    상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스를 획득하기 위한 제1 획득 서브 모듈;
    상기 타겟 태스크가 점유한 CPU 타임 슬라이스를 획득하기 위한 제2 획득 서브 모듈; 및
    상기 타겟 CPU 코어가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 및 상기 타겟 태스크가 점유한 CPU 타임 슬라이스에 따라, 상기 타겟 태스크가 상기 태스크 운행 기간에서의 CPU 타임 슬라이스 점유율을 확정하기 위한 제1 확정 서브 모듈;
    을 포함하는 것을 특징으로 하는 태스크 연산량 확정 장치.
  11. 제9항에 있어서,
    상기 타겟 태스크의 연산량은 이미지 검측 알고리즘의 연산량, 음성 인식 알고리즘의 연산량 또는 계획 및 제어 알고리즘의 연산량을 포함하는 것을 특징으로 하는 태스크 연산량 확정 장치.
  12. 제11항에 있어서,
    상기 타겟 태스크의 연산량은 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량이고;
    상기 확정 모듈은:
    상기 이미지 검측 알고리즘이 상기 태스크 운행 기간내에 처리한 이미지 프레임수를 획득하기 위한 제2 획득 서브 모듈;
    상기 타겟 CPU 코어의 DMIPS, 상기 CPU 타임 슬라이스 점유율, 상기 태스크 운행 기간 및 상기 이미지 프레임수에 따라, 상기 이미지 검측 알고리즘의 싱글 프레임 연산량을 확정하기 위한 제2 확정 서브 모듈; 및
    상기 싱글 프레임 연산량 및 상기 타겟 프레임율에 따라, 상기 이미지 검측 알고리즘이 타겟 프레임율에서의 연산량을 확정하기 위한 제3 확정 서브 모듈;
    을 포함하는 것을 특징으로 하는 태스크 연산량 확정 장치.
  13. 제9항 내지 제12항 중 어느 한 항에 있어서,
    상기 장치는:
    상기 타겟 태스크가 상기 타겟 CPU 코어에서 운행하는 과정에서, 상기 타겟 CPU 코어의 운행 주파수가 기설정 주파수에 있도록 제어하기 위한 제2 제어 모듈을 더 포함하는 것을 특징으로 하는 태스크 연산량 확정 장치.
  14. 제9항 내지 제12항 중 어느 한 항에 있어서,
    상기 제1 제어 모듈을 구체적으로:
    상기 타겟 태스크가 기설정 우선급으로 상기 타겟 CPU 코어중에서 운행하도록 제어하기 위한 것인 태스크 연산량 확정 장치.
  15. 제9항 내지 제12항 중 어느 한 항에 있어서,
    상기 장치는:
    클라우드 서버에서 송신한 상기 타겟 태스크를 수신하기 위한 수신 모듈, 상기 타겟 태스크를 사용자가 미리 상기 클라우드 서버로 업로드한 것인, 수신 모듈을 더 포함하는 것을 특징으로 하는 태스크 연산량 확정 장치.
  16. 제15항에 있어서,
    상기 장치는:
    상기 클라우드 서버로 상기 타겟 태스크의 연산량을 리포팅하기 위한 리포팅 모듈을 포함하는 것을 특징으로 하는 태스크 연산량 확정 장치.
  17. 전자 기기에 있어서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 통신 연결된 메모리; 를 포함하며, 그 중,
    상기 메모리에는 상기 적어도 하나의 프로세서에 의하여 실행 가능한 명령이 저장되어 있고, 상기 명령은 상기 적어도 하나의 프로세서에 의하여 실행되여, 상기 적어도 하나의 프로세서로 하여금 청구항 제1항 내지 제8항 중 어느 한 항에 따른 상기 방법을 실행하도록 하는 것인,
    전자 기기.
  18. 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독 가능 저장 매체에 있어서,
    상기 컴퓨터 명령은 상기 컴퓨터로 하여금 청구항 제1항 내지 제8항 중 어느 한 항에 따른 상기 방법을 실행하기 위한 것인,
    것을 특징으로 하는 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독 가능 저장 매체.
  19. 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램은 적어도 하나의 프로세서에 의해 실행될 경우, 청구항 제1항 내지 제8항 중 어느 한 항에 따른 상기 방법을 구현하는 것인,
    컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램.
KR1020210034378A 2020-03-17 2021-03-17 태스크 연산량 확정 방법, 장치, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램 KR102542247B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010185070.4 2020-03-17
CN202010185070.4A CN111427758B (zh) 2020-03-17 2020-03-17 任务计算量确定方法、装置和电子设备

Publications (2)

Publication Number Publication Date
KR20210038455A true KR20210038455A (ko) 2021-04-07
KR102542247B1 KR102542247B1 (ko) 2023-06-12

Family

ID=71549540

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210034378A KR102542247B1 (ko) 2020-03-17 2021-03-17 태스크 연산량 확정 방법, 장치, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램

Country Status (3)

Country Link
JP (1) JP7223048B2 (ko)
KR (1) KR102542247B1 (ko)
CN (1) CN111427758B (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913855A (zh) * 2020-09-21 2020-11-10 北京百度网讯科技有限公司 确定目标任务计算量的方法和装置
CN112506653A (zh) * 2020-12-03 2021-03-16 浙江大华技术股份有限公司 一种抽帧帧率调节方法及装置
CN113419917B (zh) * 2021-06-23 2024-06-11 蔚然(南京)动力科技有限公司 一种嵌入式操作系统任务和中断的cpu负载率计算方法
CN113590282A (zh) * 2021-07-19 2021-11-02 海宁奕斯伟集成电路设计有限公司 算力调度方法、系统、电子设备及计算机可读存储介质
CN114048857B (zh) * 2021-10-22 2024-04-09 天工量信(苏州)科技发展有限公司 算力分配方法、装置及算力服务器
CN117453486A (zh) * 2023-11-13 2024-01-26 摩尔线程智能科技(北京)有限责任公司 面向进程的gpu利用率的确定方法、装置、设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5797115A (en) * 1995-08-24 1998-08-18 Fuller; Billy Measuring direct and indirect usage of a central processing unit
KR20120067825A (ko) * 2010-12-16 2012-06-26 한국전자통신연구원 임베디드 리눅스를 위한 적응형 프로세스 스케쥴링 방법
JP2013250905A (ja) * 2012-06-04 2013-12-12 Hitachi Ltd 仮想計算機システム及び仮想計算機システムの負荷制御方法
KR20150062198A (ko) * 2013-11-28 2015-06-08 한국과학기술정보연구원 클라우드 스토리지 기반 작업 수행 시스템 및 방법
KR20160004161A (ko) * 2014-07-02 2016-01-12 삼성전자주식회사 전자 장치의 태스크 스케줄링 방법 및 이를 사용하는 전자 장치
CN110362411A (zh) * 2019-07-25 2019-10-22 哈尔滨工业大学 一种基于Xen系统的CPU资源调度方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006338264A (ja) * 2005-06-01 2006-12-14 Toyota Infotechnology Center Co Ltd タスク割当装置およびタスク割当方法
CN101650685A (zh) * 2009-08-28 2010-02-17 曙光信息产业(北京)有限公司 设备能效的确定方法和装置
US9047067B2 (en) * 2011-04-22 2015-06-02 Qualcomm Incorporated Sensorless detection and management of thermal loading in a multi-processor wireless device
CN106708709A (zh) * 2015-07-30 2017-05-24 中兴通讯股份有限公司 Cpu占用率检测方法及装置
CN107231264A (zh) * 2017-07-25 2017-10-03 北京百度网讯科技有限公司 用于管理云服务器的容量的方法和装置
CN107491378A (zh) * 2017-08-31 2017-12-19 杭州迪普科技股份有限公司 一种cpu占用率的确定方法及装置
CN109002377A (zh) * 2018-07-26 2018-12-14 郑州云海信息技术有限公司 一种处理器检测方法、处理器检测装置以及计算机设备
CN110597639B (zh) * 2019-09-23 2021-07-30 腾讯科技(深圳)有限公司 Cpu分配控制方法、装置、服务器及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5797115A (en) * 1995-08-24 1998-08-18 Fuller; Billy Measuring direct and indirect usage of a central processing unit
KR20120067825A (ko) * 2010-12-16 2012-06-26 한국전자통신연구원 임베디드 리눅스를 위한 적응형 프로세스 스케쥴링 방법
JP2013250905A (ja) * 2012-06-04 2013-12-12 Hitachi Ltd 仮想計算機システム及び仮想計算機システムの負荷制御方法
KR20150062198A (ko) * 2013-11-28 2015-06-08 한국과학기술정보연구원 클라우드 스토리지 기반 작업 수행 시스템 및 방법
KR20160004161A (ko) * 2014-07-02 2016-01-12 삼성전자주식회사 전자 장치의 태스크 스케줄링 방법 및 이를 사용하는 전자 장치
CN110362411A (zh) * 2019-07-25 2019-10-22 哈尔滨工业大学 一种基于Xen系统的CPU资源调度方法

Also Published As

Publication number Publication date
JP2021099860A (ja) 2021-07-01
KR102542247B1 (ko) 2023-06-12
CN111427758A (zh) 2020-07-17
CN111427758B (zh) 2024-07-19
JP7223048B2 (ja) 2023-02-15

Similar Documents

Publication Publication Date Title
KR102542247B1 (ko) 태스크 연산량 확정 방법, 장치, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 프로그램
CN111143686B (zh) 资源推荐方法及装置
KR102528748B1 (ko) 지식 그래프를 구축하는 방법, 장치, 기기 및 저장 매체
JP2021197190A (ja) 光学文字識別方法、装置、電子デバイス及び記憶媒体
US20210245745A1 (en) Cruise control method, electronic device, vehicle and storage medium
EP3446260A1 (en) Memory-efficient backpropagation through time
US11740941B2 (en) Method of accelerating execution of machine learning based application tasks in a computing device
TWI594116B (zh) 管理運算系統的操作之技術
KR20210090122A (ko) 분산형 모델 트레이닝 장치, 방법 및 컴퓨터 프로그램
US20170098171A1 (en) Asynchronous stochastic gradient descent
US12072780B2 (en) Method and apparatus for testing AI chip computing performance, and non-transitory computer-readable storage medium
CN108898229B (zh) 用于构建机器学习建模过程的方法及系统
CN111966361B (zh) 用于确定待部署模型的方法、装置、设备及其存储介质
US20210232986A1 (en) Parking lot free parking space predicting method, apparatus, electronic device and storage medium
US11967150B2 (en) Parallel video processing systems
CN113419941A (zh) 评估方法及装置、电子设备和计算机可读存储介质
CN112965903A (zh) 测试方法、装置、电子设备及计算机可读存储介质
CN112784985A (zh) 神经网络模型的训练方法及装置、图像识别方法及装置
CN111178137B (zh) 检测真实人脸方法、装置、电子设备以及计算机可读存储介质
CN108897673B (zh) 系统容量评估方法与装置
CN116029346A (zh) 用于深度学习模型推理的方法、装置、设备和介质
JP7265618B2 (ja) 深層学習トレーニングタスクに向けたプロセッサメモリを最適化するための方法及び装置
CN114998649A (zh) 图像分类模型的训练方法、图像分类方法及装置
KR20220002064A (ko) 이미지를 처리하는 방법, 장치, 기기, 저장 매체 및 프로그램
JP2021193619A (ja) 対話生成方法、装置、電子機器及び記憶媒体

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant