KR20210130796A - 데이터 처리 방법과 장치, 컴퓨터 디바이스, 기록 매체 및 컴퓨터 프로그램 - Google Patents

데이터 처리 방법과 장치, 컴퓨터 디바이스, 기록 매체 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20210130796A
KR20210130796A KR1020217031141A KR20217031141A KR20210130796A KR 20210130796 A KR20210130796 A KR 20210130796A KR 1020217031141 A KR1020217031141 A KR 1020217031141A KR 20217031141 A KR20217031141 A KR 20217031141A KR 20210130796 A KR20210130796 A KR 20210130796A
Authority
KR
South Korea
Prior art keywords
prefetch
sample data
target
step size
prefetch quantity
Prior art date
Application number
KR1020217031141A
Other languages
English (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 상하이 센스타임 인텔리전트 테크놀로지 컴퍼니 리미티드
Publication of KR20210130796A publication Critical patent/KR20210130796A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06K9/62
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명은 심층 학습 모델의 훈련에 이용할 수 있는, 데이터 처리 방법과 장치, 컴퓨터 디바이스, 기록 매체 및 컴퓨터 프로그램을 제공하는바, 당해 방법은, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것; 및 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 상기 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 상기 새로운 샘플 데이터를 상기 프리페치 샘플 데이터 대기열에 저장하는 것을 포함한다.

Description

데이터 처리 방법과 장치, 컴퓨터 디바이스, 기록 매체 및 컴퓨터 프로그램
<관련 출원의 상호인용>
본 발명은 출원 번호가 201911403669.4이고, 출원일이 2019년 12월 30일인 중국 특허 출원의 우선권을 주장하는바, 당해 중국 특허 출원의 모든 내용을 인용하여 본원에 통합시킨다.
본 발명은 기계 학습의 기술 분야에 관한 것인바, 구체적으로는 데이터 처리 방법과 장치, 컴퓨터 디바이스, 기록 매체 및 컴퓨터 프로그램에 관한 것이다.
심층 학습 모델은 대량의 샘플 데이터에 기반한 복수회의 반복 훈련을 필요로 한다. 기계 학습 모델의 훈련 과정에서의 수렴 속도를 향상시키기 위하여, 일반적으로 다중 프로세스 병렬 훈련 방법을 채용하여 실현하고 있다. 다중 프로세스 병렬 훈련 방법을 채용하여 심층 학습 모델에 대해 훈련을 실행할 때에, 이번의 훈련 계산 태스크를 실행하는 동시에, 각각의 병렬 프로세스에서 다음 번의 훈련에 필요한 훈련 데이터를 사전에 판독하게 된다. 각각의 병렬 프로세스는 이번의 훈련을 실행한 후에, 모든 프로세스 사이에서 통신 및 데이터 동기화를 실행할 필요가 있으며, 어느 한 프로세스에서 다음 번의 훈련에 이용하는 훈련 데이터를 판독하는 속도가 너무 느리면, 훈련 프로세스 전체가 지연되어, 훈련 효율의 저하를 초래한다.
본 발명의 실시예는 데이터 처리 방법 및 장치를 적어도 제공한다.
제1 양태에 따르면, 본 발명의 실시예는 심층 학습 모델의 하나 또는 복수의 프로세스를 포함하는 훈련에 적용되는 데이터 처리 방법을 제공하는바, 당해 방법은, 상기 하나 또는 복수의 프로세스 중의 하나의 목표 프로세스에 대해, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것; 및 상기 목표 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 상기 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 상기 새로운 샘플 데이터를 상기 프리페치 샘플 데이터 대기열에 저장하는 것을 포함한다.
이렇게 함으로써, 메인 프로세스는 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻고, 데이터 대기열에 현재 포함되어 있는 샘플 데이터 량이 목표 프리페치 수량에 도달하지 않았을 때에, 샘플 데이터 풀로부터 새로운 샘플 데이터를 판독하기 때문에, 메인 프로세스는 일 회의 반복 훈련을 실행한 후에, 다음 일 회의 반복 훈련에 필요한 샘플 데이터의 판독이 이미 완료된다. 실제의 대부분 경우, 메인 프로세스가 데이터를 판독하는데 걸리는 시간은 하나의 반복 훈련을 실행하는데 걸리는 시간보다 짧은 경우가 많기 때문에, 데이터 대기열에 충분한 수량의 샘플 데이터가 항상 보존되어 후속의 몇몇의 반복 훈련의 사용을 충족시키도록 확보할 수 있고, 메인 프로세스가 특정 샘플 데이터가 판독하는데 걸리는 시간이 지나치게 길 경우에도, 샘플 수량이 시간 내에 판독되지 않음으로 하여 반복 훈련에 지연이 발생되는 것을 피면할 수 있으며, 훈련 효율을 향상시켰다.
가능한 일 실시 방식에 있어서, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것을 포함한다.
이렇게 함으로써, 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량을 동적으로 갱신할 수 있고, 프리페치 샘플 데이터 양을 유연하게 할당할 수 있으며, 훈련의 요건을 충족시킬 수 있다.
가능한 일 실시 방식에 있어서, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스, 메모리 사용 상한 한계 값 및 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 상기 목표 프리페치 수량을 얻는 것을 포함한다.
이렇게 함으로써, 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스, 메모리 사용 상한 한계 값 및 상기 심층 학습 모델을 훈련할 때의 데이터 스루풋에 기반하여, 프리페치 수량을 동적으로 갱신함으로써, 데이터 스루풋이 증가될 때에, 프리페치 샘플 데이터 대기열 중의 데이터 량이 샘플 데이터의 소비를 따라 잡을 수 있도록 하며, 데이터 스루풋이 감소될 때에, 프리페치 샘플 데이터 대기열에 의해 점용되는 메모리의 양을 가능한 감소하여, 나머지 메모리를 기타 작업에 사용할 수 있으므로, 조정이 더 유연해진다.
가능한 일 실시 방식에 있어서, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않았을 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것, 및/또는, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달했을 경우, 상기 프리페치 수량을 제2 조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는 것을 포함한다.
이렇게 함으로써, 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우에는, 가능한 프리페치 샘플 데이터를 증가하고, 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달했을 경우에는, 샘플 데이터의 프리페치 수량을 감소함으로써, 프리페치 샘플 데이터 대기열의 길이를 유연하게 조정할 수 있다.
가능한 일 실시 방식에 있어서, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것은, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋이 소정의 데이터 스루풋 조건을 충족시킬 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것을 포함한다.
가능한 일 실시 방식에 있어서, 상기 방법은, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 데이터 스루풋이 상기 소정의 데이터 스루풋 조건을 충족시키지 않을 경우, 상기 프리페치 수량을 제3조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는 것을 더 포함한다.
가능한 일 실시 방식에 있어서, 상기 소정의 데이터 스루풋 조건은, 상기 데이터 스루풋의 현재 수치가 이력 수치보다 큰 것; 및 상기 데이터 스루풋의 현재 수치가 데이터 스루풋 한계 값보다 큰 것 중의 적어도 하나를 포함하고, 여기서, 상기 이력 수치는 현재의 반복 훈련 앞의 복수의 이력 반복 훈련 때의 상기 데이터 스루풋의 평균치 또는 현재의 반복 훈련 앞의 일 회의 반복 훈련 때의 상기 데이터 스루풋의 수치다.
가능한 일 실시 방식에 있어서, 상기 방법은, 상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻는 것을 더 포함하되, 여기서, 상기 목표 조절 스텝 사이즈는 상기 프리페치 수량의 다음 일 회의 갱신 처리에 사용된다.
가능한 일 실시 방식에 있어서, 상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻는 것은, 상기 제1 갱신 처리 중에 상기 프리페치 수량을 증가할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 증가하는 것, 및/또는, 상기 제1 갱신 처리 중에 상기 프리페치 수량을 감소할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 감소하는 것을 포함한다.
이렇게 함으로써, 프리페치 수량을 증가할 필요가 있을 때에, 프리페치 수량을 더 빠르게 증가함으로써, 프리페치 샘플 데이터 대기열에 보존된 샘플 데이터가 더 많은 수량으로 빠르게 달성하도록 보증하고, 후속의 훈련 반복 사이클의 사용 요건을 충족시킬 수 있으며, 프리페치 수량이 지나치게 적어서 모델 훈련 과정이 지연되는 것을 피면하는 동시에, 프리페치 수량을 감소할 필요가 있을 때에, 프리페치 수량을 더 천천히 감소하고, 프리페치 샘플 데이터 대기열의 길이의 변화가 더 원활해지도록 보증할 수 있으며, 프리페치 샘플 데이터 수량 급격한 감소에 의한 훈련 과정의 쇼크를 피면할 수 있다.
제2 의 양태에 따르면, 본 발명의 실시예는 심층 학습 모델의 하나 또는 복수의 프로세스를 포함하는 훈련에 적용되는 데이터 처리 장치를 더 제공하는바, 당해 장치는 상기 하나 또는 복수의 프로세스 중의 하나의 목표 프로세스에 대해, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻기 위한 제1 갱신 모듈; 및 상기 목표 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 상기 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 상기 새로운 샘플 데이터를 상기 프리페치 샘플 데이터 대기열에 보존하기 위한 판독 모듈을 구비한다.
제3의 양태에 따르면, 본 발명의 실시예는 컴퓨터 디바이스를 더 제공하는바, 당해 컴퓨터 디바이스는 프로세서, 기록 매체 및 버스를 구비하며, 상기 기록 매체에는 상기 프로세서에 의해 실행 가능한 기계 판독 가능 명령이 기록되어 있으며, 컴퓨터 디바이스가 운행될 때에, 상기 프로세서와 상기 기록 매체 사이는 버스를 통해 통신하며, 상기 기계 판독 가능 명령이 상기 프로세서에 의해 실행되어, 상술한 제1 양태 또는 제1 양태의 임의의 가능한 일 실시 방식의 단계가 실행된다.
제4의 양태에 따르면, 본 발명의 실시예는 컴퓨터 판독 가능 기록 매체를 더 제공하는바, 당해 컴퓨터 판독 가능 기록 매체에는 컴퓨터 프로그램이 기록되어 있으며, 당해 컴퓨터 프로그램이 프로세서에 의해 운행될 때에, 상술한 제1 양태 또는 제1 양태의 임의의 가능한 일 실시 방식의 단계가 실행된다.
이하, 본 발명의 상기의 목적, 특징 및 이점을 더 명확하고 이해하기 쉽게 하기 위하여, 바람직한 실시예를 들어 도면을 참조하면서 상세하게 설명한다.
이하, 본 발명의 실시예의 기술적 해결책을 더 명확히 설명하기 위하여, 실시예에 필요한 도면을 간단히 소개한다. 여기서의 도면은 명세서에 병합되어 본 명세서의 일부를 구성하며, 이러한 도면은 본 발명에 일치한 실시예를 제시하고, 또한 명세서와 같이 본 발명의 기술적 해결책을 설명한다. 이하의 도면은 본 발명의 몇몇의 실시예를 제시하는 것일 뿐, 범위를 한정하는 것으로 간주되어서는 안됨을 이해해야 한다. 당업자는 창조적인 작업 없이 이러한 도면에 기반하여 기타 관련된 도면을 얻을 수 있다.
도 1은 본 발명의 실시예에 의해 제공되는 데이터 처리 방법을 나타내는 플로우 챠트이다.
도 2는 본 발명의 실시예에 의해 제공되는 데이터 처리 장치를 나타내는 모식도이다.
도 3은 본 발명의 실시예에 의해 제공되는 컴퓨터 디바이스를 나타내는 모식도이다.
이하, 본 발명의 실시예의 목적, 기술적 해결책 및 이점을 더 명확히 하기 위하여, 본 발명의 실시예의 도면을 참조하여, 본 발명의 실시예의 기술적 해결책을 명확하고 완전히 설명한다. 물론, 설명하는 실시예는 전부의 실시예가 아닌바, 본 발명의 일부 실시예에 지나지 않는다. 일반적으로, 여기의 도면에 기재 및 표시되는 본 발명의 실시예의 컴포넌트는 다양한 기타 구성으로 배치 및 설계될 수 있다. 따라서, 이하의 도면에 제공되는 본 발명의 실시예의 상세한 설명은 청구된 본 개시의 범위를 한정하는 것을 의도하지 않으며, 단지 본 개시의 선택된 실시 형태를 나타낸다. 본 발명의 실시예에 기반하여 창조적인 작업 없이 당업자에 의해 얻을 수 있는 기타의 모든 실시 형태는 본 개시의 보호 범위에 포함되는 것으로 간주한다.
조사한 결과, 다중 프로세스 병렬 훈련 방법을 채용하여 심층 학습 모델을 훈련할 때에, 이번의 훈련 계산을 실행하는 동시에, 각각의 프로세스는 모두 다음 번의 훈련에 필요한 훈련 데이터를 사전에 판독하게 된다. 각각의 병렬 프로세스는 이번의 훈련을 실행한 후에, 다를 프로세스와 통신 및 데이터 동기화를 실행하며, 모든 프로세스의 통신 및 데이터 동기화가 완료된 후에, 다음 번의 훈련 태스크를 시작할 필요가 있다. 여기서 어느 한 프로세스의 훈련 태스크에 시간 지연이 발생하게 되면, 예를 들면 다음 번의 훈련에 사용하는 훈련 데이터를 사전에 판독할 때에 판독 시간이 이번의 훈련 태스크의 실행 시간을 초과하게 되면, 모든 프로세스의 훈련 태스크에 모두 시간적 지연이 발생되게 되어 훈련 효율의 저하를 초래한다.
상술한 조사에 감안하여, 본 발명은 심층 학습 모델 훈련에 적용되는 데이터 처리 방법 및 장치를 제공한다. 당해 데이터 처리 방법은, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻고, 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 상기 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 상기 새로운 샘플 데이터를 상기 프리페치 샘플 데이터 대기열에 보존함으로써, 메인 프로세스가 일 회의 반복 훈련을 실행한 후에, 다음 일 회의 반복 훈련에 필요한 샘플 데이터의 판독이 이미 완료되도록 할 수 있다. 메인 프로세스는 프리페치 수량을 동적으로 갱신하고, 목표 프리페치 수량을 얻으며, 데이터 대기열에 현재 포함되어 있는 샘플 데이터 량이 목표 프리페치 수량에 도달하지 않았을 때에, 샘플 데이터 풀로부터 새로운 샘플 데이터를 판독한다. 대부분의 경우, 메인 프로세스가 새로운 샘플 데이터를 판독하는데 걸리는 시간이 하나의 반복 훈련을 실행하는데도 걸리는 시간보다 짧은 경우가 많기 때문에, 데이터 대기열에 충분한 수량의 샘플 데이터가 항상 보존되어 후속의 몇몇의 반복 훈련의 사용을 충족시키도록 확보할 수 있으며, 메인 프로세스가 특정 샘플 데이터가 판독하는데 걸리는 시간이 지나치게 길 경우에도, 샘플 수량이 충분하지 않음으로 하여 반복 훈련에 지연이 발생하지 않으며, 훈련 효율을 향상시켰다.
종래의 해결책에 존재하는 결점은 발명자의 실천과 조심스러운 연구 끝에 얻은 결과이며, 따라서 상기의 문제의 발견 과정 및 본 발명에서 제안된 해결책은 모두 본 개시 과정에서의 발명자의 공헌이다.
이하, 본 발명의 도면을 참조하여, 본 발명의 기술적 해결책을 명확하고 완전히 설명한다. 물론, 설명하는 실시예는 전부의 실시예가 아닌바, 본 발명의 일부 실시예에 지나치지 않는다. 일반적으로 여기서의 도면에 기재 및 표시하는 본 발명의 실시예의 컴포넌트는 다양한 기타 구성으로 배치 및 설계될 수 있다. 따라서, 이하의 도면에서 제공되는 본 발명의 실시예의 상세한 설명은 청구된 본 개시의 범위를 한정하려는 것을 의도하는 것이 아니며, 단지 본 개시의 선택된 실시 형태를 나타낸다. 본 발명의 실시예에 기반하여, 창조적인 작업 없이 당업자에 의해 얻을 수 있는 기타 모든 실시 형태는 본 개시의 보호 범위에 포함되는 것으로 간주한다.
이하의 도면에서는 유사의 부호와 문자가 유사의 항목을 나타내고 있음에 주의해야 한다. 따라서 하나의 도면에서 항목을 정의하면, 후속의 도면에서 다시 정의 및 해석할 필요가 없다.
본 실시예에 대한 이해를 용이하게 하기 위하여, 먼저 본 발명의 실시예에 의해 개시되는 데이터 처리 방법을 상세하게 설명한다. 본 발명의 실시예에 의해 제공되는 데이터 처리 방법은 심층 학습 모델의 훈련에 적용된다. 그 실행 주체는 일반적으로 심층 학습 모델을 훈련하는 메인 프로세스 또는 서브 프로세스다. 가능한 일부의 실현 형태에 있어서, 당해 데이터 처리 방법은 프로세서에 의해 메모리에 보존되어 있는 컴퓨터 판독 가능 명령을 호출하는 방식에 의해 실현될 수 있다.
이하, 실행 주체가 적어도 하나의 메인 프로세스 중의 임의의 메인 프로세스인 예를 들어 본 발명의 실시예에 의해 제공되는 데이터 처리 방법을 설명한다.
도 1은 본 발명의 실시예에 의해 제공되는 데이터 처리 방법의 플로우 챠트이며, 당해 방법은 단계 S101∼S102을 포함하는바, 여기서,
S101에 있어서, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻고,
S102에 있어서, 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 새로운 샘플 데이터를 프리페치 샘플 데이터 대기열에 보존한다.
이하, 상술한 S101∼S102을 각각 상세하게 설명한다.
I: 상술한 S101에 있어서, 하나의 메인 프로세스가 있을 경우, 하나의 메인 프로세스는 심층 학습 모델을 훈련하는 동시에, 당해 메인 프로세스는 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 수 있다.
복수의 메인 프로세스가 있을 경우, 복수의 메인 프로세스는 심층 학습 모델에 대해 병렬 훈련을 실행하며, 각각의 메인 프로세스는 각각 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 수 있다. 여기서, 서로 다를 메인 프로세스에 대응하는 프리페치 수량이 서로 다를 수 있으며, 서로 다를 메인 프로세스에 대응하는 목표 프리페치 수량도 서로 다를 수 있다.
각각의 메인 프로세스는 하나의 프리페치 샘플 데이터 대기열에 대응하며, 임의의 메인 프로세스에 대응하는 프리페치 샘플 데이터 대기열에는, 복수의 샘플 데이터가 보존되어 있다. 각각의 메인 프로세스는 대응하는 프리페치 샘플 데이터 대기열에 보존되어 있는 샘플 데이터에 기반하여 심층 학습 모델을 훈련한다.
당해 프리페치 샘플 데이터 대기열은 예를 들면 선입선출 대기열이다. 메인 프로세스는 하나의 새로운 반복 훈련을 시작할 때에, 먼저 당해 메인 프로세스에 대응하는 프리페치 샘플 데이터 대기열로부터 일 그룹의 샘플 데이터를 판독한다. 당해 그룹의 샘플 데이터는 판독된 후에 프리페치 샘플 데이터 대기열로부터 삭제됨으로써, 새로운 샘플 데이터를 위하여 보존 위치를 확보한다.
여기서, 하나의 반복 훈련에서, 메인 프로세스는 일 그룹의 샘플 데이터에 기반하여 심층 학습 모델을 훈련하게 되고, 일 그룹의 샘플 데이터에는 적어도 하나의 샘플 데이터가 포함되는 것에 주의해야 한다. 본 발명의 실시예에 있어서, 프리페치 수량이란 샘플 데이터 그룹의 수량일 수 있다.
사전에 결정된 프리페치 수량 갱신 조건에 도달하지 않은 경우, 메인 프로세스는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 현재의 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독한다.
사전에 결정된 프리페치 수량 갱신 조건에 도달했을 경우, 메인 프로세스는 샘플 데이터의 현재의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻고, 메인 프로세스는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독한다. 여기서, 샘플 데이터의 프리페치 수량과 목표 프리페치 수량은 같을 수도 있고 다를 수도 있다.
구체적으로, 프리페치 수량 갱신 조건은 예를 들면 이하의 a1∼a3 중의 하나 또는 복수를 포함한다.
a1은 소정의 갱신 사이클에 도달한 것이다
여기서, 갱신 사이클은 프리페치 수량을 갱신하는 사이클이다.
당해 갱신 사이클은 예를 들면 시간 사이클이며, 예를 들면 갱신 사이클이 한 시간일 경우, 한 시간마다 일 회의 프리페치 수량에 대한 제1 갱신 처리를 트리거할 수 있다.
당해 갱신 사이클은 예를 들면 소정의 수량의 반복 훈련이며, 예를 들면 메인 프로세스는 심층 학습 모델에 대해 5회의 반복 훈련을 실행할 때마다, 일 회의 프리페치 수량에 대한 제1 갱신 처리를 트리거할 수 있다. 여기서, 서로 다른 회의 반복 훈련에 걸리는 시간이 서로 다를 가능성이 있기 때문에, 서로 다른 갱신 사이클의 지속 시간도 서로 다르게 된다.
a2은 샘플 데이터에 기반하여 심층 학습 모델에 대해 훈련할 때의 데이터 스루풋이 제1 한계 값보다 큰 것이다.
여기서, 데이터 스루풋은 메인 프로세스가 심층 학습 모델에 대해 훈련을 실행할 때의 샘플 데이터 처리 속도를 나타내기 위하여 사용된다. 메인 프로세스가 심층 학습 모델에 대해 훈련을 실행할 때의 데이터 스루풋이 제1 한계 값보다 크면, 프리페치 샘플 데이터 대기열에 보존되어 있는 샘플 데이터에 대한 소비 속도가 더 빠른 것으로 간주된다. 여기서, 상대적으로 작은 프리페치 수량을 유지하면, 프리페치 샘플 데이터 대기열에 보존되어 있는 샘플 데이터의 수량이 시간내의 훈련의 소비를 따라 잡지 못할 가능성이 있다. 따라서, 프리페치 샘플 데이터 대기열에 프리페치되는 샘플 데이터의 수량을 증가하고, 샘플 데이터의 프리페치 수량에 대한 제1 갱신 처리를 트리거하는 것을 고려할 수 있다.
a2.1: 여기서, 예를 들면, 이하의 방법을 채용하여 데이터 스루풋을 얻는다.
프리페치 수량 갱신 조건에 도달한 것에 응답하여, 프리페치 수량 갱신 조건에 도달했을 때의 심층 학습 모델에 대한 훈련 진행 상황에 기반하여, 복수의 이력 반복 훈련으로부터 적어도 하나의 목표 반복 훈련을 확정하고, 또한 각각의 목표 반복 훈련에 사용하는 샘플 데이터 그룹에 포함되어 있는 샘플 데이터의 수량 및 각각의 목표 반복 훈련에 걸리는 시간에 기반하여, 샘플 데이터에 기반하여 심층 학습 모델에 대해 훈련을 실행할 때의 데이터 스루풋을 확정한다.
여기서, 목표 반복 훈련은 예를 들면 프리페치 수량 갱신 조건에 도달한 타이밍에 가장 가까운 적어도 하나의 반복 훈련이다.
예를 들면, 어떤 메인 프로세스는 이미 심층 학습 모델에 대해 5회의 반복 훈련을 실행한 동시에, 프리페치 수량 갱신 조건에 도달했을 때에, 심층 학습 모델에 대해 6 번째 반복 훈련을 실행하고 있다. 여기서, 하나의 목표 반복 훈련이 있을 경우, 5 번째의 반복 훈련을 목표 반복 훈련으로 확정할 수 있다. 당해 5 번째 반복 훈련에 걸리는 시간이 15분이면, 사용하는 샘플 데이터의 수량은 64개이며, 데이터 스루풋은 예를 들면 64÷15이다.
세 개의 목표 반복 훈련이 있을 경우, 3 번째, 4 번째 및 5 번째의 반복 훈련을 목표 반복 훈련으로 확정할 수 있다. 3 번째, 4 번째 및 5 번째의 반복 훈련에 각각 걸리는 시간이 12분, 14분,및 15분이며, 각 반복 훈련에 사용하는 샘플 데이터의 수량이 모두 64개이면, 데이터 스루풋은 예를 들면 64Х3÷(12 + 14 + 15)이며, 단위는 개/분이다.
a2.2: 다른 일 실시예에 있어서, 또한 현재 실행하고 있는 반복 훈련을 목표 반복 훈련으로 확정하고, 현재 실행하고 있는 반복 훈련 중의 이미 훈련이 완료한 샘플의 수량 및 거친 지속 시간에 기반하여 데이터 스루풋을 확정할 수 있다.
예를 들면, 어느 한 메인 프로세스가 이미 심층 학습 모델에 대해 5회의 반복 훈련을 실행한 동시에, 프리페치 수량 갱신 조건에 도달했을 때에, 심층 학습 모델에 대해 6번째의 반복 훈련을 실행하고 있다. 6번째의 반복 훈련을 목표 반복 훈련으로 확정할 수 있다. 6번째의 반복 훈련에서, 하나의 샘플 데이터 그룹 중의 64개의 샘플을 사용하여 심층 학습 모델에 대해 훈련을 실행할 필요가 있다. 현재 이미 훈련이 완료한 샘플 데이터의 수량은 30개이며, 현재 훈련 반복이 거친 지속 시간은 4분이면, 데이터 스루풋은 예를 들면 30÷4이다.
a3은 샘플 데이터에 기반하여 심층 학습 모델에 대해 훈련을 실행할 때의 데이터 스루풋이 제2 한계 값 미만인 것이다.
여기서, 제2 한계 값은 제1 한계 값 미만이다.
메인 프로세스가 심층 학습 모델에 대해 실행 훈련 때의 데이터 스루풋이 제2 한계 값 미만이면, 프리페치 샘플 데이터 대기열에 보존되어 있는 샘플 데이터에 대한 소비 속도가 너무 늦는 것으로 간주된다. 여기서, 상대적으로 큰 프리페치 수량을 유지하면, 프리페치 샘플 데이터 대기열에 보존되어 있는 샘플 데이터가 항상 축적되기에, 상대적으로 큰 메모리를 점용할 가능성이 있다. 따라서, 프리페치 샘플 데이터 대기열에 프리페치되는 샘플 데이터의 수량을 감소하고, 샘플 데이터의 프리페치 수량에 대한 제1 갱신 처리를 트리거하는 것을 고려할 수 있다.
여기서, 데이터 스루풋의 확정 방법은 상기의 a2와 유사한바, 반복적으로 설명하지 않는다.
프리페치 수량 갱신 조건을 충족시킨 후에, 예를 들면 이하의 방법을 채용하여 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행할 수 있는바, 즉,
프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는다.
예시적으로, 예를 들면, 프리페치 샘플 데이터 대기열에 의해 점용되어 있는 합계 메모리 스페이스가 메모리 사용 상한 한계 값에 도달하였는지 여부를 검출하고, 검출 결과에 기반하여 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 수 있다.
여기서, 프리페치 샘플 데이터 대기열에 의해 점용되어 있는 합계 메모리 스페이스는, 모든 메인 프로세스에 대응하는 샘플 데이터 대기열에 의해 점용되어 있는 합계 메모리 스페이스를 의미한다.
구체적으로, 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 메모리 사용 상한 한계 값에 도달하지 않은 경우, 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 목표 프리페치 수량을 얻고, 및/또는,
프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 메모리 사용 상한 한계 값을 도달했을 경우, 프리페치 수량을 제2 조절 스텝 사이즈 감소하여, 목표 프리페치 수량을 얻는다.
여기서, 제1 조절 스텝 사이즈는, 샘플 데이터의 프리페치 수량을 증가할 때의 조절 스텝 사이즈를 의미하고, 제2 조절 스텝 사이즈는, 샘플 데이터의 프리페치 수량을 감소할 때의 조절 스텝 사이즈를 의미한다.
여기서, 제1 조절 스텝 사이즈와 제2 조절 스텝 사이즈는 같은 사이즈 또는 다를 사이즈를 가질 수 있다.
예시적으로, 제1 조절 스텝 사이즈는 예를 들면 제2 조절 스텝 사이즈보다 크며, 이러한 경우, 프리페치 수량을 증가할 필요가 있을 때에, 프리페치 수량을 더 빠르게 증가함으로써, 프리페치 샘플 데이터 대기열에 보존된 샘플 데이터가 더 많은 수량으로 빠르게 달성하도록 보증함으로써, 후속의 훈련 반복 사이클의 사용 요건을 충족시킬 수 있으며, 프리페치 수량이 지나치게 적어서 모델 훈련 과정이 지연되는 것을 피면할 수 있다. 또한, 프리페치 수량을 감소할 필요가 있을 때에, 프리페치 수량을 더 천천히 감소함으로써, 프리페치 샘플 데이터 대기열의 길이의 변화가 더 원활해지도록 보증할 수 있고, 프리페치 샘플 데이터 수량 급격한 감소에 의한 훈련 과정의 쇼크를 피면할 수 있다.
또한, 다른 일 실시예에 있어서, 또한, 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스, 메모리 사용 상한 한계 값 및 심층 학습 모델을 훈련하기 위한 데이터 스루풋에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 수 있다.
여기서, 상기의 실시예에 기반하여, 예를 들면 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 메모리 사용 상한 한계 값에 도달하지 않은 경우,
심층 학습 모델을 훈련하기 위한 데이터 스루풋이 소정의 데이터 스루풋 조건을 충족시킬 경우, 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 목표 프리페치 수량을 얻는다.
다른 일 실시예에 있어서, 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 데이터 스루풋 미가 소정의 데이터 스루풋 조건을 충족시킬 경우, 프리페치 수량을 제3조절 스텝 사이즈 감소하여 목표 프리페치 수량을 얻는 것을 더 포함한다.
구체적으로, 제1 조절 스텝 사이즈와 제3조절 스텝 사이즈는 같은 사이즈 또는 다를 사이즈를 가질 수 있다. 마찬가지로, 제2 조절 스텝 사이즈와 제3조절 스텝 사이즈는 같은 사이즈 또는 다를 사이즈를 가질 수 있다.
다른 일 실시예에 있어서, 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 메모리 사용 상한 한계 값에 도달하였으면, 심층 학습 모델을 훈련하기 위한 데이터 스루풋이 소정의 데이터 스루풋 조건을 충족시켰는지에 관계 없이, 프리페치 수량을 제2 조절 스텝 사이즈 감소하여 목표 프리페치 수량을 얻는다.
상기의 소정의 데이터 스루풋 조건은 이하의 b1∼b2 중의 적어도 하나를 포함한다.
b1은 데이터 스루풋의 현재 수치가 이력 수치보다 큰 것이며, 여기서, 이력 수치는 현재의 반복 훈련 앞의 복수의 이력 반복 훈련에 대응하는 데이터 스루풋의 평균치 또는 현재의 반복 훈련 앞의 일 회의 반복 훈련의 데이터 스루풋의 수치다.
구체적인 확정 방법은 예를 들면 상기의 a2.1을 참조하면 되는바, 여기서는 반복적으로 설명하지 않는다.
b2은 데이터 스루풋의 현재 수치가 데이터 스루풋 한계 값보다 큰 것이다.
여기서, 데이터 스루풋의 현재 수치는 예를 들면 상기의 a2.2를 참조하면 되는바, 여기서는 반복적으로 설명하지 않는다.
또한, 본 발명의 실시예에 의해 제공되는 데이터 처리 방법은, 상기의 실시예에 기반하여,
프리페치 수량에 대한 조절 스텝 사이즈 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻는 것을 더 포함하되, 여기서, 목표 조절 스텝 사이즈는 프리페치 수량의 다음 일 회의 갱신 처리에 사용된다.
여기서, 예를 들면 제1 갱신 처리에서 프리페치 수량을 증가할 경우, 프리페치 수량의 조절 스텝 사이즈를 증가하여 목표 조절 스텝 사이즈를 얻고, 및/또는,
존재 제1 갱신 처리 중 감소 프리페치 수량의 경우, 감소 프리페치 수량의 조절 스텝 사이즈以목표 조절 스텝 사이즈를 얻는다.
구체적인 예는 아래와 같다.
M1, M2, M3, M4 및 M5와 같은 합계5개의 프로세스가 동일한 심층 학습 모델의 훈련 태스크를 병렬 실행하고 있다.
여기서, M1, M2, M3, M4 및 M5는 각각 본 발명의 실시예에 의해 제공되는 데이터 처리 방법을 실행한다.
M1이 당해 데이터 처리 방법을 실행하는 예를 든다.
예 1에 있어서, 메모리 사용 상한 한계 값에 기반하여 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행한다.
1.1: M1이 M1에 대응하는 프리페치 샘플 데이터 대기열 L1, M2에 대응하는 프리페치 샘플 데이터 대기열 L2, M3에 대응하는 프리페치 샘플 데이터 대기열 L3, M4에 대응하는 프리페치 샘플 데이터 대기열 L4 및 M5에 대응하는 프리페치 샘플 데이터 대기열 L5에 의해 점용되어 있는 합계 메모리 스페이스가 메모리 사용 상한 한계 값에 도달하였는지 여부를 검출하고, 도달하지 않았을 경우에는, 1.2 (a)과 1.2(b)로 이동하고, 도달했을 경우 또는 M1이 조작 시스템의 메인 프로세스에 메모리를 신청할 때에 신청에 실패했을 경우에는, 1.3으로 이동한다.
1.2(a): M1이 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻으며,
"목표 프리페치 수량 = 프리페치 수량 + 제1 조절 스텝 사이즈"이며, 여기서, 제1 조절 스텝 사이즈는 앞에 일 회의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 얻은 목표 조절 스텝 사이즈다.
1.2(b): M1이 제1 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행한다.
"이번의 제2 갱신 처리 후에 얻은 목표 조절 스텝 사이즈 = 제1 조절 스텝 사이즈 * 2"인바, 즉, 다음 일 회의 제1 갱신 처리에 사용하는 제1 조절 스텝 사이즈는 이번의 제1 갱신 처리에 사용하는 조절 스텝 사이즈의 2배다.
1.3: M1이 제2 조절 스텝 사이즈가 1보다 큰지 여부를 검출하며, 제2 조절 스텝 사이즈가 1보다 크면, 1.4 (a)과 1.4(b)로 이동하고, 크지 않으면 1.5로 이동한다.
1.4(a): M1이 제2 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하며,
"조정 후의 제2 조절 스텝 사이즈 = 조정전의 제2 조절 스텝 사이즈/2"이다.
1.4(b): M1이 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻으며,
"목표 프리페치 수량 = 프리페치 수량 - 제2 조절 스텝 사이즈"다. 여기서, 제2 조절 스텝 사이즈는 1.4 (a) 중의 조정 후의 조절 스텝 사이즈다.
1.5: M1이 제2 조절 스텝 사이즈를 그대로 유지하고, 그대로 유지된 제2 조절 스텝 사이즈에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻으며,
"목표 프리페치 수량 = 프리페치 수량 - 그대로 유지된 제2 조절 스텝 사이즈"다.
예 2에 있어서, M1이 메모리 사용 상한 한계 값 및 심층 학습 모델을 훈련하기 위한 데이터 스루풋에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행한다.
2.1: M1이 M1에 대응하는 프리페치 샘플 데이터 대기열 L1, M2에 대응하는 프리페치 샘플 데이터 대기열 L2, M3에 대응하는 프리페치 샘플 데이터 대기열 L3, M4에 대응하는 프리페치 샘플 데이터 대기열 L4 및 M5에 대응하는 프리페치 샘플 데이터 대기열 L5에 의해 점용되어 있는 합계 메모리 스페이스가 메모리 사용 상한 한계 값에 도달하였는지 여부를 검출하고, 도달하지 않았을 경우에는, 2.2로 이동하고, 도달했을 경우 또는 M1이 조작 시스템의 메인 프로세스에 메모리를 신청할 때에 신청에 실패했을 경우에는, 2.7로 이동한다.
2.2: M1이 심층 학습 모델을 훈련할 때의 데이터 스루풋이 소정의 데이터 스루풋 조건을 충족시키는지 여부를 검출하고, 충족시키면 2.3 (a)과 2.3(b)으로 이동하고, 충족시키지 않으면 2.4 (a)와 2.4(b)로 이동한다.
2.3(a): M1이 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻으며,
"목표 프리페치 수량 = 프리페치 수량 + 제1 조절 스텝 사이즈"이며, 여기서, 제1 조절 스텝 사이즈는 앞에 일 회의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 얻은 목표 조절 스텝 사이즈다.
2.3(b): M1이 제1 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하며,
"이번의 제2 갱신 처리 후에 얻은 목표 조절 스텝 사이즈 = 제1 조절 스텝 사이즈 * 2"이다.
2.4(a): M1이 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻으며,
"목표 프리페치 수량 = 프리페치 수량-제3조절 스텝 사이즈"다.
2.4(b): M1이 제3조절 스텝 사이즈가 1보다 큰지 여부를 검출하고, 제3조절 스텝 사이즈가 1보다 크면, 2.5로 이동하고, 크지 않으면 2.6으로 이동한다.
2.5: M1이 제3조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하며,
"조정 후의 제3조절 스텝 사이즈 = 조정전의 제3조절 스텝 사이즈 / 2"이다.
2.6: M1이 제3조절 스텝 사이즈를 그대로 유지한다. 당해 제3조절 스텝 사이즈는 다음 일 회의 프리페치 수량에 대해 제1 갱신 처리를 실행할 때에 사용된다.
2.7: M1이 제2 조절 스텝 사이즈가 1보다 큰지 여부를 검출하고, 제2 조절 스텝 사이즈가 1보다 크면, 2.8 (a)과 2.8(b)로 이동하고, 크지 않으면 2.9로 이동한다.
2.8(a): M1이 제2 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하며,
"조정 후의 제2 조절 스텝 사이즈 = 조정전의 제2 조절 스텝 사이즈/2"이다.
2.8(b): M1이 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻고,
"목표 프리페치 수량 = 프리페치 수량-제2 조절 스텝 사이즈"다. 여기서, 제2 조절 스텝 사이즈는 2.8 (a) 중의 조정 후의 조절 스텝 사이즈다.
2.9: M1이 제2 조절 스텝 사이즈를 그대로 유지하고, 그대로 유지된 제2 조절 스텝 사이즈에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻으며,
"목표 프리페치 수량 = 프리페치 수량 - 그대로 유지된 제2 조절 스텝 사이즈"다.
상기의 예 중의 각각의 스텝을 통하여, 샘플 데이터의 프리페치 수량에 대한 제1 갱신 처리의 실행을 실행한다.
II: 상기의 S102에 있어서, 메인 프로세스는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 목표 프리페치 수량에 도달하지 않았을 때에, 직접 샘플 데이터 베이스에서 새로운 샘플 데이터를 판독할 수도 있고, 서브 프로세스와 통신하여 서브 프로세스를 제어함으로써 샘플 데이터 베이스에서 새로운 샘플 데이터를 판독할 수도 있다.
메인 프로세스가 직접 샘플 데이터 베이스에서 새로운 샘플 데이터를 판독할 경우, 메인 프로세스는 프리페치 샘플 데이터 대기열로부터 추출한 샘플 데이터의 수량 및 판독한 프리페치 샘플 데이터 대기열 중의 샘플 데이터의 수량에 기반하여, 프리페치 샘플 데이터 대기열에 현재 보존되어 있는 샘플 데이터의 수량을 확정한 후, 당해 수량과 목표 프리페치 수량을 비교하며, 당해 수량이 목표 프리페치 수량 미만일 경우, 직접 샘플 데이터 베이스에서 새로운 샘플 데이터를 판독하여, 프리페치 샘플 데이터 대기열에 보존할 수 있다.
메인 프로세스가 서브 프로세스를 제어하여 샘플 데이터 베이스에서 새로운 샘플 데이터를 판독할 경우, 메인 프로세스는 서브 프로세스와의 통신을 통해, 프리페치 샘플 데이터 대기열에 현재 보존되어 있는 샘플 데이터의 수량을 확정한 후, 당해 수량과 목표 프리페치 수량을 비교하며, 당해 수량이 목표 프리페치 수량 미만일 경우, 서브 프로세스에 샘플 데이터 판독 명령을 송신한다. 여기서, 당해 샘플 데이터 판독은 명령에는 판독할 필요가 있는 샘플 데이터의 수량 정보가 포함되어 있다. 서브 프로세스는 메인 프로세스가 송신한 샘플 데이터 판독 명령을 수신한 후, 샘플 데이터 판독 명령에 포함되어 있는 수량 정보에 기반하여, 새로운 샘플 데이터를 판독하여 프리페치 샘플 데이터 대기열에 보존할 수 있다.
본 발명의 실시예에 있어서, 메인 프로세스는 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻고, 데이터 대기열에 현재 포함되어 있는 샘플 데이터 량이 목표 프리페치 수량에 도달하지 않았을 때에, 샘플 데이터 풀로부터 새로운 샘플 데이터를 판독하기 때문에, 메인 프로세스는 일 회의 반복 훈련을 실행한 후에, 다음 일 회의 반복 훈련에 필요한 샘플 데이터의 판독이 이미 완료된다. 실제의 대부분 경우, 메인 프로세스가 데이터를 판독하는데 걸리는 시간은 하나의 반복 훈련을 실행하는데 걸리는 시간보다 짧은 경우가 많기 때문에, 데이터 대기열에 충분한 수량의 샘플 데이터가 항상 보존되어 후속의 몇몇의 반복 훈련의 사용을 충족시키도록 확보할 수 있고, 메인 프로세스가 특정 샘플 데이터가 판독하는데 걸리는 시간이 지나치게 길 경우에도, 샘플 수량이 시간 내에 판독되지 않음으로 하여 반복 훈련에 지연이 발생되는 것을 피면할 수 있으며, 훈련 효율을 향상시켰다.
당업자는 구체적인 실시 형태에 설명한 방법에서 각 단계의 기입 순서는 엄밀한 실행 순서를 의미하여 실시 과정에 대한 제한을 구성하는 것이 아닌바, 각 단계의 구체적인 실행 순서는 그 기능 및 가능한 내부 로직에 의해 결정됨을 이해해야 한다.
같은 발명 개념에 기반하여, 본 발명의 실시예는 데이터 처리 방법에 대응하는 데이터 처리 장치를 더 제공하는바, 본 발명의 실시예의 장치가 해결하려고 하는 문제의 원리는 본 발명의 실시예의 상기의 데이터 처리 방법과 동일하기 때문에, 장치의 실시는 방법의 실시를 참조할 수 있으므로, 반복된 부분은 반복적으로 설명하지 않는다.
도 2는 본 발명의 실시예에 의해 제공되는 데이터 처리 장치의 모식도이며, 상기 장치는 하나 또는 복수의 프로세스를 포함하는 심층 학습 모델의 훈련에 적용되며, 상기 장치는, 제1 갱신 모듈(21) 및 판독 모듈(22)을 구비하되, 여기서,
제1 갱신 모듈(21)은 상기 하나 또는 복수의 프로세스 중의 하나의 목표 프로세스에 대해, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻고,
판독 모듈(22)은 상기 목표 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 상기 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 상기 새로운 샘플 데이터를 상기 프리페치 샘플 데이터 대기열에 보존한다.
본 발명의 실시예에 있어서, 메인 프로세스는 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻고, 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터 량이 목표 프리페치 수량에 도달하지 않았을 때에, 샘플 데이터 풀로부터 새로운 샘플 데이터를 판독하기 때문에, 메인 프로세스는 일 회의 반복 훈련을 실행한 후에, 다음 일 회의 반복 훈련에 필요한 샘플 데이터의 판독이 이미 완료된다. 실제의 대부분 경우, 메인 프로세스가 데이터를 판독하는데 걸리는 시간은 하나의 반복 훈련을 실행하는데 걸리는 시간보다 짧은 경우가 많기 때문에, 데이터 대기열에 충분한 수량의 샘플 데이터가 항상 보존되어 후속의 몇몇의 반복 훈련의 사용을 충족시키도록 확보할 수 있고, 메인 프로세스가 특정 샘플 데이터가 판독하는데 걸리는 시간이 지나치게 길 경우에도, 샘플 수량이 시간 내에 판독되지 않음으로 하여 반복 훈련에 지연이 발생되는 것을 피면할 수 있으며, 훈련 효율을 향상시켰다.
가능한 일 실시 방식에 있어서, 상기 제1 갱신 모듈(21)은 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 때에,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는다.
가능한 일 실시 방식에 있어서, 상기 제1 갱신 모듈(21)은 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 때에,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스, 메모리 사용 상한 한계 값 및 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 상기 목표 프리페치 수량을 얻는다.
가능한 일 실시 방식에 있어서, 상기 제1 갱신 모듈(21)은 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 때에,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻고, 및/또는,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달했을 경우, 상기 프리페치 수량을 제2 조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는다.
가능한 일 실시 방식에 있어서, 상기 제1 갱신 모듈(21)은 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻을 때에,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋이 소정의 데이터 스루풋 조건을 충족시킬 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는다.
가능한 일 실시 방식에 있어서, 상기 제1 갱신 모듈(21)은 또한,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 데이터 스루풋이 상기 소정의 데이터 스루풋 조건을 충족시키지 않을 경우, 상기 프리페치 수량을 제3조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는다.
가능한 일 실시 방식에 있어서, 상기 소정의 데이터 스루풋 조건은,
상기 데이터 스루풋의 현재 수치가 이력 수치보다 큰 것; 및
상기 데이터 스루풋의 현재 수치가 데이터 스루풋 한계 값보다 큰 것 중의 적어도 하나를 포함하되, 여기서, 상기 이력 수치는 현재의 반복 훈련 앞의 복수의 이력 반복 훈련 때의 상기 데이터 스루풋의 평균치 또는 현재의 반복 훈련 앞의 일 회의 반복 훈련 때의 상기 데이터 스루풋의 수치다.
가능한 일 실시 방식에 있어서, 상기 장치는, 상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻기 위한 제2 갱신 모듈(23)을 더 구비하되, 여기서, 상기 목표 조절 스텝 사이즈는 상기 프리페치 수량의 다음 일 회의 갱신 처리에 사용된다.
가능한 일 실시 방식에 있어서, 상기 제2 갱신 모듈(23)은 상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻을 때에,
상기 제1 갱신 처리 중에 상기 프리페치 수량을 증가할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 증가하고, 및/또는,
상기 제1 갱신 처리 중에 상기 프리페치 수량을 감소할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 감소한다.
장치의 각 모듈의 처리 플로우 및 각 모듈 사이의 상호 작용 플로우의 기재는, 상술한 방법의 실시예에 관련된 설명을 참조할 수 있는바, 여기서는 반복적으로 설명하지 않는다.
본 발명의 실시예는 컴퓨터 디바이스(30)를 더 제공한다. 도 3은 본 발명의 실시예에 의해 제공되는 컴퓨터 디바이스(30)의 구성을 나타내는 모식도이며, 당해 디바이스는,
프로세서(31), 메모리(32) 및 버스(33)를 구비한다. 메모리(32)는 명령을 보존하고, 내부 메모리(321)와 외부 메모리(322)를 구비하며, 여기서의 내부 메모리(321)는 메모리라고도 불리며, 프로세서(31)의 연산 데이터 및 하드 디스크 등의 외부 메모리(322)와 교환하는 데이터를 일시적으로 보존한다. 프로세서(31)는 내부 메모리(321)를 통하여 외부 메모리(322)와 데이터 교환을 실행하며, 상기 컴퓨터 디바이스(30)가 운행되면, 상기 프로세서(31)와 상기 메모리(32) 사이는 버스(33)를 통하여 통신함으로써, 상기 프로세서(31)가 이하의 명령을 실행하도록 하는바, 당해 명령은,
상기 하나 또는 복수의 프로세스 중의 하나의 목표 프로세스에 대해, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것; 및
상기 목표 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 상기 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 상기 새로운 샘플 데이터를 상기 프리페치 샘플 데이터 대기열에 저장하는 것을 포함한다.
가능한 일 실시 방식에 있어서, 프로세서(31)에 의해 실행되는 명령 중에서, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것을 포함한다.
가능한 일 실시 방식에 있어서, 프로세서(31)에 의해 실행되는 명령 중에서, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스, 메모리 사용 상한 한계 값 및 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 상기 목표 프리페치 수량을 얻는 것을 포함한다.
가능한 일 실시 방식에 있어서, 프로세서(31)에 의해 실행되는 명령 중에서, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것, 및/또는,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달했을 경우, 상기 프리페치 수량을 제2 조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는 것을 포함한다.
가능한 일 실시 방식에 있어서, 프로세서(31)에 의해 실행되는 명령 중에서, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것은,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋이 소정의 데이터 스루풋 조건을 충족시킬 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것을 포함한다.
가능한 일 실시 방식에 있어서, 프로세서(31)에 의해 실행되는 명령 중에서, 상기 방법은,
상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 데이터 스루풋이 상기 소정의 데이터 스루풋 조건을 충족시키지 않을 경우, 상기 프리페치 수량을 제3조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는 것을 더 포함한다.
가능한 일 실시 방식에 있어서, 프로세서(31)에 의해 실행되는 명령 중에서, 상기 소정의 데이터 스루풋 조건은,
상기 데이터 스루풋의 현재 수치가 이력 수치보다 큰 것; 및
상기 데이터 스루풋의 현재 수치가 데이터 스루풋 한계 값보다 큰 것 중의 적어도 하나를 포함하고, 여기서, 상기 이력 수치는 현재의 반복 훈련 앞의 복수의 이력 반복 훈련 때의 상기 데이터 스루풋의 평균치 또는 현재의 반복 훈련 앞의 일 회의 반복 훈련 때의 상기 데이터 스루풋의 수치다.
가능한 일 실시 방식에 있어서, 프로세서(31)에 의해 실행되는 명령 중에서, 상기 방법은,
상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻는 것을 더 포함하되, 여기서, 상기 목표 조절 스텝 사이즈는 상기 프리페치 수량의 다음 일 회의 갱신 처리에 사용된다.
가능한 일 실시 방식에 있어서, 프로세서(31)에 의해 실행되는 명령 중에서, 상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻는 것은,
상기 제1 갱신 처리 중에 상기 프리페치 수량을 증가할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 증가하는 것, 및/또는,
상기 제1 갱신 처리 중에 상기 프리페치 수량을 감소할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 감소하는 것을 포함한다.
본 발명의 실시예는 컴퓨터 판독 가능 기록 매체를 더 제공하는바, 당해 컴퓨터 판독 가능 기록 매체에는 컴퓨터 프로그램이 기록되어 있으며, 당해 컴퓨터 프로그램이 프로세서에 의해 운행될 때에, 상술한 방법의 실시예에 기재된 데이터 처리 방법의 단계가 실행된다. 여기서, 당해 기록 매체는 휘발성 또는 비 휘발성의 컴퓨터 판독 가능 기록 매체일 수 있다.
본 발명의 실시예에 의해 제공되는 데이터 처리 방법의 컴퓨터 프로그램 제품은, 프로그램 코드가 보존된 컴퓨터 판독 가능 기록 매체를 포함하고, 상기 프로그램 코드에 포함되어 있는 명령은, 상술한 방법의 실시예에 기재된 데이터 처리 방법의 단계를 실행하며, 구체적으로는 상술한 방법의 실시예를 참조할 수 있는바, 여기서는 반복적으로 설명하지 않는다.
본 발명의 실시예는 컴퓨터 프로그램을 더 제공하는바, 당해 컴퓨터 프로그램이 프로세서에 의해 실행될 때에, 전술한 실시예의 임의의 방법이 실현된다. 당해 컴퓨터 프로그램 제품은 구체적으로 하드웨어, 소프트웨어 또는 그 조합의 방식으로 실현될 수 있다. 옵션에 하나의 실시예에 있어서, 상기 컴퓨터 프로그램 제품은 구체적으로 컴퓨터 기록 매체에 의해 구현된다. 옵션의 또 하나의 실시예에 있어서, 컴퓨터 프로그램 제품은 구체적으로 소프트웨어 개발 킷(Software Development Kit, SDK) 등의 소프트웨어 제품에 의해 구현된다.
당업자는 설명의 편의 및 간소화를 위하여, 상술에 기재된 시스템 및 장치가 구체적인 작업 과정은 전술한 방법의 실시예에 대응하는 과정을 참조할 수 있는바, 여기서는 반복적으로 설명하지 않는 것을 명확히 이해해야 한다. 본 발명에 의해 제공되는 몇몇의 실시예에서 개시한 시스템, 장치 및 방법은, 기타 방식에 의해 실현될 수 있음을 이해해야 한다. 상기에 기재된 장치의 실시예는 단지 예시적인 것이다. 예를 들면, 상기 유닛의 분할은 논리 기능의 분할일 뿐, 실제의 구현에 있어서 기타 분할 방법을 채용할 수 있다. 또한 예를 들면, 복수의 유닛 또는 컴포넌트를 조합시키거나, 또는 하나의 시스템에 통합시키거나, 또는 일부의 특징을 무시하거나 또는 실행하지 않을 수 있다. 또한, 표시 또는 논의된 상호 간의 결합 또는 직접 결합 또는 통신 접속은 몇몇의 통신 인터페이스, 디바이스 또는 유닛의 간접 결합 또는 통신 접속을 포함할 수 있으며, 전기적, 기계적 또는 기타 형태일 수 있다.
분리된 부품으로 설명된 유닛은 물리적으로 분리될 수도 있고 분리되지 않을 수도 있으며, 유닛으로 표시된 부품은 물리 유닛일 경우와 그렇지 않을 경우가 있다. 즉, 하나의 장소에 배치될 수도 있고, 복수의 네트워크 유닛에 분산될 수도 있다. 실제의 필요에 따라 여기서의 일부 또는 모두의 유닛을 선택하여 본 실시예의 해결책의 목적을 달성할 수 있다.
또한, 본 발명의 각각의 실시예에의 각 기능 유닛은 하나의 처리 유닛에 통합되거나, 또는 각 유닛이 물리적으로 단독으로 존재할 수 있거나, 또는 두 개 또는 두 개 이상의 유닛이 하나의 유닛에 통합될 수 있다.
상기 기능이 소프트웨어 기능 유닛의 형태로 구현되어, 독립된 제품으로서 판매 또는 사용될 경우, 프로세서에 의해 실행 가능한 비 휘발성의 컴퓨터 판독 가능 기억 매체에 보존될 수 있다. 이러한 이해에 기반하여, 본 발명의 기술적 해결책의 본질 또는 선행 기술에 기여하는 부분 또는 기술적 해결책의 일부는, 소프트웨어 제품의 형태로 구현될 수 있다. 당해 컴퓨터 소프트웨어 제품은 하나의 기록 매체에 보존되어, 컴퓨터 디바이스(컴퓨터, 서버 또는 네트워크 디바이스 등)가 본 발명의 각각의 실시예에 기재된 방법의 전부 또는 일부의 단계를 실행할 수 있도록 하기 위한 몇몇의 명령을 포함한다. 전술한 기록 매체는 U 디스크, 모바일 하드 디스크, 판독 전용 메모리(Read-Only Memory, ROM), 랜덤 액세스 메모리(Random Access Memory, RAM), 자기 디스크 또는 광 디스크 등과 같은 프로그램 코드를 보존할 수 있는 다양한 매체를 포함할 수 있다.
마지막으로, 상기의 실시예는 본 발명이 구체적인 실시 형태에 지나지 않으며, 그들을 한정하려는 것이 아닌바, 본 발명의 기술적 해결책을 설명하기 위하여 사용되는 것이며, 본 발명의 보호 범위는 이에 한정되지 않는다. 전술한 실시예를 참조하여 본 발명을 상세하게 설명했지만, 당업자는 본 발명에 개시된 기술 범위 내에서 전술한 실시예에 기재된 기술적 해결책을 수정하거나 또는 용이하게 변경을 생각해 낼 수 있으며, 또는 여기서의 일부의 기술 특징을 동등하게 바꿀 수 있음을 이해해야 한다. 이러한 수정, 변경 또는 치환은 당해 하는 기술적 해결책의 본질이 본 발명의 실시예의 기술적 해결책의 정신 및 범위에서 일탈하도록 하지 않으며, 모두 본 발명의 보호 범위 내에 커버되어야 한다. 따라서 본 발명의 보호 범위는 특허 청구의 범위 보호 범위를 따라야 한다.

Claims (21)

  1. 심층 학습 모델의 하나 또는 복수의 프로세스를 포함하는 훈련에 적용되는 데이터 처리 방법에 있어서,
    상기 하나 또는 복수의 프로세스 중의 하나의 목표 프로세스에 대해, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것; 및
    상기 목표 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 상기 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 상기 새로운 샘플 데이터를 상기 프리페치 샘플 데이터 대기열에 저장하는 것을 포함하는
    것을 특징으로 하는 데이터 처리 방법.
  2. 제1항에 있어서,
    상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것을 포함하는
    것을 특징으로 하는 데이터 처리 방법.
  3. 제2 항에 있어서,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스, 메모리 사용 상한 한계 값 및 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋에 기반하여, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 상기 목표 프리페치 수량을 얻는 것을 포함하는
    것을 특징으로 하는 데이터 처리 방법.
  4. 제2항 또는 제3항에 있어서,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는 것은,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것, 및/또는,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달했을 경우, 상기 프리페치 수량을 제2 조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는 것을 포함하는
    것을 특징으로 하는 데이터 처리 방법.
  5. 제4항에 있어서,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것은,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋이 소정의 데이터 스루풋 조건을 충족시킬 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는 것을 포함하는
    것을 특징으로 하는 데이터 처리 방법.
  6. 제5항에 있어서,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 데이터 스루풋이 상기 소정의 데이터 스루풋 조건을 충족시키지 않을 경우, 상기 프리페치 수량을 제3조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는 것을 더 포함하는
    것을 특징으로 하는 데이터 처리 방법.
  7. 제5항 또는 제6항에 있어서,
    상기 소정의 데이터 스루풋 조건은,
    상기 데이터 스루풋의 현재 수치가 이력 수치보다 큰 것; 및
    상기 데이터 스루풋의 현재 수치가 데이터 스루풋 한계 값보다 큰 것 중의 적어도 하나를 포함하되,
    여기서, 상기 이력 수치는 현재의 반복 훈련 앞의 복수의 이력 반복 훈련 때의 상기 데이터 스루풋의 평균치 또는 현재의 반복 훈련 앞의 일 회의 반복 훈련 때의 상기 데이터 스루풋의 수치인
    것을 특징으로 하는 데이터 처리 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻는 것을 더 포함하되,
    여기서, 상기 목표 조절 스텝 사이즈는 상기 프리페치 수량의 다음 일 회의 갱신 처리에 사용되는
    것을 특징으로 하는 데이터 처리 방법.
  9. 제8항에 있어서,
    상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻는 것은,
    상기 제1 갱신 처리 중에 상기 프리페치 수량을 증가할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 증가하는 것, 및/또는,
    상기 제1 갱신 처리 중에 상기 프리페치 수량을 감소할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 감소하는 것을 포함하는
    것을 특징으로 하는 데이터 처리 방법.
  10. 심층 학습 모델의 하나 또는 복수의 프로세스를 포함하는 훈련에 적용되는 데이터 처리 장치에 있어서,
    상기 하나 또는 복수의 프로세스 중의 하나의 목표 프로세스에 대해, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻기 위한 제1 갱신 모듈; 및
    상기 목표 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 현재 포함되어 있는 샘플 데이터의 수량이 상기 목표 프리페치 수량에 도달하지 않은 것에 응답하여, 새로운 샘플 데이터를 판독하고, 판독한 상기 새로운 샘플 데이터를 상기 프리페치 샘플 데이터 대기열에 보존하기 위한 판독 모듈을 구비하는
    것을 특징으로 하는 데이터 처리 장치.
  11. 제10항에 있어서,
    상기 제1 갱신 모듈은, 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 때에,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻는
    것을 특징으로 하는 데이터 처리 장치.
  12. 제11항에 있어서,
    상기 제1 갱신 모듈은, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 때에,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스, 메모리 사용 상한 한계 값 및 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋에 기반하여, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 상기 목표 프리페치 수량을 얻는
    것을 특징으로 하는 데이터 처리 장치.
  13. 제11항 또는 제12항에 있어서,
    상기 제1 갱신 모듈은, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스 및 메모리 사용 상한 한계 값에 기반하여, 상기 샘플 데이터의 프리페치 수량에 대해 제1 갱신 처리를 실행하여 목표 프리페치 수량을 얻을 때에,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻고, 및/또는,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달했을 경우, 상기 프리페치 수량을 제2 조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는
    것을 특징으로 하는 데이터 처리 장치.
  14. 제13항에 있어서,
    상기 제1 갱신 모듈은, 상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻을 때에,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 목표 프로세스의 상기 심층 학습 모델에 대해 훈련을 실행하기 위한 데이터 스루풋이 소정의 데이터 스루풋 조건을 충족시킬 경우, 상기 프리페치 수량을 제1 조절 스텝 사이즈 증가하여 상기 목표 프리페치 수량을 얻는
    것을 특징으로 하는 데이터 처리 장치.
  15. 제14항에 있어서,
    상기 제1 갱신 모듈은 또한,
    상기 하나 또는 복수의 프로세스에 대응하는 프리페치 샘플 데이터 대기열에 의해 현재 점용되어 있는 합계 메모리 스페이스가 상기 메모리 사용 상한 한계 값에 도달하지 않은 동시에, 상기 데이터 스루풋이 상기 소정의 데이터 스루풋 조건을 충족시키지 않을 경우, 상기 프리페치 수량을 제3조절 스텝 사이즈 감소하여 상기 목표 프리페치 수량을 얻는
    것을 특징으로 하는 데이터 처리 장치.
  16. 제14항 또는 제15항에 있어서,
    상기 소정의 데이터 스루풋 조건은,
    상기 데이터 스루풋의 현재 수치가 이력 수치보다 큰 것; 및
    상기 데이터 스루풋의 현재 수치가 데이터 스루풋 한계 값보다 큰 것 중의 적어도 하나를 포함하되,
    여기서, 상기 이력 수치는 현재의 반복 훈련 앞의 복수의 이력 반복 훈련 때의 상기 데이터 스루풋의 평균치 또는 현재의 반복 훈련 앞의 일 회의 반복 훈련 때의 상기 데이터 스루풋의 수치인
    것을 특징으로 하는 데이터 처리 장치.
  17. 제10항 내지 제16항 중 어느 한 항에 있어서,
    상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻기 위한 제2 갱신 모듈을 더 구비하되,
    여기서, 상기 목표 조절 스텝 사이즈는 상기 프리페치 수량의 다음 일 회의 갱신 처리에 사용되는
    것을 특징으로 하는 데이터 처리 장치.
  18. 제17항에 있어서,
    상기 제2 갱신 모듈은, 상기 프리페치 수량의 조절 스텝 사이즈에 대해 제2 갱신 처리를 실행하여 목표 조절 스텝 사이즈를 얻을 때에,
    상기 제1 갱신 처리 중에 상기 프리페치 수량을 증가할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 증가하고, 및/또는,
    상기 제1 갱신 처리 중에 상기 프리페치 수량을 감소할 경우, 상기 프리페치 수량의 조절 스텝 사이즈를 감소하는
    것을 특징으로 하는 데이터 처리 장치.
  19. 컴퓨터 디바이스에 있어서,
    프로세서, 기록 매체와 및 버스를 구비하며,
    상기 기록 매체에는 상기 프로세서에 의해 실행 가능한 기계 판독 가능 명령이 기록되어 있으며,
    컴퓨터 디바이스가 운행될 때에, 상기 프로세서와 상기 기록 매체 사이는 버스를 통해 통신하며, 상기 기계 판독 가능 명령이 상기 프로세서에 의해 실행되어 제1항 내지 제9항 중 어느 한 항에 기재된 데이터 처리 방법이 실행되는
    것을 특징으로 하는 컴퓨터 디바이스.
  20. 컴퓨터 판독 가능 기록 매체에 있어서,
    당해 컴퓨터 판독 가능 기록 매체에는 컴퓨터 프로그램이 기록되어 있으며, 당해 컴퓨터 프로그램이 프로세서에 의해 운행될 때에, 제1항 내지 제9항 중 어느 한 항에 기재된 데이터 처리 방법이 실행되는
    것을 특징으로 하는 컴퓨터 판독 가능 기록 매체.
  21. 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램이 프로세서에 의해 실행될 때에, 제1항 내지 제9항 중 어느 한 항에 기재된 데이터 처리 방법이 실행되는
    것을 특징으로 하는 컴퓨터 프로그램.
KR1020217031141A 2019-12-30 2020-12-03 데이터 처리 방법과 장치, 컴퓨터 디바이스, 기록 매체 및 컴퓨터 프로그램 KR20210130796A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201911403669.4 2019-12-30
CN201911403669.4A CN113128531B (zh) 2019-12-30 2019-12-30 一种数据处理方法及装置
PCT/CN2020/133647 WO2021135810A1 (zh) 2019-12-30 2020-12-03 数据处理方法及装置、计算机设备、存储介质、计算机程序

Publications (1)

Publication Number Publication Date
KR20210130796A true KR20210130796A (ko) 2021-11-01

Family

ID=76686451

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217031141A KR20210130796A (ko) 2019-12-30 2020-12-03 데이터 처리 방법과 장치, 컴퓨터 디바이스, 기록 매체 및 컴퓨터 프로그램

Country Status (6)

Country Link
JP (1) JP2022526333A (ko)
KR (1) KR20210130796A (ko)
CN (1) CN113128531B (ko)
SG (1) SG11202110625XA (ko)
TW (1) TWI763168B (ko)
WO (1) WO2021135810A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113612773B (zh) * 2021-08-03 2023-06-16 厦门至恒融兴信息技术股份有限公司 人工智能实现的智能报文识别和解析系统与方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508638B (zh) * 2011-09-27 2014-09-17 华为技术有限公司 用于非一致性内存访问的数据预取方法和装置
US9098418B2 (en) * 2012-03-20 2015-08-04 Apple Inc. Coordinated prefetching based on training in hierarchically cached processors
CN103902260B (zh) * 2012-12-25 2016-08-31 华中科技大学 一种对象文件系统的预取方法
CN103530111A (zh) * 2013-08-20 2014-01-22 山东中创软件工程股份有限公司 一种流程定义的获取方法及装置
CN105337896A (zh) * 2014-07-25 2016-02-17 华为技术有限公司 报文处理方法和装置
CN104463324A (zh) * 2014-11-21 2015-03-25 长沙马沙电子科技有限公司 一种基于大规模高性能集群的卷积神经网络并行处理方法
CN104765760B (zh) * 2015-01-04 2018-02-06 深圳微迅信息科技有限公司 一种基于json格式的页面生成和显示方法
CN104572205B (zh) * 2015-01-12 2018-02-23 安一恒通(北京)科技有限公司 一种用于软件加速的方法和装置
US10389839B2 (en) * 2016-06-01 2019-08-20 Intel Corporation Method and apparatus for generating data prefetches specifying various sizes to prefetch data from a remote computing node
JP7011146B2 (ja) * 2017-03-27 2022-01-26 富士通株式会社 画像処理装置、画像処理方法、画像処理プログラム、及び教師データ生成方法
US10909038B2 (en) * 2018-12-30 2021-02-02 Chengdu Haiguang Integrated Circuit Design Co. Ltd. Cache management method, cache and storage medium
CN110287010B (zh) * 2019-06-12 2021-09-14 北京工业大学 一种面向Spark时间窗口数据分析的缓存数据预取方法
CN110245094B (zh) * 2019-06-18 2020-12-29 华中科技大学 一种基于深度学习的块级缓存预取优化方法和系统

Also Published As

Publication number Publication date
CN113128531B (zh) 2024-03-26
CN113128531A (zh) 2021-07-16
JP2022526333A (ja) 2022-05-24
WO2021135810A1 (zh) 2021-07-08
TWI763168B (zh) 2022-05-01
TW202125271A (zh) 2021-07-01
SG11202110625XA (en) 2021-10-28

Similar Documents

Publication Publication Date Title
US11467769B2 (en) Managed fetching and execution of commands from submission queues
KR102424121B1 (ko) 프리-페치 유닛, 그것을 포함하는 장치 및 그것의 동작 방법
US11416256B2 (en) Selectively performing ahead branch prediction based on types of branch instructions
US10834228B2 (en) Method to reduce reactivation time of cloud based services
CN103501327B (zh) 基于移动终端应用的下载方法和装置
US20150195371A1 (en) Changing a cache queue based on user interface pointer movement
CN108334460B (zh) 数据缓存方法及装置
US20220012194A1 (en) Apparatus and method for data transmission and readable storage medium
KR20210130796A (ko) 데이터 처리 방법과 장치, 컴퓨터 디바이스, 기록 매체 및 컴퓨터 프로그램
CN104932933A (zh) 一种获取自旋锁的方法及装置
CN111552614A (zh) 一种cpu使用率的统计方法及装置
CN109656479B (zh) 一种构建存储器命令序列的方法及装置
CN110235106A (zh) 完成侧客户端节流
CN105278871B (zh) 通过在写入相变存储器之前读取来实现增强性能以避免写入取消
CN110235105A (zh) 用于在受信任客户端组件中的服务器处理之后的客户端侧节流的系统和方法
CN107807993B (zh) 一种网页历史记录功能的实现方法及装置
CN116089477A (zh) 分布式训练方法及系统
CN107273100B (zh) 一种数据实时处理及存储装置
CN115686855A (zh) 缓存数据的访问调度方法、处理器、电子设备及存储介质
JP2023546903A (ja) 非アクティブメモリ装置の優先更新
CN109213698B (zh) Vivt缓存访问方法、仲裁单元及处理器
CN111512631A (zh) 数据处理方法及相关产品
JP6488962B2 (ja) キャッシュ制御装置、キャッシュ制御方法およびキャッシュ制御プログラム
KR101907007B1 (ko) 프로세스의 우선순위를 이용한 페이지 처리 방법 및 페이지 처리 장치
US20180121209A1 (en) Adaptive mechanisms to improve boot performance

Legal Events

Date Code Title Description
A201 Request for examination
WITB Written withdrawal of application