DK2834739T3 - Transaktionsdiagnoseblok - Google Patents
Transaktionsdiagnoseblok Download PDFInfo
- Publication number
- DK2834739T3 DK2834739T3 DK12878813.0T DK12878813T DK2834739T3 DK 2834739 T3 DK2834739 T3 DK 2834739T3 DK 12878813 T DK12878813 T DK 12878813T DK 2834739 T3 DK2834739 T3 DK 2834739T3
- Authority
- DK
- Denmark
- Prior art keywords
- transaction
- instruction
- address
- program
- diagnostic
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0721—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
- G06F11/0724—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0775—Content or structure details of the error report, e.g. specific table structure, specific error fields
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Executing Machine-Instructions (AREA)
- Debugging And Monitoring (AREA)
- Storage Device Security (AREA)
- Advance Control (AREA)
- Medical Treatment And Welfare Office Work (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Claims (20)
1. Computerprogramprodukt til tilvejebringelse af diagnoseinformation om transaktionsafbrydelser, hvilket computerprogramprodukt omfatter: et computerlæsbart lagringsmedie læsbart af et behandlingskredsløb og som lagrer instruktioner til eksekvering af behandlingskredsløbet til udførelse af en fremgangsmåde omfattende: at detektere, med en processor, en afbrydelse afen transaktion, hvilken transaktion omfatter en eller flere instruktioner; hvor transaktionen er en indlejret transaktion; hvor en afbrydelsesbetingelse i hvilken som helst indlejringsdybde (nesting depth) forårsager alle niveauer af transaktionen at blive afbrudt; og transaktionen effektivt forsinker at afsætte transaktionslagre til hovedhukommelse indtil gennemførelse af en yderste transaktion; at bestemme, med processoren, hvorvidt diagnoseinformation skal lagres i en transaktionsdiagnoseblok (900) baseret på afbrydelsen; og baseret på at bestemmelsen indikerer at diagnoseinformation skal lagres, at lagre diagnoseinformation i transaktionsdiagnoseblokken, hvor diagnoseinformationen inkludereren adresse (912) afen instruktion svarende til transaktionen som blev afbrudt, hvor adressen af instruktionen er afhængig af en årsag til afbrydelsen af transaktionen, hvilken årsag tilvejebringes i en afbrydelseskode (908), og hvor: baseret på at afbrydelseskoden har en første værdi af en eller flere første værdier, hvor diagnoseinformationen inkluderer en adresse af en instruktion, der blev eksekveret, da afbrydelsen blev detekteret; baseret på at afbrydelseskoden har en anden værdi af en eller flere anden værdier og programundtagelsesbetingelse, som ikke er ophævende, hvor diagnoseinformationen inkluderer en adresse af en instruktion, der er forbi instruktionseksekveringen, da afbrydelsen blev detekteret; og baseret på at afbrydelseskoden har en tredje værdi af en eller flere tredje værdier, hvor diagnoseinformationen inkluderer en adresse afen instruktion, der er tidligere eller senere end instruktionseksekveringen, da afbrydelsen blev detekteret.
2. Computerprogramproduktet ifølge krav 1, hvor der er en flerhed af typer af transaktionsdiagnoseblokke, og bestemmelsen omfatter at tjekke (1502, 1504, 1506, 1508, 1510, 1512) hvorvidt en eller flere typer af transaktionsdiagnoseblokke skal lagres baseret på afbrydelsen.
3. Computerprogramproduktet ifølge krav 2, hvor flerheden af typer af transaktionsdiagnoseblokke omfatter: en programspecificeret transaktionsdiagnoseblok specificeret afen ikke-indskrænket transaktionsbegyndelsesinstruktion, en programforstyrrelses-transaktionsdiagnoseblok som skal anvendes til afbrydelser på grund afen forstyrrelse, og en standsningstransaktion-diagnoseblok som skal anvendes til afbrydelser på grund af en hvilken som helst programundtagelsesbetingelse, der resulterer i en standsning.
4. Computerprogramproduktet ifølge krav 2, hvor det at tjekke indikerer en flerhed af transaktionsdiagnoseblokke skal lagres baseret på afbrydelsen.
5. Computerprogramproduktet ifølge et hvilket som helst af de foregående krav, hvor transaktionsdiagnoseblokken yderligere omfatter en eller flere af: en transaktionsindlejringsdybde (906), en transaktionsafbrydelseskode (908), et konflikttegn (910), et eller flere programforstyrrelsesesparametre (918), indhold af et eller flere generelle formålsregistre (930) på tidspunktet for afbrydelsen, og modelafhængig diagnoseinformation (924).
6. Computerprogramproduktet ifølge krav 5, hvor transaktionsdiagnoseblokken yderligere omfatter en eller flere af: en undtagelsesadgangsidentifikation (914), en dataundtagelseskode (916), en programforstyrrelsesidentifikation (918), en transaktionsundtagelsesidentifikation (920), og en afbrydningshændelsesadresse (922).
7. Computerprogramproduktet ifølge krav 5, hvor fremgangsmåden yderligere omfatter at eksekvere en transaktionsafbrydelsesinstruktion til at afbryde transaktionen, hvor transaktionsafbrydelsesinstruktionen specificerer transaktionsafbrydelseskoden.
8. Computerprogramproduktet ifølge krav 1, hvor bestemmelsen omfatter at bestemme hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt i en transaktionsbegyndelsesinstruktion, hvor, baseret på at en gyldig transaktionsdiagnoseblokadresse tilvejebringes, diagnoseinformation lagres i en programspecificeret transaktionsdiagnoseblok.
9. Computerprogramproduktet ifølge krav 8, hvor transaktionsbegyndelsesinstruktionen iværksætter en ikke-indskrænket transaktion, hvor den ikke-indskrænkede transaktion er en yderste transaktion.
10. Computerprogramproduktet ifølge krav 9, hvor bestemmelsen hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt omfatter at tjekke et basisfelt af transaktionsbegyndelsesinstruktionen af den yderste transaktion, hvor et ikke-nul-basisfelt indikerer en gyldig transaktionsdiagnoseblokadresse.
11. Computerprogramproduktet ifølge krav 1, hvor der er en flerhed af typer af transaktionsdiagnoseblokke, og hvor lagringen omfatter at bestemme hvilken af flerheden af typer af diagnoseblokke skal lagres, hvor bestemmelsen omfatter: at tjekke hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt i en transaktionsbegyndelsesinstruktion, og baseret på det at tjekke indikereren gyldig transaktionsdiagnoseblokadresse, bestemmelsen indikerer at en programspecificeret transaktionsdiagnoseblok skal lagres; at tjekke hvorvidt afbrydelsen er på grund af en forstyrrelse, og baseret på at afbrydelsen er på grund afen forstyrrelse, bestemmelsen indikerer en programforstyrrelse-transaktionsdiagnoseblok skal lagres; og at tjekke hvorvidt afbrydelsen er på grund af en standsningsbetingelse, og baseret på at afbrydelsen er på grund af standsningsbetingelsen, bestemmelsen indikerer at en standsningstransaktionsdiagnoseblok skal lagres.
12. Computersystem til tilvejebringelse af diagnoseinformation om transaktionsafbrydelser, hvilket computersystem omfatter: en hukommelse; og en processor i kommunikation med hukommelsen, hvor computersystemet er konfigureret til at udføre en fremgangsmåde, hvilken fremgangsmåde omfatter: at detektere, med en processor, en afbrydelse af en transaktion, hvilken transaktion omfatter en eller flere instruktioner; hvor transaktionen er en indlejret transaktion; hvor en afbrydelsesbetingelse i hvilken som helst indlejringsdybde (nesting depth) forårsager alle niveauer af transaktionen at blive afbrudt; og transaktionen effektivt forsinker at afsætte transaktionslagre til hovedhukommelse indtil gennemførelse afen yderste transaktion; at bestemme, med processoren, hvorvidt diagnoseinformation skal lagres i en transaktionsdiagnoseblok (900) baseret på afbrydelsen; og baseret på at bestemmelsen indikerer at diagnoseinformation skal lagres, at lagre diagnoseinformation i transaktionsdiagnoseblokken, hvor diagnoseinformationen inkludereren adresse (912) afen instruktion svarende til transaktionen som blev afbrudt, hvor adressen af instruktionen er afhængig af en årsag til afbrydelsen af transaktionen, hvilken årsag tilvejebringes i en afbrydelseskode (908), og hvor: baseret på at afbrydelseskoden har en første værdi af en eller flere første værdier, hvor diagnoseinformationen inkluderer en adresse af en instruktion, der blev eksekvere, da afbrydelsen blev detekteret; baseret på at afbrydelseskoden har en anden værdi af en eller flere anden værdier og en programundtagelsesbetingelse, som ikke er ophævende, hvor diagnoseinformationen inkludereren adresse afen instruktion, der er forbi instruktionseksekveringen, da afbrydelsen blev detekteret; og baseret på at afbrydelseskoden har en tredje værdi af en eller flere tredje værdier, hvor diagnoseinformationen inkluderer en adresse af en instruktion, der er tidligere eller senere end instruktionseksekveringen, da afbrydelsen blev detekteret.
13. Computersystemet ifølge krav 12, hvor transaktionsdiagnoseblokken yderligere omfatter en eller flere af: en transaktionsindlejringsdybde, en transaktionsafbrydelseskode, et konflikt-tegn, et eller flere programforstyrrelsesparametre, indhold af et eller flere generelle formålsregistre på tidspunktet for afbrydelsen, og modelafhængig diagnoseinformation.
14. Computersystemet ifølge krav 13, hvor transaktionsblokken yderligere omfatter en eller flere af: en undtagelsesadgangsidentifikation, en dataundtagelseskode, en programforstyrrelsesidentifikation, en transaktionsundtagelsesidentifikation, og en afbrydningshændelsesadresse.
15. Computersystemet ifølge krav 13, hvor fremgangsmåden yderligere omfatter at eksekvere en transaktionsafbrydelsesinstruktion til at afbryde transaktionen, hvor transaktionsafbrydelsesinstruktionen specificerer transaktionsafbrydelseskoden.
16. Computersystemet ifølge krav 12, hvor bestemmelsen omfatter at bestemme hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt i en transaktionsbegyndelsesinstruktion, hvor, baseret på at en gyldig transaktionsdiagnoseblokadresse tilvejebringes, diagnoseinformation lagres i en programspecificeret transaktionsdiagnoseblok, transaktionsbegyndelsesinstruktionen iværksætter en ikke-indskrænket transaktion, hvor den ikke-indskrænkede transaktion er en yderste transaktion, og hvor bestemmelsen hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt omfatter at tjekke et basisfelt af transaktionsbegyndelsesinstruktionen af den yderste transaktion, hvor et ikke-nul-basisfelt indikerer en gyldig transaktionsdiagnoseblokadresse.
17. Computersystemet ifølge krav 12, hvor der er en flerhed af typer af transaktionsdiagnoseblokke, og hvor lagringen omfatter at bestemme hvilken af flerheden af typer af diagnoseblokke skal lagres, hvor bestemmelsen omfatter: at tjekke hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt i en transaktionsbegyndelsesinstruktion, og baseret på det at tjekke indikerer en gyldig transaktionsdiagnoseblokadresse, bestemmelsen indikererat en programspecificeret transaktionsdiagnoseblok skal lagres; at tjekke hvorvidt afbrydelsen er på grund af en forstyrrelse, og baseret på at afbrydelsen er på grund afen forstyrrelse, bestemmelsen indikerer en programforstyrrelse-transaktionsdiagnoseblok skal lagres; og at tjekke hvorvidt afbrydelsen er på grund af en standsningsbetingelse, og baseret på at afbrydelsen er på grund af standsningsbetingelsen, bestemmelsen indikerer at en standsningstransaktionsdiagnoseblok skal lagres.
18. Fremgangsmåde til tilvejebringelse af diagnoseinformation om transaktionsafbrydelser, hvilken fremgangsmåde omfatter: at detektere, med en processor, en afbrydelse afen transaktion, hvilken transaktion omfatter en eller flere instruktioner; hvor transaktionen er en indlejret transaktion; hvor en afbrydelsesbetingelse i hvilken som helst indlejringsdybde (nesting depth) forårsager alle niveauer af transaktionen at blive afbrudt; og transaktionen effektivt forsinker at afsætte transaktionslagre til hovedhukommelse indtil gennemførelse af en yderste transaktion; at bestemme, med processoren, hvorvidt diagnoseinformation skal lagres i en transaktionsdiagnoseblok (900) baseret på afbrydelsen; og baseret på at bestemmelsen indikerer at diagnoseinformation skal lagres, at lagre diagnoseinformation i transaktionsdiagnoseblokken, hvor diagnoseinformationen inkludereren adresse (912) afen instruktion svarende til transaktionen som blev afbrudt, hvor adressen af instruktionen er afhængig af en årsag til afbrydelsen af transaktionen, hvilken årsag tilvejebringes i en afbrydelseskode (908), og hvor: baseret på at afbrydelseskoden har en første værdi af en eller flere første værdier, hvor diagnoseinformationen inkludereren adresse afen instruktion, der blev eksekveret, da afbrydelsen blev detekteret; baseret på at afbrydelseskoden har en anden værdi af en eller flere anden værdier og en programundtagelsesbetingelse, som ikke er ophævende, hvor diagnoseinformationen inkluderer en adresse af en instruktion, der er forbi instruktionseksekveringen, da afbrydelsen blev detekteret; og baseret på at afbrydelseskoden har en tredje værdi af en eller flere tredje værdier, hvor diagnoseinformationen inkluderer en adresse afen instruktion, der er tidligere eller senere end instruktionseksekveringen, da afbrydelsen blev detekteret.
19. Fremgangsmåden ifølge krav 18, hvor bestemmelsen omfatter at bestemme hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt i en transaktionsbegyndelsesinstruktion, hvor, baseret på at en gyldig transaktionsdiagnoseblokadresse tilvejebringes, diagnoseinformation lagres i en programspecificeret transaktionsdiagnoseblok, transaktionsbegyndelsesinstruktionen iværksætter en ikke-indskrænket transaktion, hvor den ikke-indskrænkede transaktion er en yderste transaktion, og hvor bestemmelsen hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt omfatter at tjekke et basisfelt af transaktionsbegyndelsesinstruktionen af den yderste transaktion, hvor et ikke-nul-basisfelt indikerer en gyldig transaktionsdiagnoseblokadresse
20. Fremgangsmåden ifølge krav 18, hvor der er en flerhed af typer af transaktionsdiagnoseblokke, og hvor lagringen omfatter at bestemme hvilken af flerheden af typer af diagnoseblokke skal lagres, hvor bestemmelsen omfatter: at tjekke hvorvidt en gyldig transaktionsdiagnoseblokadresse er tilvejebragt i en transaktionsbegyndelsesinstruktion, og baseret på det at tjekke indikereren gyldig transaktionsdiagnoseblokadresse, bestemmelsen indikerer at en programspecificeret transaktionsdiagnoseblok skal lagres; at tjekke hvorvidt afbrydelsen er på grund af en forstyrrelse, og baseret på at afbrydelsen er på grund afen forstyrrelse, bestemmelsen indikerer en programforstyrrelse-transaktionsdiagnoseblok skal lagres; og at tjekke hvorvidt afbrydelsen er på grund af en standsningsbetingelse, og baseret på at afbrydelsen er på grund af standsningsbetingelsen, bestemmelsen indikerer at en standsningstransaktionsdiagnoseblok skal lagres.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/524,916 US8880959B2 (en) | 2012-06-15 | 2012-06-15 | Transaction diagnostic block |
PCT/IB2012/056622 WO2013186600A1 (en) | 2012-06-15 | 2012-11-22 | Transaction diagnostic block |
Publications (1)
Publication Number | Publication Date |
---|---|
DK2834739T3 true DK2834739T3 (da) | 2018-10-22 |
Family
ID=49757118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DK12878813.0T DK2834739T3 (da) | 2012-06-15 | 2012-11-22 | Transaktionsdiagnoseblok |
Country Status (23)
Country | Link |
---|---|
US (2) | US8880959B2 (da) |
EP (1) | EP2834739B1 (da) |
JP (1) | JP6138249B2 (da) |
KR (1) | KR101599181B1 (da) |
CN (1) | CN104335181B (da) |
AU (1) | AU2012382775B2 (da) |
BR (1) | BR112014031335B1 (da) |
CA (1) | CA2874175C (da) |
DK (1) | DK2834739T3 (da) |
ES (1) | ES2689560T3 (da) |
HR (1) | HRP20181576T8 (da) |
HU (1) | HUE040014T2 (da) |
IL (1) | IL236253B (da) |
LT (1) | LT2834739T (da) |
MX (1) | MX338375B (da) |
PL (1) | PL2834739T3 (da) |
PT (1) | PT2834739T (da) |
RU (1) | RU2571397C2 (da) |
SG (1) | SG11201407475QA (da) |
SI (1) | SI2834739T1 (da) |
TW (1) | TWI537718B (da) |
WO (1) | WO2013186600A1 (da) |
ZA (1) | ZA201408077B (da) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130339680A1 (en) | 2012-06-15 | 2013-12-19 | International Business Machines Corporation | Nontransactional store instruction |
US9436477B2 (en) | 2012-06-15 | 2016-09-06 | International Business Machines Corporation | Transaction abort instruction |
US10437602B2 (en) | 2012-06-15 | 2019-10-08 | International Business Machines Corporation | Program interruption filtering in transactional execution |
US9772854B2 (en) | 2012-06-15 | 2017-09-26 | International Business Machines Corporation | Selectively controlling instruction execution in transactional processing |
US9384004B2 (en) | 2012-06-15 | 2016-07-05 | International Business Machines Corporation | Randomized testing within transactional execution |
US9336046B2 (en) | 2012-06-15 | 2016-05-10 | International Business Machines Corporation | Transaction abort processing |
US9740549B2 (en) | 2012-06-15 | 2017-08-22 | International Business Machines Corporation | Facilitating transaction completion subsequent to repeated aborts of the transaction |
US9361115B2 (en) | 2012-06-15 | 2016-06-07 | International Business Machines Corporation | Saving/restoring selected registers in transactional processing |
US9448796B2 (en) | 2012-06-15 | 2016-09-20 | International Business Machines Corporation | Restricted instructions in transactional execution |
US9348642B2 (en) | 2012-06-15 | 2016-05-24 | International Business Machines Corporation | Transaction begin/end instructions |
EP3084615B1 (en) * | 2013-12-17 | 2020-06-24 | Intel Corporation | Detection of unauthorized memory modification and access using transactional memory |
US10152540B2 (en) | 2014-10-10 | 2018-12-11 | Qualcomm Incorporated | Linking thumbnail of image to web page |
US10496311B2 (en) * | 2017-01-19 | 2019-12-03 | International Business Machines Corporation | Run-time instrumentation of guarded storage event processing |
US10725685B2 (en) | 2017-01-19 | 2020-07-28 | International Business Machines Corporation | Load logical and shift guarded instruction |
US10452288B2 (en) | 2017-01-19 | 2019-10-22 | International Business Machines Corporation | Identifying processor attributes based on detecting a guarded storage event |
US10496292B2 (en) | 2017-01-19 | 2019-12-03 | International Business Machines Corporation | Saving/restoring guarded storage controls in a virtualized environment |
US10579377B2 (en) * | 2017-01-19 | 2020-03-03 | International Business Machines Corporation | Guarded storage event handling during transactional execution |
US10732858B2 (en) | 2017-01-19 | 2020-08-04 | International Business Machines Corporation | Loading and storing controls regulating the operation of a guarded storage facility |
US10831509B2 (en) | 2017-02-23 | 2020-11-10 | Ab Initio Technology Llc | Dynamic execution of parameterized applications for the processing of keyed network data streams |
US11947978B2 (en) | 2017-02-23 | 2024-04-02 | Ab Initio Technology Llc | Dynamic execution of parameterized applications for the processing of keyed network data streams |
Family Cites Families (145)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1174370A (en) | 1980-05-19 | 1984-09-11 | Hidekazu Matsumoto | Data processing unit with pipelined operands |
US5471591A (en) | 1990-06-29 | 1995-11-28 | Digital Equipment Corporation | Combined write-operand queue and read-after-write dependency scoreboard |
DE4216871C2 (de) | 1991-05-21 | 2001-09-06 | Digital Equipment Corp | Ausführungsordnen zum Sicherstellen der Serialisierbarkeit verteilter Transaktionen |
US5701480A (en) | 1991-10-17 | 1997-12-23 | Digital Equipment Corporation | Distributed multi-version commitment ordering protocols for guaranteeing serializability during transaction processing |
WO1994027215A1 (en) | 1993-05-07 | 1994-11-24 | Apple Computer, Inc. | Method for decoding guest instructions for a host computer |
US5925125A (en) | 1993-06-24 | 1999-07-20 | International Business Machines Corporation | Apparatus and method for pre-verifying a computer instruction set to prevent the initiation of the execution of undefined instructions |
US5551013A (en) | 1994-06-03 | 1996-08-27 | International Business Machines Corporation | Multiprocessor for hardware emulation |
US5748964A (en) | 1994-12-20 | 1998-05-05 | Sun Microsystems, Inc. | Bytecode program interpreter apparatus and method with pre-verification of data type restrictions |
US5655100A (en) | 1995-03-31 | 1997-08-05 | Sun Microsystems, Inc. | Transaction activation processor for controlling memory transaction execution in a packet switched cache coherent multiprocessor system |
DE69629495T2 (de) | 1995-10-06 | 2004-06-09 | Advanced Micro Devices, Inc., Sunnyvale | Vereinheitlichter multifunktions-operationsverteiler für die ungeordnete befehlsexekution in einem superskalaren prozessor |
US5790825A (en) | 1995-11-08 | 1998-08-04 | Apple Computer, Inc. | Method for emulating guest instructions on a host computer through dynamic recompilation of host instructions |
JPH103416A (ja) * | 1996-06-14 | 1998-01-06 | Canon Inc | 情報処理装置およびその方法 |
US6035313A (en) | 1997-03-24 | 2000-03-07 | Motorola, Inc. | Memory address generator for an FFT |
US7076784B1 (en) | 1997-10-28 | 2006-07-11 | Microsoft Corporation | Software component execution management using context objects for tracking externally-defined intrinsic properties of executing software components within an execution environment |
US6000029A (en) | 1997-11-03 | 1999-12-07 | Motorola, Inc. | Method and apparatus for affecting subsequent instruction processing in a data processor |
US6009261A (en) | 1997-12-16 | 1999-12-28 | International Business Machines Corporation | Preprocessing of stored target routines for emulating incompatible instructions on a target processor |
US6119129A (en) * | 1998-05-14 | 2000-09-12 | Sun Microsystems, Inc. | Multi-threaded journaling in a configuration database |
US6308255B1 (en) | 1998-05-26 | 2001-10-23 | Advanced Micro Devices, Inc. | Symmetrical multiprocessing bus and chipset used for coprocessor support allowing non-native code to run in a system |
EP0992916A1 (en) | 1998-10-06 | 2000-04-12 | Texas Instruments Inc. | Digital signal processor |
US6463582B1 (en) | 1998-10-21 | 2002-10-08 | Fujitsu Limited | Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method |
US7761857B1 (en) | 1999-10-13 | 2010-07-20 | Robert Bedichek | Method for switching between interpretation and dynamic translation in a processor system based upon code sequence execution counts |
US6738892B1 (en) | 1999-10-20 | 2004-05-18 | Transmeta Corporation | Use of enable bits to control execution of selected instructions |
JP3776653B2 (ja) | 1999-11-24 | 2006-05-17 | 富士通株式会社 | 演算処理装置 |
US6754809B1 (en) | 1999-12-30 | 2004-06-22 | Texas Instruments Incorporated | Data processing apparatus with indirect register file access |
US6665863B1 (en) | 2000-05-31 | 2003-12-16 | Microsoft Corporation | Data referencing within a database graph |
AU2001283163A1 (en) | 2000-08-04 | 2002-02-18 | Carr Scott Software Incorporated | Automatic transaction management |
US6671686B2 (en) | 2000-11-02 | 2003-12-30 | Guy Pardon | Decentralized, distributed internet data management |
US7346632B2 (en) | 2001-02-22 | 2008-03-18 | International Business Machines Corporation | Mechanism for executing nested transactions in an execution environment supporting flat transactions only |
US6963919B1 (en) | 2001-02-28 | 2005-11-08 | Agilent Technologies, Inc. | Method and system for improving computer network performance |
US6745272B2 (en) | 2001-04-04 | 2004-06-01 | Advanced Micro Devices, Inc. | System and method of increasing bandwidth for issuing ordered transactions into a distributed communication system |
US7185234B1 (en) | 2001-04-30 | 2007-02-27 | Mips Technologies, Inc. | Trace control from hardware and software |
US7305678B2 (en) | 2001-05-17 | 2007-12-04 | International Business Machines Corporation | Method and system for reducing synchronization waits when allocating sequenced identifiers in a multi-threaded server |
KR100625595B1 (ko) | 2001-05-28 | 2006-09-20 | 한국전자통신연구원 | 트랜잭션 처리 시스템의 병렬 로깅 방법 및 트랜잭션 로그 처리 시스템 |
US7185183B1 (en) | 2001-08-02 | 2007-02-27 | Mips Technologies, Inc. | Atomic update of CPO state |
US20060218556A1 (en) | 2001-09-28 | 2006-09-28 | Nemirovsky Mario D | Mechanism for managing resource locking in a multi-threaded environment |
US7546446B2 (en) | 2002-03-08 | 2009-06-09 | Ip-First, Llc | Selective interrupt suppression |
US6892286B2 (en) | 2002-09-30 | 2005-05-10 | Sun Microsystems, Inc. | Shared memory multiprocessor memory model verification system and method |
US7103597B2 (en) | 2002-10-03 | 2006-09-05 | Mcgoveran David O | Adaptive transaction manager for complex transactions and business process |
US7634638B1 (en) | 2002-10-22 | 2009-12-15 | Mips Technologies, Inc. | Instruction encoding for system register bit set and clear |
US20040117689A1 (en) * | 2002-12-12 | 2004-06-17 | International Business Machines Corporation | Method and system for diagnostic approach for fault isolation at device level on peripheral component interconnect (PCI) bus |
US7568023B2 (en) | 2002-12-24 | 2009-07-28 | Hewlett-Packard Development Company, L.P. | Method, system, and data structure for monitoring transaction performance in a managed computer network environment |
US7398355B1 (en) | 2003-02-13 | 2008-07-08 | Sun Microsystems, Inc. | Avoiding locks by transactionally executing critical sections |
US7269693B2 (en) | 2003-02-13 | 2007-09-11 | Sun Microsystems, Inc. | Selectively monitoring stores to support transactional program execution |
US7269717B2 (en) | 2003-02-13 | 2007-09-11 | Sun Microsystems, Inc. | Method for reducing lock manipulation overhead during access to critical code sections |
US7398359B1 (en) | 2003-04-30 | 2008-07-08 | Silicon Graphics, Inc. | System and method for performing memory operations in a computing system |
US7801851B2 (en) | 2003-06-30 | 2010-09-21 | Gravic, Inc. | Method for ensuring referential integrity in multi-threaded replication engines |
US7836450B2 (en) | 2003-08-28 | 2010-11-16 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
US7269607B2 (en) * | 2003-09-29 | 2007-09-11 | International Business Machines Coproartion | Method and information technology infrastructure for establishing a log point for automatic recovery of federated databases to a prior point in time |
US7206903B1 (en) | 2004-07-20 | 2007-04-17 | Sun Microsystems, Inc. | Method and apparatus for releasing memory locations during transactional execution |
US7395382B1 (en) * | 2004-08-10 | 2008-07-01 | Sun Microsystems, Inc. | Hybrid software/hardware transactional memory |
US7865701B1 (en) | 2004-09-14 | 2011-01-04 | Azul Systems, Inc. | Concurrent atomic execution |
US20060064508A1 (en) | 2004-09-17 | 2006-03-23 | Ramesh Panwar | Method and system to store and retrieve message packet data in a communications network |
US7373554B2 (en) | 2004-09-24 | 2008-05-13 | Oracle International Corporation | Techniques for automatic software error diagnostics and correction |
US7856537B2 (en) | 2004-09-30 | 2010-12-21 | Intel Corporation | Hybrid hardware and software implementation of transactional memory access |
US7984248B2 (en) | 2004-12-29 | 2011-07-19 | Intel Corporation | Transaction based shared data operations in a multiprocessor environment |
US7631073B2 (en) * | 2005-01-27 | 2009-12-08 | International Business Machines Corporation | Method and apparatus for exposing monitoring violations to the monitored application |
US20060212757A1 (en) | 2005-03-15 | 2006-09-21 | International Business Machines Corporation | Method, system, and program product for managing computer-based interruptions |
US7421544B1 (en) | 2005-04-04 | 2008-09-02 | Sun Microsystems, Inc. | Facilitating concurrent non-transactional execution in a transactional memory system |
US7496726B1 (en) | 2005-04-18 | 2009-02-24 | Sun Microsystems, Inc. | Controlling contention via transactional timers among conflicting transactions issued by processors operating in insistent or polite mode |
US8799882B2 (en) * | 2005-12-07 | 2014-08-05 | Microsoft Corporation | Compiler support for optimizing decomposed software transactional memory operations |
US8117605B2 (en) | 2005-12-19 | 2012-02-14 | Oracle America, Inc. | Method and apparatus for improving transactional memory interactions by tracking object visibility |
US7730286B2 (en) | 2005-12-30 | 2010-06-01 | Intel Corporation | Software assisted nested hardware transactions |
US7810072B2 (en) | 2006-01-06 | 2010-10-05 | International Business Machines Corporation | Exception thrower |
US20070186056A1 (en) | 2006-02-07 | 2007-08-09 | Bratin Saha | Hardware acceleration for a software transactional memory system |
US20070198978A1 (en) | 2006-02-22 | 2007-08-23 | David Dice | Methods and apparatus to implement parallel transactions |
US8099538B2 (en) | 2006-03-29 | 2012-01-17 | Intel Corporation | Increasing functionality of a reader-writer lock |
US8180977B2 (en) | 2006-03-30 | 2012-05-15 | Intel Corporation | Transactional memory in out-of-order processors |
US7930695B2 (en) | 2006-04-06 | 2011-04-19 | Oracle America, Inc. | Method and apparatus for synchronizing threads on a processor that supports transactional memory |
US7636829B2 (en) | 2006-05-02 | 2009-12-22 | Intel Corporation | System and method for allocating and deallocating memory within transactional code |
US7707394B2 (en) | 2006-05-30 | 2010-04-27 | Arm Limited | Reducing the size of a data stream produced during instruction tracing |
US7849446B2 (en) | 2006-06-09 | 2010-12-07 | Oracle America, Inc. | Replay debugging |
US20070300013A1 (en) | 2006-06-21 | 2007-12-27 | Manabu Kitamura | Storage system having transaction monitoring capability |
US20080005504A1 (en) | 2006-06-30 | 2008-01-03 | Jesse Barnes | Global overflow method for virtualized transactional memory |
US20080016325A1 (en) | 2006-07-12 | 2008-01-17 | Laudon James P | Using windowed register file to checkpoint register state |
US7617421B2 (en) | 2006-07-27 | 2009-11-10 | Sun Microsystems, Inc. | Method and apparatus for reporting failure conditions during transactional execution |
US7865885B2 (en) | 2006-09-27 | 2011-01-04 | Intel Corporation | Using transactional memory for precise exception handling in aggressive dynamic binary optimizations |
US20080086516A1 (en) | 2006-10-04 | 2008-04-10 | Oracle International | Automatically changing a database system's redo transport mode to dynamically adapt to changing workload and network conditions |
US7669040B2 (en) | 2006-12-15 | 2010-02-23 | Sun Microsystems, Inc. | Method and apparatus for executing a long transaction |
JP2008165370A (ja) | 2006-12-27 | 2008-07-17 | Internatl Business Mach Corp <Ibm> | オンライントランザクション処理を分割し、分散環境で実行するための方法および装置。 |
US8086827B2 (en) | 2006-12-28 | 2011-12-27 | Intel Corporation | Mechanism for irrevocable transactions |
US7802136B2 (en) | 2006-12-28 | 2010-09-21 | Intel Corporation | Compiler technique for efficient register checkpointing to support transaction roll-back |
US7627743B2 (en) | 2007-01-12 | 2009-12-01 | Andes Technology Corporation | Method and circuit implementation for multiple-word transfer into/from memory subsystems |
GB2446831B (en) * | 2007-02-22 | 2011-06-15 | Advanced Risc Mach Ltd | Selective disabling of diagnostic functions within a data processing system |
US20080244544A1 (en) | 2007-03-29 | 2008-10-02 | Naveen Neelakantam | Using hardware checkpoints to support software based speculation |
US8332374B2 (en) | 2007-04-13 | 2012-12-11 | Oracle America, Inc. | Efficient implicit privatization of transactional memory |
US8117403B2 (en) | 2007-05-14 | 2012-02-14 | International Business Machines Corporation | Transactional memory system which employs thread assists using address history tables |
US9009452B2 (en) | 2007-05-14 | 2015-04-14 | International Business Machines Corporation | Computing system with transactional memory using millicode assists |
US7814378B2 (en) | 2007-05-18 | 2010-10-12 | Oracle America, Inc. | Verification of memory consistency and transactional memory |
US20080320282A1 (en) | 2007-06-22 | 2008-12-25 | Morris Robert P | Method And Systems For Providing Transaction Support For Executable Program Components |
US8266387B2 (en) | 2007-06-27 | 2012-09-11 | Microsoft Corporation | Leveraging transactional memory hardware to accelerate virtualization emulation |
US7779232B2 (en) | 2007-08-28 | 2010-08-17 | International Business Machines Corporation | Method and apparatus for dynamically managing instruction buffer depths for non-predicted branches |
US7904434B2 (en) | 2007-09-14 | 2011-03-08 | Oracle International Corporation | Framework for handling business transactions |
US7890472B2 (en) | 2007-09-18 | 2011-02-15 | Microsoft Corporation | Parallel nested transactions in transactional memory |
US20090138890A1 (en) | 2007-11-21 | 2009-05-28 | Arm Limited | Contention management for a hardware transactional memory |
CN101170747A (zh) | 2007-11-30 | 2008-04-30 | 中兴通讯股份有限公司 | 中继状态调节方法和装置 |
US8195898B2 (en) | 2007-12-27 | 2012-06-05 | Intel Corporation | Hybrid transactions for low-overhead speculative parallelization |
US8706982B2 (en) * | 2007-12-30 | 2014-04-22 | Intel Corporation | Mechanisms for strong atomicity in a transactional memory system |
US8140497B2 (en) | 2007-12-31 | 2012-03-20 | Oracle America, Inc. | System and method for implementing nonblocking zero-indirection transactional memory |
US7966459B2 (en) | 2007-12-31 | 2011-06-21 | Oracle America, Inc. | System and method for supporting phased transactional memory modes |
US8041900B2 (en) | 2008-01-15 | 2011-10-18 | Oracle America, Inc. | Method and apparatus for improving transactional memory commit latency |
US8176280B2 (en) | 2008-02-25 | 2012-05-08 | International Business Machines Corporation | Use of test protection instruction in computing environments that support pageable guests |
US8161273B2 (en) | 2008-02-26 | 2012-04-17 | Oracle America, Inc. | Method and apparatus for programmatically rewinding a register inside a transaction |
US8688628B2 (en) | 2008-02-29 | 2014-04-01 | Red Hat, Inc. | Nested queued transaction manager |
US20090260011A1 (en) | 2008-04-14 | 2009-10-15 | Microsoft Corporation | Command line transactions |
JP5385545B2 (ja) | 2008-04-17 | 2014-01-08 | インターナショナル・ビジネス・マシーンズ・コーポレーション | トランザクションの実行を制御する装置及び方法 |
US9367363B2 (en) | 2008-05-12 | 2016-06-14 | Oracle America, Inc. | System and method for integrating best effort hardware mechanisms for supporting transactional memory |
US7996686B2 (en) | 2008-07-07 | 2011-08-09 | International Business Machines Corporation | Branch trace methodology |
CN102144218A (zh) | 2008-07-28 | 2011-08-03 | 超威半导体公司 | 可虚拟化的先进同步设备 |
US8191046B2 (en) | 2008-10-06 | 2012-05-29 | Microsoft Corporation | Checking transactional memory implementations |
JP4702962B2 (ja) | 2008-11-12 | 2011-06-15 | インターナショナル・ビジネス・マシーンズ・コーポレーション | メモリ制御装置、プログラム及び方法 |
US8789057B2 (en) | 2008-12-03 | 2014-07-22 | Oracle America, Inc. | System and method for reducing serialization in transactional memory using gang release of blocked threads |
US20100153776A1 (en) | 2008-12-12 | 2010-06-17 | Sun Microsystems, Inc. | Using safepoints to provide precise exception semantics for a virtual machine |
US9274855B2 (en) | 2008-12-24 | 2016-03-01 | Intel Corporation | Optimization for safe elimination of weak atomicity overhead |
US10210018B2 (en) | 2008-12-24 | 2019-02-19 | Intel Corporation | Optimizing quiescence in a software transactional memory (STM) system |
US9785462B2 (en) * | 2008-12-30 | 2017-10-10 | Intel Corporation | Registering a user-handler in hardware for transactional memory event handling |
US8799582B2 (en) | 2008-12-30 | 2014-08-05 | Intel Corporation | Extending cache coherency protocols to support locally buffered data |
CN101819518B (zh) | 2009-02-26 | 2013-09-11 | 国际商业机器公司 | 在事务内存中快速保存上下文的方法和装置 |
US8266107B2 (en) | 2009-03-11 | 2012-09-11 | International Business Machines Corporation | Method for mirroring a log file by threshold driven synchronization |
US9940138B2 (en) | 2009-04-08 | 2018-04-10 | Intel Corporation | Utilization of register checkpointing mechanism with pointer swapping to resolve multithreading mis-speculations |
US8973004B2 (en) | 2009-06-26 | 2015-03-03 | Oracle America, Inc. | Transactional locking with read-write locks in transactional memory systems |
US8489864B2 (en) | 2009-06-26 | 2013-07-16 | Microsoft Corporation | Performing escape actions in transactions |
US8229907B2 (en) | 2009-06-30 | 2012-07-24 | Microsoft Corporation | Hardware accelerated transactional memory system with open nested transactions |
US8281185B2 (en) | 2009-06-30 | 2012-10-02 | Oracle America, Inc. | Advice-based feedback for transactional execution |
US8688964B2 (en) | 2009-07-20 | 2014-04-01 | Microchip Technology Incorporated | Programmable exception processing latency |
GB2472620B (en) | 2009-08-12 | 2016-05-18 | Cloudtran Inc | Distributed transaction processing |
US8392694B2 (en) | 2009-09-15 | 2013-03-05 | International Business Machines Corporation | System and method for software initiated checkpoint operations |
US8327188B2 (en) | 2009-11-13 | 2012-12-04 | Oracle America, Inc. | Hardware transactional memory acceleration through multiple failure recovery |
US8290991B2 (en) | 2009-12-15 | 2012-10-16 | Juniper Networks, Inc. | Atomic deletion of database data categories |
US9092253B2 (en) | 2009-12-15 | 2015-07-28 | Microsoft Technology Licensing, Llc | Instrumentation of hardware assisted transactional memory system |
US8316194B2 (en) | 2009-12-15 | 2012-11-20 | Intel Corporation | Mechanisms to accelerate transactions using buffered stores |
US8095824B2 (en) | 2009-12-15 | 2012-01-10 | Intel Corporation | Performing mode switching in an unbounded transactional memory (UTM) system |
US8301849B2 (en) | 2009-12-23 | 2012-10-30 | Intel Corporation | Transactional memory in out-of-order processors with XABORT having immediate argument |
US20110208921A1 (en) | 2010-02-19 | 2011-08-25 | Pohlack Martin T | Inverted default semantics for in-speculative-region memory accesses |
US8739164B2 (en) | 2010-02-24 | 2014-05-27 | Advanced Micro Devices, Inc. | Automatic suspend atomic hardware transactional memory in response to detecting an implicit suspend condition and resume thereof |
US8438568B2 (en) | 2010-02-24 | 2013-05-07 | International Business Machines Corporation | Speculative thread execution with hardware transactional memory |
US8464261B2 (en) | 2010-03-31 | 2013-06-11 | Oracle International Corporation | System and method for executing a transaction using parallel co-transactions |
US8631223B2 (en) | 2010-05-12 | 2014-01-14 | International Business Machines Corporation | Register file supporting transactional processing |
US9626187B2 (en) | 2010-05-27 | 2017-04-18 | International Business Machines Corporation | Transactional memory system supporting unbroken suspended execution |
US20110302143A1 (en) | 2010-06-02 | 2011-12-08 | Microsoft Corporation | Multi-version concurrency with ordered timestamps |
US9880848B2 (en) | 2010-06-11 | 2018-01-30 | Advanced Micro Devices, Inc. | Processor support for hardware transactional memory |
US8560816B2 (en) | 2010-06-30 | 2013-10-15 | Oracle International Corporation | System and method for performing incremental register checkpointing in transactional memory |
US8479053B2 (en) | 2010-07-28 | 2013-07-02 | Intel Corporation | Processor with last branch record register storing transaction indicator |
US8561033B2 (en) | 2010-07-30 | 2013-10-15 | International Business Machines Corporation | Selective branch-triggered trace generation apparatus and method |
US8549504B2 (en) | 2010-09-25 | 2013-10-01 | Intel Corporation | Apparatus, method, and system for providing a decision mechanism for conditional commits in an atomic region |
US8442962B2 (en) * | 2010-12-28 | 2013-05-14 | Sap Ag | Distributed transaction management using two-phase commit optimization |
-
2012
- 2012-06-15 US US13/524,916 patent/US8880959B2/en active Active
- 2012-11-14 RU RU2012148400/08A patent/RU2571397C2/ru active
- 2012-11-22 PT PT12878813T patent/PT2834739T/pt unknown
- 2012-11-22 HU HUE12878813A patent/HUE040014T2/hu unknown
- 2012-11-22 AU AU2012382775A patent/AU2012382775B2/en active Active
- 2012-11-22 ES ES12878813.0T patent/ES2689560T3/es active Active
- 2012-11-22 KR KR1020147030969A patent/KR101599181B1/ko active IP Right Grant
- 2012-11-22 SG SG11201407475QA patent/SG11201407475QA/en unknown
- 2012-11-22 WO PCT/IB2012/056622 patent/WO2013186600A1/en active Application Filing
- 2012-11-22 MX MX2014015290A patent/MX338375B/es active IP Right Grant
- 2012-11-22 JP JP2015516691A patent/JP6138249B2/ja active Active
- 2012-11-22 CA CA2874175A patent/CA2874175C/en active Active
- 2012-11-22 CN CN201280073457.4A patent/CN104335181B/zh active Active
- 2012-11-22 PL PL12878813T patent/PL2834739T3/pl unknown
- 2012-11-22 DK DK12878813.0T patent/DK2834739T3/da active
- 2012-11-22 LT LTEP12878813.0T patent/LT2834739T/lt unknown
- 2012-11-22 EP EP12878813.0A patent/EP2834739B1/en active Active
- 2012-11-22 BR BR112014031335-0A patent/BR112014031335B1/pt active IP Right Grant
- 2012-11-22 SI SI201231395T patent/SI2834739T1/sl unknown
-
2013
- 2013-03-08 US US13/789,857 patent/US8887003B2/en active Active
- 2013-05-10 TW TW102116781A patent/TWI537718B/zh active
-
2014
- 2014-11-04 ZA ZA2014/08077A patent/ZA201408077B/en unknown
- 2014-12-14 IL IL236253A patent/IL236253B/en active IP Right Grant
-
2018
- 2018-10-02 HR HRP20181576TT patent/HRP20181576T8/hr unknown
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DK2862092T3 (da) | At lagre/gendanne valgte registre i transaktionel behandling | |
AU2013276133B2 (en) | Transactional processing | |
DK2834739T3 (da) | Transaktionsdiagnoseblok | |
US9983882B2 (en) | Selectively controlling instruction execution in transactional processing | |
US9448796B2 (en) | Restricted instructions in transactional execution | |
US8887002B2 (en) | Transactional execution branch indications | |
DK2862057T3 (da) | Programafbrydelsesfiltrering i transaktionsudføring |