CN110018907A - 提升cpu性能的方法及装置和电子设备 - Google Patents
提升cpu性能的方法及装置和电子设备 Download PDFInfo
- Publication number
- CN110018907A CN110018907A CN201910039771.4A CN201910039771A CN110018907A CN 110018907 A CN110018907 A CN 110018907A CN 201910039771 A CN201910039771 A CN 201910039771A CN 110018907 A CN110018907 A CN 110018907A
- Authority
- CN
- China
- Prior art keywords
- lock
- thread
- mutual exclusion
- cpu
- spin
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000007717 exclusion Effects 0.000 claims abstract description 122
- 230000001737 promoting effect Effects 0.000 claims abstract description 16
- 238000007599 discharging Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 238000001514 detection method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000002618 waking effect Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007958 sleep Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 229910021421 monocrystalline silicon Inorganic materials 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06F9/526—Mutual exclusion algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/5011—Allocation 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/5022—Mechanisms to release resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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
- G06F9/5044—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 considering hardware capabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/176—Support for shared access to files; File sharing support
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Microcomputers (AREA)
- Power Sources (AREA)
- Advance Control (AREA)
Abstract
Description
Claims (13)
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910039771.4A CN110018907B (zh) | 2019-01-16 | 提升cpu性能的方法及装置和电子设备 | |
TW108129453A TWI716074B (zh) | 2019-01-16 | 2019-08-19 | 提升cpu性能的方法及裝置和電子設備 |
PCT/US2020/012747 WO2020150058A1 (en) | 2019-01-16 | 2020-01-08 | Method, apparatus, and electronic device for improving cpu performance |
EP20708241.3A EP3850487A1 (en) | 2019-01-16 | 2020-01-08 | Method, apparatus, and electronic device for improving cpu performance |
US16/743,971 US10983839B2 (en) | 2019-01-16 | 2020-01-15 | Method, apparatus, and electronic device for improving CPU performance |
US17/234,313 US11269693B2 (en) | 2019-01-16 | 2021-04-19 | Method, apparatus, and electronic device for improving CPU performance |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910039771.4A CN110018907B (zh) | 2019-01-16 | 提升cpu性能的方法及装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110018907A true CN110018907A (zh) | 2019-07-16 |
CN110018907B CN110018907B (zh) | 2024-07-30 |
Family
ID=
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760909B1 (en) * | 1996-04-29 | 2004-07-06 | Microsoft Corporation | Virtual memory system and methods |
US20050081204A1 (en) * | 2003-09-25 | 2005-04-14 | International Business Machines Corporation | Method and system for dynamically bounded spinning threads on a contested mutex |
CN104461729A (zh) * | 2013-09-22 | 2015-03-25 | 腾讯科技(北京)有限公司 | 一种资源共享保护方法及装置 |
CN105975349A (zh) * | 2016-05-04 | 2016-09-28 | 北京智能管家科技有限公司 | 一种线程锁的优化方法 |
CN108446181A (zh) * | 2018-03-26 | 2018-08-24 | 武汉斗鱼网络科技有限公司 | 对资源限制访问的方法、装置及终端设备 |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760909B1 (en) * | 1996-04-29 | 2004-07-06 | Microsoft Corporation | Virtual memory system and methods |
US20050081204A1 (en) * | 2003-09-25 | 2005-04-14 | International Business Machines Corporation | Method and system for dynamically bounded spinning threads on a contested mutex |
CN104461729A (zh) * | 2013-09-22 | 2015-03-25 | 腾讯科技(北京)有限公司 | 一种资源共享保护方法及装置 |
CN105975349A (zh) * | 2016-05-04 | 2016-09-28 | 北京智能管家科技有限公司 | 一种线程锁的优化方法 |
CN108446181A (zh) * | 2018-03-26 | 2018-08-24 | 武汉斗鱼网络科技有限公司 | 对资源限制访问的方法、装置及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
US11269693B2 (en) | 2022-03-08 |
TW202028965A (zh) | 2020-08-01 |
US20200226001A1 (en) | 2020-07-16 |
WO2020150058A1 (en) | 2020-07-23 |
EP3850487A1 (en) | 2021-07-21 |
US10983839B2 (en) | 2021-04-20 |
TWI716074B (zh) | 2021-01-11 |
US20210240547A1 (en) | 2021-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106462395B (zh) | 多线程处理器架构中的线程等待 | |
US9753729B2 (en) | System for selecting a task to be executed according to an output from a task control circuit | |
US9779042B2 (en) | Resource management in a multicore architecture | |
US8996761B2 (en) | Virtual queue processing circuit and task processor | |
KR101799253B1 (ko) | 다중 클러스터 이종 프로세서 아키텍처에서 동적 캐시 확장을 제공하기 위한 시스템 및 방법 | |
US8341641B2 (en) | Task processor | |
CN108920267B (zh) | 任务处理装置 | |
TW201001291A (en) | Method and apparatus for moving threads in a shared processor partitioning environment | |
US8327379B2 (en) | Method for switching a selected task to be executed according with an output from task selecting circuit | |
JP2018507474A (ja) | タスク制御フローを加速させるための方法およびシステム | |
KR20070095376A (ko) | 스케쥴링 방법, 장치, 멀티스레딩 시스템 및 제조물 | |
CN101833475A (zh) | 用于增强线程级推测的原语 | |
JP2018534676A (ja) | 競合の存在下での効率的なタスクスケジューリングのための方法 | |
US11269693B2 (en) | Method, apparatus, and electronic device for improving CPU performance | |
CN102436393B (zh) | 任务处理装置 | |
CN110032441A (zh) | 提升服务器性能的方法及装置和电子设备 | |
US8453157B2 (en) | Thread synchronization in simultaneous multi-threaded processor machines | |
Choi et al. | Conflict avoidance scheduling using grouping list for transactional memory | |
CN110018907B (zh) | 提升cpu性能的方法及装置和电子设备 | |
US20110231637A1 (en) | Central processing unit and method for workload dependent optimization thereof | |
JP5204740B2 (ja) | タスク処理装置 | |
Woo et al. | Catnap: A Backoff Scheme for Kernel Spinlocks in Many-Core Systems | |
CN115061779A (zh) | 一种用户态虚拟机的内核锁管理方法及装置 | |
Quislant et al. | Improving signature behavior by irrevocability in transactional memory systems | |
Wang et al. | GCMS: A Global Contention Management Scheme in Hardware Transactional Memory |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20201014 Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Applicant after: Innovative advanced technology Co.,Ltd. Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Applicant before: Advanced innovation technology Co.,Ltd. Effective date of registration: 20201014 Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Applicant after: Advanced innovation technology Co.,Ltd. Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands Applicant before: Alibaba Group Holding Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant |