JPWO2014064914A1 - データ格納装置、データ格納方法およびプログラム - Google Patents
データ格納装置、データ格納方法およびプログラム Download PDFInfo
- Publication number
- JPWO2014064914A1 JPWO2014064914A1 JP2014543142A JP2014543142A JPWO2014064914A1 JP WO2014064914 A1 JPWO2014064914 A1 JP WO2014064914A1 JP 2014543142 A JP2014543142 A JP 2014543142A JP 2014543142 A JP2014543142 A JP 2014543142A JP WO2014064914 A1 JPWO2014064914 A1 JP WO2014064914A1
- Authority
- JP
- Japan
- Prior art keywords
- value
- hash entry
- hash
- entry
- counter
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
Abstract
Description
本発明は、上記プログラムが格納された、コンピュータ読み取り可能な不揮発性の記憶媒体によっても実現される。
[第1の実施形態]
図1を参照して、本発明の第1の実施形態におけるシステム(データを格納する装置)の構成を説明する。このシステムは、スレッド2を実行する複数のプロセッサ1と、メモリ10とを備える。
本実施形態では、-1を参照カウンタにおける特定の値とするハッシュ表7のハッシュ・エントリに対する操作について説明する。各スレッド2が検索・挿入操作と参照削除処理を対にして行なうようになっていると、参照カウンタの値は常に0以上となる。そのため、本実施形態では、ハッシュ表7からハッシュ・エントリを削除する操作は、検索・挿入操作および参照削除処理とは別に用意する。
この出願は、2012年10月24日に出願された日本出願特願2012−234776を基礎とする優先権を主張し、その開示の全てをここに取り込む。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
プロセスの実行命令を受けたときに、当該プロセスに含まれる前記ハッシュ・エントリの操作に応じて当該ハッシュ・エントリに対応する前記カウンタの値をカウントアップ又はダウンする第1の実行手段と、
前記ハッシュ・エントリの削除操作を含むプロセスの実行命令を受けたときに、当該ハッシュ・エントリに対応する前記カウンタの値に応じて、前記ハッシュ・エントリの削除操作を実行する第2の実行手段と
を備えることを特徴とするデータ格納装置。
前記プロセッサが、プロセスの実行命令を受けたときに、当該プロセスに含まれる前記ハッシュ・エントリの操作に応じて当該ハッシュ・エントリに対応する前記カウンタの値をカウントアップ又はダウンする第1の実行ステップと、
前記プロセッサが、前記ハッシュ・エントリの削除操作を含むプロセスの実行命令を受けたときに、当該ハッシュ・エントリに対応する前記カウンタの値に応じて、前記ハッシュ・エントリの削除操作を実行する第2の実行ステップと
を備えることを特徴とするデータ格納方法。
ハッシュ表のハッシュ・エントリのそれぞれに対応付けられたカウンタを格納する格納手段、
プロセスの実行命令を受けたときに、当該プロセスに含まれる前記ハッシュ・エントリの操作に応じて当該ハッシュ・エントリに対応する前記カウンタの値をカウントアップ又はダウンする第1の実行手段、
前記ハッシュ・エントリの削除操作を含むプロセスの実行命令を受けたときに、当該ハッシュ・エントリに対応する前記カウンタの値に応じて、前記ハッシュ・エントリの削除操作を実行する第2の実行手段
として機能させるためのプログラム。
2 スレッド
3 プログラム
4 データ
5 リスト
6 配列
7 ハッシュ表
10 メモリ
11 プロセッサ
21 スレッド
31 プログラム
41 データ
51 リスト
61 配列
71 ハッシュ表
100 メモリ
Claims (7)
- ハッシュ表のハッシュ・エントリのそれぞれに対応付けられたカウンタを格納する格納手段と、
プロセスの実行命令を受けたときに、当該プロセスに含まれる前記ハッシュ・エントリの操作に応じて当該ハッシュ・エントリに対応する前記カウンタの値をカウントアップ又はダウンする第1の実行手段と、
前記ハッシュ・エントリの削除操作を含むプロセスの実行命令を受けたときに、当該ハッシュ・エントリに対応する前記カウンタの値に応じて、前記ハッシュ・エントリの削除操作を実行する第2の実行手段と
を備えることを特徴とするデータ格納装置。 - 所定のタイミングで前記第2の実行手段が前記ハッシュ・エントリの削除操作を含むプロセスの実行命令を受けたとき、前記第1の実行手段が実行命令を受けた前記プロセスは、前記第2の実行手段が実行命令を受けた前記プロセスとは別のプロセスであることを特徴とする請求項1に記載のデータ格納装置。
- 前記第1の実行手段が実行命令を受けた前記プロセスは、前記ハッシュ・エントリの検索操作、挿入操作又は削除操作のうち、少なくとも複数の異なる操作を含むことを特徴とする請求項1又は2に記載のデータ格納装置。
- 前記第1の実行手段は、前記ハッシュ・エントリの操作が検索操作であり、かつ、前記カウンタの値が特定の値ではないとき、前記カウンタの値をカウントアップすることを特徴とする請求項3に記載のデータ格納装置。
- 前記第1の実行手段は、前記ハッシュ・エントリの操作が削除操作であり、かつ、前記カウンタの値が特定の値ではないとき、前記カウンタの値をカウントダウンすることを特徴とする請求項3又は4に記載のデータ格納装置。
- プロセッサと、ハッシュ表のハッシュ・エントリのそれぞれに対応付けられたカウンタを格納する格納手段とを備える装置において実施される方法であって、
前記プロセッサが、プロセスの実行命令を受けたときに、当該プロセスに含まれる前記ハッシュ・エントリの操作に応じて当該ハッシュ・エントリに対応する前記カウンタの値をカウントアップ又はダウンする第1の実行ステップと、
前記プロセッサが、前記ハッシュ・エントリの削除操作を含むプロセスの実行命令を受けたときに、当該ハッシュ・エントリに対応する前記カウンタの値に応じて、前記ハッシュ・エントリの削除操作を実行する第2の実行ステップと
を備えることを特徴とするデータ格納方法。 - コンピュータを
ハッシュ表のハッシュ・エントリのそれぞれに対応付けられたカウンタを格納する格納手段、
プロセスの実行命令を受けたときに、当該プロセスに含まれる前記ハッシュ・エントリの操作に応じて当該ハッシュ・エントリに対応する前記カウンタの値をカウントアップ又はダウンする第1の実行手段、
前記ハッシュ・エントリの削除操作を含むプロセスの実行命令を受けたときに、当該ハッシュ・エントリに対応する前記カウンタの値に応じて、前記ハッシュ・エントリの削除操作を実行する第2の実行手段として機能させるためのプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012234776 | 2012-10-24 | ||
JP2012234776 | 2012-10-24 | ||
PCT/JP2013/006199 WO2014064914A1 (ja) | 2012-10-24 | 2013-10-21 | データ格納装置、データ格納方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2014064914A1 true JPWO2014064914A1 (ja) | 2016-09-08 |
JP6222100B2 JP6222100B2 (ja) | 2017-11-01 |
Family
ID=50544299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014543142A Active JP6222100B2 (ja) | 2012-10-24 | 2013-10-21 | データ格納装置、データ格納方法およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20150286640A1 (ja) |
JP (1) | JP6222100B2 (ja) |
WO (1) | WO2014064914A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160034210A1 (en) * | 2014-07-31 | 2016-02-04 | International Business Machines Corporation | Committing data across multiple, heterogeneous storage devices |
US10185504B1 (en) * | 2014-11-26 | 2019-01-22 | Acronis International Gmbh | Reducing data transmitted during backup |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01303527A (ja) * | 1988-05-31 | 1989-12-07 | Hitachi Ltd | 共有資源の管理方法 |
US20050071335A1 (en) * | 2003-09-29 | 2005-03-31 | Microsoft Corporation | Method and apparatus for lock-free, non -blocking hash table |
-
2013
- 2013-10-21 JP JP2014543142A patent/JP6222100B2/ja active Active
- 2013-10-21 WO PCT/JP2013/006199 patent/WO2014064914A1/ja active Application Filing
- 2013-10-21 US US14/438,274 patent/US20150286640A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01303527A (ja) * | 1988-05-31 | 1989-12-07 | Hitachi Ltd | 共有資源の管理方法 |
US20050071335A1 (en) * | 2003-09-29 | 2005-03-31 | Microsoft Corporation | Method and apparatus for lock-free, non -blocking hash table |
Also Published As
Publication number | Publication date |
---|---|
US20150286640A1 (en) | 2015-10-08 |
JP6222100B2 (ja) | 2017-11-01 |
WO2014064914A1 (ja) | 2014-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8190859B2 (en) | Critical section detection and prediction mechanism for hardware lock elision | |
KR101369441B1 (ko) | 컴퓨터 시스템 내부의 프로액티브 동기 방법 | |
ES2720133T3 (es) | Guardar/restablecer registros seleccionados en procesamiento transaccional | |
US9513959B2 (en) | Contention management for a hardware transactional memory | |
US8688920B2 (en) | Computing system with guest code support of transactional memory | |
ES2689560T3 (es) | Bloque de diagnóstico de transacción | |
JP6091608B2 (ja) | Nontransactional store命令 | |
US9547524B2 (en) | Methods and systems for enhancing hardware transactions using hardware transactions in software slow-path | |
JP6222669B2 (ja) | プロセッサ支援ファシリティ | |
KR100764920B1 (ko) | 언트레이닝을 구비하는 저장 로드 전송 예측기 | |
US20080162889A1 (en) | Method and apparatus for implementing efficient data dependence tracking for multiprocessor architectures | |
US20100122073A1 (en) | Handling exceptions in software transactional memory systems | |
US8543775B2 (en) | Preventing unintended loss of transactional data in hardware transactional memory systems | |
BR112014031354B1 (pt) | Controle seletivo de execução de instrução em processamento transacional | |
JP2009521767A (ja) | 有限トランザクションメモリシステム | |
BR112014031435B1 (pt) | Teste randomizado dentro de execução transacional | |
BR112014031350B1 (pt) | Filtragem de interrupção de programa em execução transacional | |
US8788766B2 (en) | Software-accessible hardware support for determining set membership | |
US6625725B1 (en) | Speculative reuse of code regions | |
JP6222100B2 (ja) | データ格納装置、データ格納方法およびプログラム | |
Lin et al. | Operation-level concurrent transaction execution for blockchains | |
US9189297B2 (en) | Managing shared memory | |
US7546439B1 (en) | System and method for managing copy-on-write faults and change-protection | |
BRPI0805218A2 (pt) | esquema de omissão de trava por hardware hìbrida de retirada prévia-posterior | |
Herath et al. | SnCTM: reducing false transaction aborts by adaptively changing the source of conflict detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160915 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170627 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170822 |
|
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: 20170905 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170918 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6222100 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |