멀티코어 환경의 인메모리 데이터베이스 상에서의 충돌 예측 및 재시도 정책 기반 하드웨어 트랜잭셔널 메모리 기법 = Hardware transactional memory based on conflict prediction and retry policy in multi-core in-memory databases
Transaction is an group of instructions executed by single thread. Transactions are atomic: each transaction either commits or aborts. Transactions are linearizable: they appear to take effect in a one-at-a-time-order. Transactional memory(TM) is a multiprocessor architecture intended to make lock-free synchronization. TM supports a computational model in which each thread announces the start of a transaction, executes a sequence of operations on shared data, and then tries to commit the transaction. If the commit succeeds, the transaction's operations take effect; otherwise, they are discarded. TM can significantly improve the performance and scalability of concurrent programs, as well as making them easier to write, understand, and maintain. TM can be classified into three categories according to its implementation model; a hardware transactional memory (HTM), a software transactional memory (STM) and a hybrid transactional memory (HyTM).
STM systems support flexible transactional programming of synchronization operations in software. STM can be more easily integrated with existing tools, offers an easier adoption route for programmers to support unbounded transactions, nested transactions with partial rollbacks. The disadvantage of the STM is the runtime overhead due to transactional bookkeeping for read-write operations. Even though the instrumentation code can be optimized by compilers , STM can still slow down each thread by 40% or more. HTM systems use hardware caches to track the data read or written by each transaction and leverage the cache coherence protocol to detect conflicts between concurrent transactions. However, HTM requires high cost and complexity, as the caches and the coherence protocol must be redesigned. A hybrid TM executes most transactions using a simple HTM, but handles large, long-running, or otherwise uncommon transactions using a STM. As a result, this approach promises the performance of an HTM in the common case and much of the system’s transactional semantics to be defined in software rather than hardware. However, existing hybrid TM proposals suffer from two notable drawbacks. First, they cannot predict the conflicts between transactional and non-transactional code. Second, the performance of the general hardware transactions on multi-core environment is degraded to ensure that hardware transactions do not violate the atomicity of software transactions and cannot support optimized memory management.
To address these shortcomings of the previous work, we propose two novel transactional memory scheduling method; a TM with conflict prediction (HyTM-CP) and a Hybrid TM.
First, to support transaction conflict prediction, HyTM-CP maintains a prediction matrix to collect the information of previously executed transactions, such as transaction size and the probability of conflict (probc) between transactions. The prediction matrix is used to compute the possibility of conflict between transactions running concurrently. According to probc in the matrix, HyTM-CP determines whether to use STM or the serial execution as a fallback path of HTM. Also, we provide a self-tuning policy for HTM. To assign the optimal retry threshold of HTM for a specific workload, HyTM-CP uses gradient descent and momentum algorithms which are popular deep learning ones. Thus, the optimal retry threshold can be computed to run HTM, depending on the characteristic of a given workload. This can reduce lemming effects, thus increasing the transaction performance. Second, to support reliable concurrency of transactions in parallel environment, we devises a Hybrid TM based on a flexible bloom filter method. Our method can efficiently control the concurrency between HTM and NorecSTM. We also provide a memory assignment policy that is optimized to the CPU cache line. The policy assigns small-size transaction to the local cache to improve the overall processing time. From the experimental performance evaluation, we have shown that our CrHTM(Conflict prediction and Retry policy HTM) provides the best performance compared to the existing HTM, stHTM, and SEER, in terms of workload throughput ratio. Also, our Hybrid TM (HyTM-M) method outperforms the norecHy by 50% in terms of workload throughput rate. By analyzing the evaluation result, we prove that our HyTM-M is appropriate to process long-time running transactions and our CrHTM guarantees best performance for short transactions.
서지정보 내보내기(Export)
닫기소장기관 정보
닫기권호소장정보
닫기오류접수
닫기오류 접수 확인
닫기음성서비스 신청
닫기음성서비스 신청 확인
닫기이용약관
닫기학술연구정보서비스 이용약관 (2017년 1월 1일 ~ 현재 적용)
학술연구정보서비스(이하 RISS)는 정보주체의 자유와 권리 보호를 위해 「개인정보 보호법」 및 관계 법령이 정한 바를 준수하여, 적법하게 개인정보를 처리하고 안전하게 관리하고 있습니다. 이에 「개인정보 보호법」 제30조에 따라 정보주체에게 개인정보 처리에 관한 절차 및 기준을 안내하고, 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다.
주요 개인정보 처리 표시(라벨링)
목 차
3년
또는 회원탈퇴시까지5년
(「전자상거래 등에서의 소비자보호에 관한3년
(「전자상거래 등에서의 소비자보호에 관한2년
이상(개인정보보호위원회 : 개인정보의 안전성 확보조치 기준)개인정보파일의 명칭 | 운영근거 / 처리목적 | 개인정보파일에 기록되는 개인정보의 항목 | 보유기간 | |
---|---|---|---|---|
학술연구정보서비스 이용자 가입정보 파일 | 한국교육학술정보원법 | 필수 | ID, 비밀번호, 성명, 생년월일, 신분(직업구분), 이메일, 소속분야, 웹진메일 수신동의 여부 | 3년 또는 탈퇴시 |
선택 | 소속기관명, 소속도서관명, 학과/부서명, 학번/직원번호, 휴대전화, 주소 |
구분 | 담당자 | 연락처 |
---|---|---|
KERIS 개인정보 보호책임자 | 정보보호본부 김태우 | - 이메일 : lsy@keris.or.kr - 전화번호 : 053-714-0439 - 팩스번호 : 053-714-0195 |
KERIS 개인정보 보호담당자 | 개인정보보호부 이상엽 | |
RISS 개인정보 보호책임자 | 대학학술본부 장금연 | - 이메일 : giltizen@keris.or.kr - 전화번호 : 053-714-0149 - 팩스번호 : 053-714-0194 |
RISS 개인정보 보호담당자 | 학술진흥부 길원진 |
자동로그아웃 안내
닫기인증오류 안내
닫기귀하께서는 휴면계정 전환 후 1년동안 회원정보 수집 및 이용에 대한
재동의를 하지 않으신 관계로 개인정보가 삭제되었습니다.
(참조 : RISS 이용약관 및 개인정보처리방침)
신규회원으로 가입하여 이용 부탁 드리며, 추가 문의는 고객센터로 연락 바랍니다.
- 기존 아이디 재사용 불가
휴면계정 안내
RISS는 [표준개인정보 보호지침]에 따라 2년을 주기로 개인정보 수집·이용에 관하여 (재)동의를 받고 있으며, (재)동의를 하지 않을 경우, 휴면계정으로 전환됩니다.
(※ 휴면계정은 원문이용 및 복사/대출 서비스를 이용할 수 없습니다.)
휴면계정으로 전환된 후 1년간 회원정보 수집·이용에 대한 재동의를 하지 않을 경우, RISS에서 자동탈퇴 및 개인정보가 삭제처리 됩니다.
고객센터 1599-3122
ARS번호+1번(회원가입 및 정보수정)