JP5435741B2 - 競合管理を容易にするための型固定性の使用 - Google Patents
競合管理を容易にするための型固定性の使用 Download PDFInfo
- Publication number
- JP5435741B2 JP5435741B2 JP2010514981A JP2010514981A JP5435741B2 JP 5435741 B2 JP5435741 B2 JP 5435741B2 JP 2010514981 A JP2010514981 A JP 2010514981A JP 2010514981 A JP2010514981 A JP 2010514981A JP 5435741 B2 JP5435741 B2 JP 5435741B2
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- data structure
- computer
- transaction data
- reference count
- 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
- 238000000034 method Methods 0.000 claims description 50
- 230000007246 mechanism Effects 0.000 claims description 16
- 230000008859 change Effects 0.000 claims description 2
- 238000001514 detection method Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
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/466—Transaction processing
- G06F9/467—Transactional memory
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
Claims (4)
- 参照カウントメカニズムを使用して競合管理を容易にするコンピュータ実行方法であって、
複数のトランザクションデータ構造をコンピュータが割り当てるステップであって、トランザクションデータ構造を型固定にし、前記トランザクションデータ構造の型が変化しないことを保証するが前記トランザクションデータ構造のコンテンツが並列して実行されているトランザクションによって変更されることを可能にすることを含む、ステップと、
2つのトランザクション間でコンフリクトが発生したことが検出される場合に、2つのトランザクションのうちの1つである所有トランザクションに関する情報を前記コンピュータが取得するステップであって、前記検出および取得が前記2つのトランザクションのうちの第2のトランザクションによって行われる、ステップと、
前記所有トランザクションに付随する特定のトランザクションデータ構造内の参照カウントを前記コンピュータがインクリメントするステップと、
正確なトランザクションデータ構造の参照カウントがインクリメントされたかどうかを前記コンピュータが判定するステップと、
前記正確なトランザクションデータ構造の参照カウントがインクリメントされたと判定される場合に、前記所有トランザクションを停止するか否か、前記第2のトランザクションを停止するか否か、または前記所有トランザクションを待つか否かを決定することを含む、前記コンフリクトを扱うやり方について前記コンピュータが競合管理判定を行うステップと、
前記正確なトランザクションデータ構造の参照カウントがインクリメントされなかったと判定される場合に、前記コンピュータが、前記参照カウントをデクリメントし、さらに高いレベルでのロックを再試行するステップと
を含むことを特徴とする方法。 - 前記判定するステップは、オブジェクト内のロック情報を追跡して前記所有トランザクション情報を取得することによって行われることを特徴とする請求項1に記載の方法。
- 所有トランザクション情報が、オブジェクトに付随するロック情報を追跡することによって取得されることを特徴とする請求項1に記載の方法。
- コンピュータによって実行されると、請求項1に記載の方法を前記コンピュータに実行させるコンピュータ実行可能命令を有することを特徴とするコンピュータ読み取り可能な記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/824,353 | 2007-06-29 | ||
US11/824,353 US7991967B2 (en) | 2007-06-29 | 2007-06-29 | Using type stability to facilitate contention management |
PCT/US2008/067346 WO2009006025A2 (en) | 2007-06-29 | 2008-06-18 | Using type stability to facilitate contention management |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2010532531A JP2010532531A (ja) | 2010-10-07 |
JP2010532531A5 JP2010532531A5 (ja) | 2011-07-21 |
JP5435741B2 true JP5435741B2 (ja) | 2014-03-05 |
Family
ID=40161866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010514981A Active JP5435741B2 (ja) | 2007-06-29 | 2008-06-18 | 競合管理を容易にするための型固定性の使用 |
Country Status (6)
Country | Link |
---|---|
US (2) | US7991967B2 (ja) |
EP (1) | EP2176764B1 (ja) |
JP (1) | JP5435741B2 (ja) |
CN (1) | CN101689139B (ja) |
TW (2) | TWI515661B (ja) |
WO (1) | WO2009006025A2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6988161B2 (en) | 2001-12-20 | 2006-01-17 | Intel Corporation | Multiple port allocation and configurations for different port operation modes on a host |
US7991967B2 (en) | 2007-06-29 | 2011-08-02 | Microsoft Corporation | Using type stability to facilitate contention management |
US8924403B2 (en) * | 2007-12-31 | 2014-12-30 | Sap Se | Method and system for central data querying |
US8832401B2 (en) * | 2011-01-26 | 2014-09-09 | International Business Machines Corporation | Iteratively de-allocating active objects associated with virtual functions of an adapter |
US9411739B2 (en) * | 2012-11-30 | 2016-08-09 | Intel Corporation | System, method and apparatus for improving transactional memory (TM) throughput using TM region indicators |
EP2972885B1 (en) * | 2013-03-14 | 2020-04-22 | Intel Corporation | Memory object reference count management with improved scalability |
US20160062655A1 (en) * | 2014-08-28 | 2016-03-03 | Endgame, Inc. | System and Method for Improved Memory Allocation in a Computer System |
WO2017011223A1 (en) * | 2015-07-10 | 2017-01-19 | Rambus, Inc. | Thread associated memory allocation and memory architecture aware allocation |
CN106599151A (zh) * | 2016-12-07 | 2017-04-26 | Tcl集团股份有限公司 | 一种Android工程无用资源并行清理的方法及系统 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4912629A (en) * | 1986-06-26 | 1990-03-27 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Real-time garbage collection for list processing using restructured cells for increased reference counter size |
US5701480A (en) * | 1991-10-17 | 1997-12-23 | Digital Equipment Corporation | Distributed multi-version commitment ordering protocols for guaranteeing serializability during transaction processing |
US5241675A (en) * | 1992-04-09 | 1993-08-31 | Bell Communications Research, Inc. | Method for enforcing the serialization of global multidatabase transactions through committing only on consistent subtransaction serialization by the local database managers |
US5335343A (en) * | 1992-07-06 | 1994-08-02 | Digital Equipment Corporation | Distributed transaction processing using two-phase commit protocol with presumed-commit without log force |
US5842016A (en) * | 1997-05-29 | 1998-11-24 | Microsoft Corporation | Thread synchronization in a garbage-collected system using execution barriers |
WO2001016716A1 (en) * | 1999-09-01 | 2001-03-08 | Intel Corporation | Branch instruction for processor architecture |
US6513100B1 (en) * | 2000-10-30 | 2003-01-28 | Microsoft Corporation | System and method for fast referencing a reference counted item |
US7216136B2 (en) * | 2000-12-11 | 2007-05-08 | International Business Machines Corporation | Concurrent collection of cyclic garbage in reference counting systems |
US7769791B2 (en) * | 2001-01-12 | 2010-08-03 | Oracle America, Inc. | Lightweight reference counting using single-target synchronization |
GB0130399D0 (en) * | 2001-12-19 | 2002-02-06 | Ibm | Message ordering in a messaging system |
US6754737B2 (en) * | 2001-12-24 | 2004-06-22 | Hewlett-Packard Development Company, L.P. | Method and apparatus to allow dynamic variation of ordering enforcement between transactions in a strongly ordered computer interconnect |
US6785779B2 (en) * | 2002-01-09 | 2004-08-31 | International Business Machines Company | Multi-level classification method for transaction address conflicts for ensuring efficient ordering in a two-level snoopy cache architecture |
US7328316B2 (en) * | 2002-07-16 | 2008-02-05 | Sun Microsystems, Inc. | Software transactional memory for dynamically sizable shared data structures |
US7076508B2 (en) * | 2002-08-12 | 2006-07-11 | International Business Machines Corporation | Method, system, and program for merging log entries from multiple recovery log files |
US7089253B2 (en) * | 2002-09-13 | 2006-08-08 | Netezza Corporation | Computer method and system for concurrency control using dynamic serialization ordering |
US7003532B2 (en) * | 2002-11-27 | 2006-02-21 | Microsoft Corporation | System and method for scaleable multiplexed transactional log recovery |
US6898685B2 (en) * | 2003-03-25 | 2005-05-24 | Emc Corporation | Ordering data writes from a local storage device to a remote storage device |
CA2425033A1 (en) * | 2003-04-08 | 2004-10-08 | Ibm Canada Limited - Ibm Canada Limitee | Multi-level locking hierarchy in a database with multi-dimensional clustering |
US7343598B2 (en) * | 2003-04-25 | 2008-03-11 | Microsoft Corporation | Cache-conscious coallocation of hot data streams |
US7243088B2 (en) * | 2003-08-06 | 2007-07-10 | Oracle International Corporation | Database management system with efficient version control |
US7475093B2 (en) * | 2004-10-15 | 2009-01-06 | Microsoft Corporation | Memory cache management in XML/relational data mapping |
US7376675B2 (en) * | 2005-02-18 | 2008-05-20 | International Business Machines Corporation | Simulating multi-user activity while maintaining original linear request order for asynchronous transactional events |
US8027288B2 (en) * | 2005-04-22 | 2011-09-27 | Nokia Corporation | Reducing beacon slot acquisition time in distributed media access control network |
US8065499B2 (en) * | 2006-02-22 | 2011-11-22 | Oracle America, Inc. | Methods and apparatus to implement parallel transactions |
US8028133B2 (en) * | 2006-02-22 | 2011-09-27 | Oracle America, Inc. | Globally incremented variable or clock based methods and apparatus to implement parallel transactions |
US7991967B2 (en) | 2007-06-29 | 2011-08-02 | Microsoft Corporation | Using type stability to facilitate contention management |
-
2007
- 2007-06-29 US US11/824,353 patent/US7991967B2/en active Active
-
2008
- 2008-06-10 TW TW103109965A patent/TWI515661B/zh not_active IP Right Cessation
- 2008-06-10 TW TW097121596A patent/TWI455029B/zh not_active IP Right Cessation
- 2008-06-18 JP JP2010514981A patent/JP5435741B2/ja active Active
- 2008-06-18 WO PCT/US2008/067346 patent/WO2009006025A2/en active Application Filing
- 2008-06-18 EP EP08771367.3A patent/EP2176764B1/en active Active
- 2008-06-18 CN CN200880022472.XA patent/CN101689139B/zh active Active
-
2011
- 2011-08-02 US US13/196,569 patent/US8578105B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
TW200905568A (en) | 2009-02-01 |
CN101689139A (zh) | 2010-03-31 |
TWI455029B (zh) | 2014-10-01 |
EP2176764A2 (en) | 2010-04-21 |
US8578105B2 (en) | 2013-11-05 |
US20110289288A1 (en) | 2011-11-24 |
JP2010532531A (ja) | 2010-10-07 |
EP2176764A4 (en) | 2011-11-16 |
EP2176764B1 (en) | 2015-07-15 |
US20090006405A1 (en) | 2009-01-01 |
TW201426557A (zh) | 2014-07-01 |
WO2009006025A2 (en) | 2009-01-08 |
TWI515661B (zh) | 2016-01-01 |
CN101689139B (zh) | 2014-04-30 |
WO2009006025A3 (en) | 2009-03-05 |
US7991967B2 (en) | 2011-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5435741B2 (ja) | 競合管理を容易にするための型固定性の使用 | |
EP2972885B1 (en) | Memory object reference count management with improved scalability | |
US7908255B2 (en) | Transactional memory using buffered writes and enforced serialization order | |
US8239635B2 (en) | System and method for performing visible and semi-visible read operations in a software transactional memory | |
US8484438B2 (en) | Hierarchical bloom filters for facilitating concurrency control | |
US8595446B2 (en) | System and method for performing dynamic mixed mode read validation in a software transactional memory | |
KR101203297B1 (ko) | 직접 업데이트 소프트웨어 트랜잭션 메모리 | |
US8065490B2 (en) | Hardware acceleration of strongly atomic software transactional memory | |
US9513959B2 (en) | Contention management for a hardware transactional memory | |
US7899997B2 (en) | Systems and methods for implementing key-based transactional memory conflict detection | |
US7860847B2 (en) | Exception ordering in contention management to support speculative sequential semantics | |
US7840530B2 (en) | Parallel nested transactions in transactional memory | |
US8180986B2 (en) | Memory conflict detection via mapping of the physical heap to control access permissions to the memory | |
US20110246727A1 (en) | System and Method for Tracking References to Shared Objects Using Byte-Addressable Per-Thread Reference Counters | |
Dice et al. | Fast non-intrusive memory reclamation for highly-concurrent data structures | |
US8296742B2 (en) | Automatic native generation | |
US8001084B2 (en) | Memory allocator for optimistic data access | |
KR102546947B1 (ko) | 시대 기반 메모리 수집 기법과 포인터 기반 메모리 수집 기법 혼합을 위한 컴퓨터 시스템 및 그의 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110601 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110601 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130117 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130125 |
|
RD13 | Notification of appointment of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7433 Effective date: 20130228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20130301 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130423 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130625 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20130701 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131024 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20131031 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131119 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131119 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20131120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131206 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5435741 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |