CN109614220B - 一种多核系统处理器和数据更新方法 - Google Patents
一种多核系统处理器和数据更新方法 Download PDFInfo
- Publication number
- CN109614220B CN109614220B CN201811258200.1A CN201811258200A CN109614220B CN 109614220 B CN109614220 B CN 109614220B CN 201811258200 A CN201811258200 A CN 201811258200A CN 109614220 B CN109614220 B CN 109614220B
- Authority
- CN
- China
- Prior art keywords
- lock
- cpu
- memory
- key area
- function
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
Abstract
Description
Claims (19)
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201811258200.1A CN109614220B (zh) | 2018-10-26 | 2018-10-26 | 一种多核系统处理器和数据更新方法 |
| TW108122771A TWI715087B (zh) | 2018-10-26 | 2019-06-28 | 多核系統處理器和資料更新方法 |
| EP19802403.6A EP3701377B1 (en) | 2018-10-26 | 2019-10-22 | Method and apparatus for updating shared data in a multi-core processor environment |
| US16/660,563 US11106795B2 (en) | 2018-10-26 | 2019-10-22 | Method and apparatus for updating shared data in a multi-core processor environment |
| PCT/US2019/057475 WO2020086609A1 (en) | 2018-10-26 | 2019-10-22 | Method and apparatus for updating shared data in a multi-core processor environment |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201811258200.1A CN109614220B (zh) | 2018-10-26 | 2018-10-26 | 一种多核系统处理器和数据更新方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN109614220A CN109614220A (zh) | 2019-04-12 |
| CN109614220B true CN109614220B (zh) | 2020-06-30 |
Family
ID=66002132
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201811258200.1A Active CN109614220B (zh) | 2018-10-26 | 2018-10-26 | 一种多核系统处理器和数据更新方法 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US11106795B2 (zh) |
| EP (1) | EP3701377B1 (zh) |
| CN (1) | CN109614220B (zh) |
| TW (1) | TWI715087B (zh) |
| WO (1) | WO2020086609A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112307067B (zh) * | 2020-11-06 | 2024-04-19 | 支付宝(杭州)信息技术有限公司 | 一种数据处理方法及装置 |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2019233231A1 (zh) * | 2018-06-08 | 2019-12-12 | 上海寒武纪信息科技有限公司 | 通用机器学习模型、模型文件的生成和解析方法 |
| US11372649B2 (en) * | 2019-06-24 | 2022-06-28 | Microsoft Technology Licensing, Llc | Flow control for multi-threaded access to contentious resource(s) |
| US11216278B2 (en) | 2019-08-12 | 2022-01-04 | Advanced New Technologies Co., Ltd. | Multi-thread processing |
| CN110569067B (zh) * | 2019-08-12 | 2021-07-13 | 创新先进技术有限公司 | 用于多线程处理的方法、装置及系统 |
| CN110781016B (zh) * | 2019-10-30 | 2021-04-23 | 支付宝(杭州)信息技术有限公司 | 一种数据处理方法、装置、设备及介质 |
| CN112765088A (zh) * | 2019-11-04 | 2021-05-07 | 罗习五 | 利用数据标签提高多计算单元平台上数据共享的方法 |
| CN111930527B (zh) * | 2020-06-28 | 2023-12-08 | 绵阳慧视光电技术有限责任公司 | 一种多核异构平台维护cache一致性的方法 |
| CN113778982B (zh) * | 2021-03-09 | 2025-02-21 | 北京沃东天骏信息技术有限公司 | 一种数据迁移方法和装置 |
| CN113836209A (zh) * | 2021-09-02 | 2021-12-24 | 深圳市道通智能汽车有限公司 | 多核处理器的共享资源访问方法、处理器及多核系统 |
| CN113986778B (zh) * | 2021-11-17 | 2023-03-24 | 海光信息技术股份有限公司 | 一种数据处理方法、共享缓存、芯片系统及电子设备 |
| CN115729627A (zh) * | 2022-11-16 | 2023-03-03 | 海光信息技术股份有限公司 | 线程同步方法及装置、芯片仿真方法及平台、相关设备 |
| CN119248528B (zh) * | 2022-12-27 | 2025-10-03 | 华为技术有限公司 | Cc-numa服务器、锁请求的处理方法及相关装置 |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101504618A (zh) * | 2009-02-26 | 2009-08-12 | 浙江大学 | 面向多核处理器的实时线程迁移方法 |
| CN101833476A (zh) * | 2010-05-28 | 2010-09-15 | 西安交通大学 | 基于cmp的推测多线程机制下的独立栈函数调用方法 |
| CN102331923A (zh) * | 2011-10-13 | 2012-01-25 | 西安电子科技大学 | 一种基于多核多线程处理器的功能宏流水线实现方法 |
| CN103577158A (zh) * | 2012-07-18 | 2014-02-12 | 阿里巴巴集团控股有限公司 | 数据处理方法与装置 |
| CN104216684A (zh) * | 2013-06-04 | 2014-12-17 | 阿里巴巴集团控股有限公司 | 一种多核并行系统及其数据处理方法 |
| CN104216767A (zh) * | 2014-09-18 | 2014-12-17 | 东软集团股份有限公司 | 多线程之间访问共享数据的方法及装置 |
| CN104951240A (zh) * | 2014-03-26 | 2015-09-30 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及处理器 |
| CN108345452A (zh) * | 2017-01-23 | 2018-07-31 | 阿里巴巴集团控股有限公司 | 一种线程管理方法及装置 |
Family Cites Families (30)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5050072A (en) * | 1988-06-17 | 1991-09-17 | Modular Computer Systems, Inc. | Semaphore memory to reduce common bus contention to global memory with localized semaphores in a multiprocessor system |
| US5537574A (en) * | 1990-12-14 | 1996-07-16 | International Business Machines Corporation | Sysplex shared data coherency method |
| US6651145B1 (en) | 2000-09-29 | 2003-11-18 | Intel Corporation | Method and apparatus for scalable disambiguated coherence in shared storage hierarchies |
| US7076609B2 (en) | 2002-09-20 | 2006-07-11 | Intel Corporation | Cache sharing for a chip multiprocessor or multiprocessing system |
| JP4028444B2 (ja) | 2003-06-27 | 2007-12-26 | 株式会社東芝 | スケジューリング方法およびリアルタイム処理システム |
| US7937709B2 (en) | 2004-12-29 | 2011-05-03 | Intel Corporation | Synchronizing multiple threads efficiently |
| US7984248B2 (en) | 2004-12-29 | 2011-07-19 | Intel Corporation | Transaction based shared data operations in a multiprocessor environment |
| US20080024489A1 (en) | 2006-07-28 | 2008-01-31 | Robert Allen Shearer | Cache Utilization Optimized Ray Traversal Algorithm with Minimized Memory Bandwidth Requirements |
| US7853754B1 (en) | 2006-09-29 | 2010-12-14 | Tilera Corporation | Caching in multicore and multiprocessor architectures |
| US7761485B2 (en) * | 2006-10-25 | 2010-07-20 | Zeugma Systems Inc. | Distributed database |
| US8407428B2 (en) | 2010-05-20 | 2013-03-26 | Hicamp Systems, Inc. | Structured memory coprocessor |
| US8504791B2 (en) | 2007-01-26 | 2013-08-06 | Hicamp Systems, Inc. | Hierarchical immutable content-addressable memory coprocessor |
| US8285670B2 (en) | 2008-07-22 | 2012-10-09 | International Business Machines Corporation | Dynamically maintaining coherency within live ranges of direct buffers |
| US8578483B2 (en) * | 2008-07-31 | 2013-11-05 | Carnegie Mellon University | Systems and methods for preventing unauthorized modification of an operating system |
| US20110113221A1 (en) * | 2008-08-18 | 2011-05-12 | Telefonaktiebolaget L M Ericsson (Publ) | Data Sharing in Chip Multi-Processor Systems |
| EP2175368B1 (en) * | 2008-10-13 | 2010-07-14 | Alcatel Lucent | Method for synchronizing access to a shared resource, corresponding device, storage means, and software program therefore |
| US8145817B2 (en) * | 2009-04-28 | 2012-03-27 | Microsoft Corporation | Reader/writer lock with reduced cache contention |
| EP2441005A2 (en) | 2009-06-09 | 2012-04-18 | Martin Vorbach | System and method for a cache in a multi-core processor |
| US20120227045A1 (en) | 2009-12-26 | 2012-09-06 | Knauth Laura A | Method, apparatus, and system for speculative execution event counter checkpointing and restoring |
| US8412689B2 (en) | 2010-07-07 | 2013-04-02 | Microsoft Corporation | Shared log-structured multi-version transactional datastore with metadata to enable melding trees |
| US8738860B1 (en) | 2010-10-25 | 2014-05-27 | Tilera Corporation | Computing in parallel processing environments |
| US9274960B2 (en) | 2012-03-20 | 2016-03-01 | Stefanos Kaxiras | System and method for simplifying cache coherence using multiple write policies |
| US9417935B2 (en) | 2012-05-01 | 2016-08-16 | Microsoft Technology Licensing, Llc | Many-core process scheduling to maximize cache usage |
| CN104424142B (zh) * | 2013-08-26 | 2019-09-10 | 南京中兴新软件有限责任公司 | 一种多核处理器系统中访问共享资源的方法与装置 |
| US9298626B2 (en) * | 2013-09-26 | 2016-03-29 | Globalfoundries Inc. | Managing high-conflict cache lines in transactional memory computing environments |
| US9304935B2 (en) * | 2014-01-24 | 2016-04-05 | International Business Machines Corporation | Enhancing reliability of transaction execution by using transaction digests |
| FR3019921B1 (fr) * | 2014-04-10 | 2017-08-11 | Commissariat Energie Atomique | Systeme de calcul distribue mettant en œuvre une memoire transactionnelle materielle de type non-speculatif et son procede d'utilisation pour le calcul distribue |
| US9336047B2 (en) * | 2014-06-30 | 2016-05-10 | International Business Machines Corporation | Prefetching of discontiguous storage locations in anticipation of transactional execution |
| US10360063B2 (en) * | 2015-09-23 | 2019-07-23 | Qualcomm Incorporated | Proactive resource management for parallel work-stealing processing systems |
| US10764333B2 (en) * | 2015-11-30 | 2020-09-01 | Yeshong, Llc | Hardware agnostic platform for transparent access control of Internet of Everything (IoE) destinations via correlation, classification, and/or tagging |
-
2018
- 2018-10-26 CN CN201811258200.1A patent/CN109614220B/zh active Active
-
2019
- 2019-06-28 TW TW108122771A patent/TWI715087B/zh active
- 2019-10-22 WO PCT/US2019/057475 patent/WO2020086609A1/en not_active Ceased
- 2019-10-22 EP EP19802403.6A patent/EP3701377B1/en active Active
- 2019-10-22 US US16/660,563 patent/US11106795B2/en active Active
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101504618A (zh) * | 2009-02-26 | 2009-08-12 | 浙江大学 | 面向多核处理器的实时线程迁移方法 |
| CN101833476A (zh) * | 2010-05-28 | 2010-09-15 | 西安交通大学 | 基于cmp的推测多线程机制下的独立栈函数调用方法 |
| CN102331923A (zh) * | 2011-10-13 | 2012-01-25 | 西安电子科技大学 | 一种基于多核多线程处理器的功能宏流水线实现方法 |
| CN103577158A (zh) * | 2012-07-18 | 2014-02-12 | 阿里巴巴集团控股有限公司 | 数据处理方法与装置 |
| CN104216684A (zh) * | 2013-06-04 | 2014-12-17 | 阿里巴巴集团控股有限公司 | 一种多核并行系统及其数据处理方法 |
| CN104951240A (zh) * | 2014-03-26 | 2015-09-30 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及处理器 |
| CN104216767A (zh) * | 2014-09-18 | 2014-12-17 | 东软集团股份有限公司 | 多线程之间访问共享数据的方法及装置 |
| CN108345452A (zh) * | 2017-01-23 | 2018-07-31 | 阿里巴巴集团控股有限公司 | 一种线程管理方法及装置 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112307067B (zh) * | 2020-11-06 | 2024-04-19 | 支付宝(杭州)信息技术有限公司 | 一种数据处理方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3701377B1 (en) | 2021-09-15 |
| TWI715087B (zh) | 2021-01-01 |
| US20200134182A1 (en) | 2020-04-30 |
| US11106795B2 (en) | 2021-08-31 |
| EP3701377A1 (en) | 2020-09-02 |
| CN109614220A (zh) | 2019-04-12 |
| WO2020086609A1 (en) | 2020-04-30 |
| TW202016735A (zh) | 2020-05-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109614220B (zh) | 一种多核系统处理器和数据更新方法 | |
| JP2500101B2 (ja) | 共用変数の値を更新する方法 | |
| Yang et al. | A wait-free queue as fast as fetch-and-add | |
| JP6685437B2 (ja) | データ処理のための方法及びプロセッサ | |
| RU2501071C2 (ru) | Механизм запроса поздней блокировки для пропуска аппаратной блокировки (hle) | |
| Chuang et al. | Unbounded page-based transactional memory | |
| JP5137971B2 (ja) | スピン・ロックによりロッキング公平性及びロッキング性能の両方を達成する方法及びシステム | |
| US8973004B2 (en) | Transactional locking with read-write locks in transactional memory systems | |
| KR102008733B1 (ko) | 스토어 상위 서열에 기초하여 상이한 스레드들로부터의 포워딩을 구현하는 스레드에 무관한 로드 스토어 버퍼 | |
| US5313647A (en) | Digital data processor with improved checkpointing and forking | |
| US7133977B2 (en) | Scalable rundown protection for object lifetime management | |
| EP3274826B1 (en) | Coherence protocol for hardware transactional memory in shared memory using non volatile memroy with log and no lock | |
| US9514006B1 (en) | Transaction tracking within a microprocessor | |
| US10929201B2 (en) | Method and system for implementing generation locks | |
| JPH1115793A (ja) | 資源の保全性を保護する方法 | |
| US9053035B1 (en) | Multi-threaded system for performing atomic binary translations | |
| WO2017127180A1 (en) | Random-access disjoint concurrent sparse writes to heterogeneous buffers | |
| Braginsky et al. | CBPQ: High performance lock-free priority queue | |
| Gómez-Hernández et al. | Efficient, distributed, and non-speculative multi-address atomic operations | |
| Michael et al. | Implementation of atomic primitives on distributed shared memory multiprocessors | |
| HK40006843B (zh) | 一种多核系统处理器和数据更新方法 | |
| HK40006843A (zh) | 一种多核系统处理器和数据更新方法 | |
| Yi et al. | A universal construction to implement concurrent data structure for numa-muticore | |
| US10146689B2 (en) | Locally poll flag in multi processing node system to determine whether a resource is free to use for thread | |
| Singh et al. | Efficient hardware primitives for immediate memory reclamation in optimistic data structures |
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 | ||
| REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40006843 Country of ref document: HK |
|
| GR01 | Patent grant | ||
| GR01 | Patent grant | ||
| TR01 | Transfer of patent right | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20200925 Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Patentee after: Innovative advanced technology Co.,Ltd. Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Patentee before: Advanced innovation technology Co.,Ltd. Effective date of registration: 20200925 Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Patentee after: Advanced innovation technology Co.,Ltd. Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands Patentee before: Alibaba Group Holding Ltd. |