30分で論文流し読みシリーズ5「Replication Under Scalable Hashing: A Family of Algorithms for Scalable Decentralized Data Distribution」
↓の参考として挙げられているもの satoru-takeuchi.hatenablog.com
- 実際の所要時間: 1時間半
- 課題
- 分散ストレージにおいてオブジェクトの配置情報を中央集権型でなくするには、かつては実際のデータ配置前にすべての配置位置を決めて、その後のディスク増減コストは大量のデータ移動が必要な高コストなものだった
- 解決方法概要
- 解決方法詳細
- 効果
- 図5~8あたりを参照
- 感想
- CRUSHの論文にRUSHには問題があるようなことが書かれていたが、たしかにこれだけだとけっこうつらそう。以下理由
- あるオブジェクトのレプリカを同じラックに配置するようなtopology awareな配置ができない
- ちょこちょこストレージを足していくとサブクラスタの数が増えて色々な処理が低速化しそう
- CRUSHの論文にRUSHには問題があるようなことが書かれていたが、たしかにこれだけだとけっこうつらそう。以下理由
*1:正確にはRushPは以前の論文に既に書かれている
30分で論文流し読みシリーズ4「CRUSH: Controlled, Scalable, Decentralized Placement of Replicated Data」
CRUSH: Controlled, Scalable, Decentralized Placement of Replicated Data
- 実際の所要時間 1時間半
- 課題
- 解決方法概要
- 解決方法詳細
- 効果
- 様々な性能をbucketの種類ごとに、場合によってはそれに加えてRUSHのものと比較してある(figure 5~8)
感想 - Ceph(データ配置にCRUSHを使っている)の内部を知るには読んどかないとまずい - 魔法のようである。うまくやるものだ - RUSHの論文も読んでおかないとうまく解釈できないと思う
Cephとの比較 - Cephにおいては、いまではbucketは上記4つとはまた違うstraw2というのがデフォルトで使われている。もはや他のものをあえて使う必要はないだろう - placement ruleはCephにおいてはcrush ruleと呼ばれることが多い - オブジェクトは直接ストレージデバイス(正確にはOSD)にマップされるのではなく、Placement Groupというものにマップされる。同じplacement groupに属する全オブジェクトは、placement groupに対応するOSDにレプリカを配置する。たぶん組み合わせ数が死ぬほど増えるのを防ぐためにこうなってる
30分で論文流し読みシリーズ3: 「vScale: Automatic and Efficient Processor Scaling for SMP Virtual Machines」
vScale: Automatic and Efficient Processor Scaling for SMP Virtual Machines
実際の所要時間 一時間半
課題
- vCPU数 > pCPU数のときにvCPUがスケジュールされないことによってロック待ちやI/O完了待ちが長くなってアプリの性能がすごく落ちることがある
- VMの負荷に応じて動的にvCPU数を動作させるvCPU Baloonというものがあるが、LinuxのCPU online/offline機能を使うと数百ミリ秒オーダーで時間を食うので頻繁に使うのはつらい
- 対象環境
- 解決方法概要
- 効果
- バックグラウンドで別の処理を動かしてvCPU数が2*pCPU数程度のマシン上でスレッド間同期処理が多かったりI/O頻度が高かったりする処理を動かすと性能が数十%上がった
解決方法詳細
- linuxに手を入れて、カーネルから見えるCPUにfreezeという状態を作る。これはofflineに似ているが、vCPUのスケジュール対象にせず、かつ、外部割り込みも上がってこないようにするだけで、onlineとofflineの間のような状態。これはカスタムカーネルこれは数マイクロ秒単位で終わる
- 各VMにおいて、個々のvCPUが実際に使ったCPU時間を定期的に記録する。この値をもとにlinuxとXenの両方において次のようなvCPU online/offlineを模した処理をする
- なぜlinux上のvCPUのfreeze/unfreezeだけでなくXenにおけるVMごとのshare値を変えているかというとから見ると、Xenからはlinuxのfreeze/unfreeze状態を直接観測できないから
感想
プリンタ買いました
10年ぶりくらいにプリンタ買いました。紙で印刷することなんてそんなにないし、あってもコンビニでネットプリント使えばトータルコストでは安いと思ったので、あえて持たないようにしてました。
ところが実際は印刷が必要になる機会は頻度は確かにそれほど高くないものの、そのたびにコンビニ行く移動コストが高いこと、及び、大して行きたくもないのにコンビニに行くのが嫌になってきたことより購入に踏み切りました。金銭的な面では多分こちらのほうが高コストですが、それ以外の部分(上記の移動コストとストレス)を考えるとこっちのほうがよさそうです。今後に期待。
ところで最近のプリンタはすごいですね。一万五千円くらいのものを買ったのですが、操作は液晶タッチパネルだしスマホ連携はできるし、パソコンなくてもOKだし…と、ちょっと興奮してしまいました。
SNSとの接点を減らした その3
↓の続き
satoru-takeuchi.hatenablog.com
次は書き込み内容を改善してみようかと。ダジャレをメインにしてたまに真面目な技術の話とかをして、意識高めな警句のようなものとか皮肉とか愚痴っぽいのは減らしていこうかなと。後半部分はつい書いてしまった後に「偉そうなこととかつまんねえこと書いたな」と思つってしまって精神衛生上よくなかったのです。さらにこれによって書き込み量も減るのではないかと期待しています。
これもまあまあできるようになりました。ただし、ふとやってしまうことがあるので、道半ばです。
これ以外にもマイナスの感情を全面に押し出したtweet、とくに攻撃的なもの、が流れてきたときに自分が不快な気分になったりその感情に引きずられたりしやすいことがわかりました。これを避けるために、その発言、あるいは同じ人からのものが何度も続くようであればその人を積極的にミュートするようになりました。これはけっこう効いたらしく、感情が動くことが減りました。「自分ってけっこう繊細だったんだ」と感心してしまいました。
SNSとの接点を減らした その2
↓の続き
satoru-takeuchi.hatenablog.com
その後の進捗。
いろいろ考えた結果、2つの対策を打ちました。1つはスマホからSNSのアプリを消して、かつ、ブラウザからもIDとパスワードの情報を消すことです。これによってアクセスが面倒になったので、とくにスマホからSNSを使う頻度がかなり減りました。
これは継続中。特別な事情があって誰かとやり取りをしているような場合以外は使わないようにしています。使うためにいちいちパスワードを入れるのもめんどくさいというのはものぐさな私にはよく効きました。
ダイレクトメッセージについては人とリアルタイムで連絡をとるときに使っているので別途専用アプリをインストールしました。
facebookはmessengerがあるからいいんですがtwitterのDM専用アプリというのが見つからなかったので、twitterでだれかにDMもらったときはwebブラウザからtwitterを使えるようにして会話がひと段落するまでそのままにします。終わったらサイトの設定を消します。
もうひとつは暇になったなと思ったときに何となくSNSを開くのではなく、とりあえず本を手に取ったり目を瞑ったりする癖をつけました。こちらもうまく働いて、いろいろな雑学を得ながら頭も休まるというよい結果を生みました。
引き続き本を読んだりする時間が段々と増えています。順調。
その他にわかったこと。
- 何かを書くから誰かの反応気になるのであって、とくに何も書かずにROMってれば大して気にならない。というわけで「このダジャレを言わなければ成仏できなさそう」という場合を除き、どうでもいいことを言うのは少なくしている
- なんとなくイライラすることが減った。何かをずっと続けていたり反応を待ったり、それによって他にやろうとしていたことができないのは思った以上にストレスになるようだ
「君を見てると接点が減ってるように見えないんだけど…」という声が近しい人たちから飛んできそうですが、SNSを開く頻度は確実に減っています。そのため
SNSを開く頻度
はSNSとの接点
の頻度と同じ方向に上下する(外から観測できる)書き込みの全体量 = SNSを開く頻度 * 一度に書き込む量
、SNSによって消費する時間 = 書き込みの全体量 * (一度に読み書きする時間 + コンテキストスイッチ時間)
とすると書き込みの全体量
は変わっていなくてもtwitterを開く頻度
が減っているのでSNSによって消費する時間
が減っているのです。
次は書き込み内容を改善してみようかと。ダジャレをメインにしてたまに真面目な技術の話とかをして、意識高めな警句のようなものとか皮肉とか愚痴っぽいのは減らしていこうかなと。後半部分はつい書いてしまった後に「偉そうなこととかつまんねえこと書いたな」と思つってしまって精神衛生上よくなかったのです。さらにこれによって書き込み量も減るのではないかと期待しています。
「歴史系倉庫 世界史の問題児(クズ)たち」と「まんが 偉人たちの科学講義 - 天才科学者も人の子」を読んだ
歴史上のクズとか科学者を数人ピックアップして、それぞれを4コマ漫画のかたまりとして紹介している本です。歴史的事実を踏まえながら、伝えられている人物像を膨らませておもしろおかしく見せてくれています。
歴史にも科学にも興味が持てなかったという人にも作風が合えば楽しめるかと思います。わたしは何事も事実が淡々と述べられているよりも物語性のあるものが好きなので、こういうものを小中学校時代に読んでいればもっとこれらについて楽しめたのになあと思いました。
作者は下記サイトのかたです。
本書を読む前にこのサイトの「まんが」タブをクリックすれば見られる大量のまんがをいくつか見て、作風が合うか合わないかを見極めるとよいかもしれません。「歴史系~」についてはこのサイトの一部を抜粋、加筆した上で絵を綺麗にしたといったものですが、元のまんがを全部読んでいた私も楽しめました。