CN113906384A8 - 人工神经网络(ann)应用程序中的存储器即服务 - Google Patents

人工神经网络(ann)应用程序中的存储器即服务 Download PDF

Info

Publication number
CN113906384A8
CN113906384A8 CN202080039732.5A CN202080039732A CN113906384A8 CN 113906384 A8 CN113906384 A8 CN 113906384A8 CN 202080039732 A CN202080039732 A CN 202080039732A CN 113906384 A8 CN113906384 A8 CN 113906384A8
Authority
CN
China
Prior art keywords
memory
computing device
service
amount
ann
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN202080039732.5A
Other languages
English (en)
Other versions
CN113906384A (zh
CN113906384B (zh
Inventor
S·S·艾勒特
A·D·艾卡尔
S·E·布拉德绍
K·M·丘尔维兹
D·尤达诺夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
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 Micron Technology Inc filed Critical Micron Technology Inc
Priority claimed from PCT/US2020/029298 external-priority patent/WO2020242665A1/en
Publication of CN113906384A publication Critical patent/CN113906384A/zh
Publication of CN113906384A8 publication Critical patent/CN113906384A8/zh
Application granted granted Critical
Publication of CN113906384B publication Critical patent/CN113906384B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0284Multiple user address space allocation, e.g. using different base addresses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1072Decentralised address translation, e.g. in distributed shared memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • 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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • 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
    • 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/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of 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
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/15Use in a specific computing environment
    • G06F2212/152Virtualized environment, e.g. logically partitioned system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/45Caching of specific data in cache memory
    • G06F2212/454Vector or matrix data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/50Control mechanisms for virtual memory, cache or TLB
    • G06F2212/502Control mechanisms for virtual memory, cache or TLB using adaptive policy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/657Virtual address space management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Neurology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

描述了对用于存储器即服务的网络通信进行节流的系统、方法和装置。例如,计算装置可以通过出借者装置和计算装置之间的通信连接借用出借者装置的随机存取存储器量。计算装置可以将虚拟存储器分配给在计算装置中运行的应用程序,并且将虚拟存储器的至少一部分配置为托管在出借者装置借给计算装置的存储器量上。计算装置可以根据存储在存储器区域中的内容的关键度级别来节流存储器区域在通过通信连接存取存储器量时使用的数据通信。
CN202080039732.5A 2019-05-28 2020-04-22 人工神经网络(ann)应用程序中的存储器即服务 Active CN113906384B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US16/424,429 US20200379809A1 (en) 2019-05-28 2019-05-28 Memory as a Service for Artificial Neural Network (ANN) Applications
US16/424,429 2019-05-28
US16/424,413 2019-05-28
PCT/US2020/029298 WO2020242665A1 (en) 2019-05-28 2020-04-22 Memory as a service for artificial neural network (ann) applications

Publications (3)

Publication Number Publication Date
CN113906384A CN113906384A (zh) 2022-01-07
CN113906384A8 true CN113906384A8 (zh) 2022-03-18
CN113906384B CN113906384B (zh) 2024-06-21

Family

ID=73551559

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080039732.5A Active CN113906384B (zh) 2019-05-28 2020-04-22 人工神经网络(ann)应用程序中的存储器即服务

Country Status (3)

Country Link
US (1) US20200379809A1 (zh)
EP (1) EP3977254A4 (zh)
CN (1) CN113906384B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11334387B2 (en) 2019-05-28 2022-05-17 Micron Technology, Inc. Throttle memory as a service based on connectivity bandwidth
US11169930B2 (en) 2019-05-28 2021-11-09 Micron Technology, Inc. Fine grain data migration to or from borrowed memory
US11100007B2 (en) 2019-05-28 2021-08-24 Micron Technology, Inc. Memory management unit (MMU) for accessing borrowed memory
US11061819B2 (en) 2019-05-28 2021-07-13 Micron Technology, Inc. Distributed computing based on memory as a service
US11438414B2 (en) 2019-05-28 2022-09-06 Micron Technology, Inc. Inter operating system memory services over communication network connections
US11256624B2 (en) 2019-05-28 2022-02-22 Micron Technology, Inc. Intelligent content migration with borrowed memory
US11966785B2 (en) * 2020-07-30 2024-04-23 Arm Limited Hardware resource configuration for processing system
US11429590B2 (en) * 2020-10-15 2022-08-30 International Business Machines Corporation Protecting against invalid memory references
US11966331B2 (en) 2020-12-30 2024-04-23 International Business Machines Corporation Dedicated bound information register file for protecting against out-of-bounds memory references
US11983532B2 (en) 2020-12-30 2024-05-14 International Business Machines Corporation Optimize bound information accesses in buffer protection
JP2022143762A (ja) * 2021-03-18 2022-10-03 キオクシア株式会社 メモリシステム、制御方法およびメモリコントローラ
KR20220167936A (ko) * 2021-06-15 2022-12-22 삼성전자주식회사 보안 프로세서를 포함하는 시스템 온 칩과 이를 포함하는 반도체 시스템

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150170053A1 (en) * 2013-12-13 2015-06-18 Microsoft Corporation Personalized machine learning models
US20150234669A1 (en) * 2014-02-17 2015-08-20 Strato Scale Ltd. Memory resource sharing among multiple compute nodes
US20150324690A1 (en) * 2014-05-08 2015-11-12 Microsoft Corporation Deep Learning Training System
US9336483B1 (en) * 2015-04-03 2016-05-10 Pearson Education, Inc. Dynamically updated neural network structures for content distribution networks
CN107025205B (zh) * 2016-01-30 2021-06-22 华为技术有限公司 一种分布式系统中的训练模型的方法及设备
US10002029B1 (en) * 2016-02-05 2018-06-19 Sas Institute Inc. Automated transfer of neural network definitions among federated areas
US10303646B2 (en) * 2016-03-25 2019-05-28 Microsoft Technology Licensing, Llc Memory sharing for working data using RDMA
FR3063361B1 (fr) * 2017-02-24 2019-04-19 Moore Procede, equipement et systeme de gestion du systeme de fichiers
US10417734B2 (en) * 2017-04-24 2019-09-17 Intel Corporation Compute optimization mechanism for deep neural networks
US10410098B2 (en) * 2017-04-24 2019-09-10 Intel Corporation Compute optimizations for neural networks
US20180322386A1 (en) * 2017-05-05 2018-11-08 Intel Corporation Fine-grain compute communication execution for deep learning frameworks
KR102197247B1 (ko) * 2017-06-01 2020-12-31 한국전자통신연구원 파라미터 서버 및 그것에 의해 수행되는 분산 딥러닝 파라미터 공유 방법
US11108575B2 (en) * 2017-07-26 2021-08-31 Amazon Technologies, Inc. Training models for IOT devices
US20190073580A1 (en) * 2017-09-01 2019-03-07 Facebook, Inc. Sparse Neural Network Modeling Infrastructure
US20200401944A1 (en) * 2018-04-27 2020-12-24 Sony Corporation Mechanism for machine learning in distributed computing
US10776164B2 (en) * 2018-11-30 2020-09-15 EMC IP Holding Company LLC Dynamic composition of data pipeline in accelerator-as-a-service computing environment
US11829849B2 (en) * 2019-01-09 2023-11-28 Cisco Technology, Inc. Dynamic orchestration of machine learning functions on a distributed network
US20200265301A1 (en) * 2019-02-15 2020-08-20 Microsoft Technology Licensing, Llc Incremental training of machine learning tools

Also Published As

Publication number Publication date
EP3977254A4 (en) 2023-05-31
EP3977254A1 (en) 2022-04-06
CN113906384A (zh) 2022-01-07
CN113906384B (zh) 2024-06-21
US20200379809A1 (en) 2020-12-03

Similar Documents

Publication Publication Date Title
CN113906384A8 (zh) 人工神经网络(ann)应用程序中的存储器即服务
CN103399778B (zh) 一种虚拟机在线整体迁移方法和设备
US20180260359A1 (en) Remote direct memory access-based method of transferring arrays of objects including garbage data
CN111478857A (zh) 一种接口限流控制方法、装置以及电子设备
CN108650334A (zh) 一种会话失效的设置方法及装置
CN107589997B (zh) 数据中心环境下保证延迟敏感程序QoS的动态调节方法
CN106326082B (zh) 网络系统中记录日志的方法和装置
CN105791381A (zh) 访问控制的方法及装置
CN105939371A (zh) 云计算的负载均衡方法及系统
CN109271247A (zh) 内存优化方法、装置、计算机装置以及存储介质
WO2017166997A1 (zh) 智能网卡侧的异常处理方法和装置
WO2021068247A8 (zh) 神经网络调度方法、装置、计算机设备及可读存储介质
CN113590640B (zh) 解决银行业务跨平台跨日账务平衡的方法及装置
CN102710742A (zh) 一种基于云计算虚拟应用下的离线文件同步处理机制
CN106155498A (zh) 一种安卓平台上防止列表滑动卡顿的图片加载方法
CN106815250A (zh) 一种发送数据的方法、数据服务器以及服务器
DE102013104330A1 (de) Anrufanzeigeweiterleitung für ein Gerät
CN102752412B (zh) Wan环境下端口映射方法及系统
CN108491483A (zh) 一种远程监控程序运行状态的方法和装置
CN112231106B (zh) Redis集群的访问数据处理方法及装置
CN104331406A (zh) 一种数据库容量控制方法及装置
CN108011745B (zh) 数据的传输方法及装置
CN116114219A8 (zh) 访问令牌处理方法和设备
CN105450667A (zh) 基于互联网的远程信息共享关联系统
CN116097614A8 (zh) 接入方法、设备和云平台设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CI02 Correction of invention patent application
CI02 Correction of invention patent application

Correction item: Priority

Correct: 16/424,429 2019.05.28 US

False: 16/424,413 2019.05.28 US

Number: 01-02

Page: The title page

Volume: 38

Correction item: Priority

Correct: 16/424,429 2019.05.28 US

False: 16/424,413 2019.05.28 US

Number: 01-02

Volume: 38

GR01 Patent grant