- Raftという分散合意アルゴリズムの紹介
- 論文: In Search of an Understandable Consensus ALgorithm (Extended Version)
- Raft三日目くらいの人が自分の理解をもとに(適当に)書いています
http://research.microsoft.com/en-us/um/people/lamport/pubs/time-clocks.pdf の要約。
著者はレスリー・ランポート (Leslie Lamport), 1978年。
分散アルゴリズムの書籍や論文でお馴染みの、分散システムにおけるイベント群の順序や時刻の概念を説明している論文。
!
が先頭についている箇所は、要約者による(いい加減な)注釈。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import copy | |
from datetime import datetime | |
import multiprocessing | |
from optuna import distributions # NOQA | |
from optuna.storages import base | |
from optuna.storages.base import DEFAULT_STUDY_NAME_PREFIX | |
from optuna import structs | |
from optuna import type_checking |
//** 『The Art of Multiprocessor Programming』七章
//** A Hierarchical CLH Queue Lock **//
//
// HCLHLock::lock()の実装書き換え例
// (分かりやすさを重視しているため若干不正確な可能性がある)
public void lock() {
QNode myNode = currNode.get();
AtomicReference<QNode> localQueue = localQueues.get(ThreadId.getCluster());
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(defpackage lock-free-queue | |
(:use :common-lisp) | |
(:export queue | |
make | |
enq | |
deq | |
empty-p | |
element-count | |
to-list)) | |
(in-package :lock-free-queue) |
NewerOlder