ToDo:
http://shinh.skr.jp/tmp/ruby-heap.ps
ちょっと ruby 用の heap profiler を書いてみようとかなんとか。 とりあえず C レベルのスタックトレース出してもあんま意味ないんで Ruby のスタックトレースを出すべき。
pprof には symbolized-profile というフォーマットがあるっぽいんで、 それを使ってやれば Ruby のトレースにできるかな。
あと現状 vm_xmalloc しか見てないんで たぶん rb_newobj の方もチェックしてほげほげとかしないと たぶん何の役にも立たない
(11:09)
昨日ログインできなかったのだけど、 なんか javaws が古いかなんかのためみたいだった。
で今日は invitation only とか言われて登録できなかった。 たぶん昨日参加してないとダメってことなのか、 それとも以前 TCO 登録にしたと思ってたけど実はしてなかったか、 まぁそんなとこだろうと思う。
(01:49)
http://shinh.github.com/canvas/3dlines.html
座標変換とか面倒だなーと思ってきた
しかし github 便利だな…
(04:59)
JS の文字列が immutable なことと canvas の (stroke|fill)Style の指定が CSS color なことを考えあわせると、 なんか効率的な観点から最悪な気がする。
とりあえずどうせ 256 色しか使ってないからキャッシュして解決したけど、 一般的にははてさてどうするべきなんだろう。
(07:19)
適当にやって色々。
とりあえずテレポート無しで 12 台以下クリアは お手玉しても大変そうだったので、 テレポート解禁してから適当にやったら割とラクだった。
level 10 はだいぶ前に適当にお手玉でクリアしたし、 あとは時間かかるやつ以外では Risk taker くらいしかやることなくて、 それも別にどうでもいいなぁということで、 3ドル払って有料版…とかじゃなくて普通に別なことをすべきだと思った
(22:27)
とりあえず今月末引越しはほぼ確定したようだ。 8畳で8万とまぁ今より狭い&高いなんだけど、 狭いのはまぁ今も死んでるスペース多いので わざと狭くした感があって。
本当は似た価格帯でもうちょい広いところあったんだけど、 いつでもゴミ捨てれるとかのメリットの方が大きいと適当に予想した。
あとはとにかく物を捨てたい。たくさん捨てたい。
とりあえず本とゲームはわかりやすい対象じゃないかと思う。 適当に捨てよう。
あとはなんか電子レンジとか洗濯機とかも一旦捨てて新しいの買ってもいいと思う。 洗濯機はなんか乾燥機とかついてる方が便利そうだし、 レンジはなんか安物でも別に困ってないから…まぁいいか。
本はこう教科書的なやつは駒場に行って 自治会とかにあげれば売ってくれるんだろうか。
(22:58)
http://d.hatena.ne.jp/mollifier/20090814/p1
なんだこれは便利そう
via http://twitter.com/nalsh/status/13363607077
(23:29)
立花隆の本を読んだ。 この人主張とかたぶんあまり好きくないこと多いし 文調とかもあまり好きくない感じだと思うんだけど、 いやまぁ細かいことまでまとめてくれてるなーということでたいへん面白かった。
つまりこう脳死というのは意外と難しい問題だったんだなぁとわかった。 たぶん賛成反対で聞いたりしてたのはイマイチだったんだろうなぁという程度に 色々なレベルの主張がありえるみたいだった。
どこが死か
脳死って何
このへんはもっと色々なレベルがありそう。
脳幹は要は外から観察可能な意識を司る部分なので ここが壊れちゃうと事実上こう 外から観察可能な意味が全て消えちゃうよね的な意味で 脳幹死んだら終わりというのが4つ目の立場だと思う。
大脳はもうちょい上位の思考をする部分なので、 脳幹死んでても夢とか走馬燈とか見てるかもしれない。 さらに麻酔で完全に脳幹が機能停止してても 周囲の状況を知覚していた人がいるらしいことから、 周囲を見てる可能性はあるわけだ。 ただ当然、脳幹死から復帰した人がいないので そんなことは誰にもわからない。
壊死の開始的などうしようもない状態はどう判定する?
大脳の死をどう判定するか
脳幹の死をどう判定するか
その他
脳死した人に対して
臓器移植について
なんか他にも色々あったけどこのへんが一番印象に残った論点かなぁ。
個人的には最初の方は脳幹死+それなりの判定+医師の判断程度、 いやむしろ植物状態とかやっちゃってもいいんじゃないかなーとか 思いつつ読んでたんだけど、 しかしどこから死かっていうと脳幹とかどうでも良くて むしろ大脳の死な感覚があった。
つまりまぁ僕は死んでなくても絶望的なら 殺して移植しちゃってもいいんじゃね? と思ってるんだろうけど、 しかし生きてる人殺したら殺人だっていう 当たり前の論理は当たり前ながら当たり前なのであって。 しかしこう緊急避難的なこと考えると やっぱ別にいいんじゃねとか思いもする。
立花隆は殺人とか論外、脳死が確定なら移植はアリ、 しかし移植のための脳死確定は大変重要な判定なので もっともっと厳しい基準を設けるべき、 治療中断のための脳死確定はまぁそれなりの基準で別にいい、 って立場らしい。
移植と治療中断の基準が変わるべき、ってのは まぁ殺人か否かってところで明確に違うんだーっていう話らしいんだけど、 このへんが一番共感できなかった。
(05:40)
閉じてないウィンドウが別仮想デスクトップにあって、 ちゃんと再起動できてなかっただけだった。
というわけで mame さんの quine は無事コピーできるようになったはずで めでたしめでたし
(22:44)
なんか突然使ってみたくなったので調べてみた。
なんでかというと、今日の環境検討会 (http://atnd.org/events/4094) で WebKit とか GCC みたいな 今時の OSS は分散ビルドとか無いと割ときつくて OSS と言えども実質会社で仕事としてやらないと やりにくいとかいう話をしたら 意外と反応があって色々考えたからだった。
その場で出たアイデアというか冗談としては2つあって。
grid 的に PC 買った時に計算リソースを一部差し出せば PC が安くなるとかどうかとかいうものが一つで。 まぁこれはそいうアイデアは grid とか p2p とかが バズワードってた時にあった気がするけど 今まったく存在してないのは たぶんレイテンシとかがキツすぎるからだろうなぁとかいう話。
でまぁ物理的な距離が近くないといけないつーことを考えると、 ギークハウスならぬギークマンションを建築して 入居条件は自分のマシンを distcc のために 差出すこととか、 まぁそいう現実感皆無な話だった。
でもまぁ普通に Amazon EC2 とかを共同購入とかは アリだったりしないのかなぁと考えてみようと思ったのだった。
まずこう普通に考えて、 distcc という目的なので 日本にあるサービスの方がいいのは明らかで、 とりあえず Nifty と富士通がそういうのをやってるみたいだった。
まず Nifty は
https://cp.cloud.nifty.com/apply
を見ると、個人会員へのサービス開始は2010年4月頃を予定していると書いてあって、 まぁつまり予定は未定という感じなんだなぁと挫折した。
次に見た富士通はこう個人でも契約できるっぽいけど なんか web フォームとかで資料請求しなきゃいけないっぽかったので それの返事待ちという状態。
値段は、 Nifty のやつは Amazon EC2 よりちょっと高いんだけど、 例えば 4CPU*2 を1時間借りると168円らしく、 まぁ通信とかでどの程度取られるかはよくわからんけど せいぜい200円くらいかなぁという感じぽかった。
突発的に GCC で遊んでみたりしたくなった時とかに使うと考えると まぁそんなに悪くないんじゃないかなぁと思った。
ただ RedHat なり CentOS で作った .o をこっちでリンクできるかとかは自信の無いところだし、 実際レイテンシとか大丈夫なもんかとかもあるので、 まぁとりあえず使ってみたいなぁというところ
(23:16)
の登録おもしれー
電話番号を入力すると、 ブラウザで見てる画面に PIN が出てきて 電話がかかってきて、 PIN を入れると即座にブラウザが次の画面に移行した。
かっこいい
(00:05)
速い
やったこと
8CPU のインスタンスを singapore にゲット。 76セント/hour とのこと。 mysql のポートを開けておく。
ログインしたら yum install distcc-server 。 /etc/sysconfig/distccd を適当に
### See distcc(1) manual page for more information on these options. ### #OPTIONS="--nice 5 --jobs 5 --allow 10.0.0.0/24 --port 1234" OPTIONS="--allow 121.1.133.104 --port 3306 --log-file /tmp/distccd.log" #USER="distcc" ### Set this if don't want distccd to use gcc or g++ by accident. #DISTCCPATH="/usr/lib/distcc/bin"
とかに変更。 --allow の IP はつまりこれは shinh.org
.distcc/hosts に適当に
ec2-???-???-???-???.ap-southeast-1.compute.amazonaws.com:3306
とか書く。
make -j10 CC="distcc gcc" CXX="distcc g++" miniruby
が 37 秒で終わった。
ローカルでやると make -j4 で 185 秒でちょうど 5 倍。 レイテンシとかあるしなーということで -j16 とかやってみたけどたいしてかわらんかった。 あと local の PC が遅くならない && メモリ使わない ってのはプライスレスな効果だと思う。
いやあこれは普通に使っていいと思う。 今回は web サービスでインスタンス作ったりしてたけど、 たぶんインスタンス上げるのとかラクにやるツールとかあるよね。
今度はもっと巨大な chrome のビルドとかで試してみようと思う。
(01:12)
AMI ってのを保存しておくと 環境のセットアップがいらなくなるようだ。 ただストレージの値段がかかっちゃうんだよね。
まぁ普通に distcc が返してきた .o をリンクできてるし、 それならわざわざ debian 入れるとかやる必要もないかなぁと思うので、 毎度セットアップスクリプト走らせるとかでも全然良いように思う。 あと public AMI とかいう人様がセットアップしてくれた やつが結構あるみたいなので、そのへんで debian のやつとか入れてもいい気はする。
(01:19)
3時に寝て11時くらいに起きて、 しんどいまくりなのでもうちょっと寝てみようと思って 15時に起きてしんどいので今日は休もうと思って あと適当に寝て起きてを繰り返して今まで。
1日溶けたけど、 風邪ひいたらさっさとなおすべきなので、 こんくらい大袈裟に寝るべきなのかもねえ…
にしてもやるべきことが色々ある気がする
(23:22)
不燃ゴミの日ということで色々捨てる…
捨てられない物も多い。 困る。 もしこれを見て欲しいものある人とか教えてください。
まず本。 無論売るんだけど売れなさそうな本とか、 誰か欲しかったりするだろうか…的な本の処理を困る。 とりあえず実家の弟と konn さんに協力してもらって 色々と引き取ってもらったりした。 現状残ってて価値がありそうだと思うものは…
というくらいか。 まぁ素直に売れば売れそうな保存状態の本もそれなりにある。
あとは教科書がなー。まだまだ結構あって困る。
ゲーム機。 もう少なくともサターンと 64 は捨てるべきだと思う。 だって昔のゲームを最新のゲーム機で遊べる時代だしね。 が、ギリギリで捨てるのが忍びなくなってしまったので 今度ブックオフとかに持って行ってみようと思う。 特に罪と罰一本のためだけに 64 が重い。
ドリームキャストと PS2 はまだ捨てられないしいいこととする…
ノート。 内容とか見ずに捨てるべき。
服とかも捨てるために安物しか買ってないわけで、捨てまくれ…
(06:22)
http://www.nicovideo.jp/watch/sm7215353
ええ、たぶんこれがエスプのビデオそのまんまですね… 捨てていいってことですね…
ガレッガとプロギアもありそうだなぁ
(07:13)
うーんなつかしい
動画の方であんま解説とか無いな
ついでにプロギアとかも見てみる
http://www.nicovideo.jp/watch/sm2275234
東方のパクリとかいうコメント無いなー残念とか思ってたら 途中で少しあったみたいだ
(08:08)
via http://niha28.blogspot.com/2010/05/blog-post_6542.html
ホント twitter ってゴミですよねと反射的に思うんだけど、 よく考えると twitter の QT とか RT とかよくわかってない。
http://d.hatena.ne.jp/rikuo/20091213
まぁつまり会話追うのは現状の仕組みだと難しいって感じかねえ。
(23:07)
meminfo とか見ると
MemTotal: 4055148 kB MemFree: 177564 kB Active: 1323240 kB Inactive: 1108000 kB
とか書いてあって、全然合計値に達しない。 アホかーと思って
http://www.atmarkit.co.jp/flinux/rensai/tantei03/bangai03a.html
などを読むと kernel 空間の使ってるメモリは
VmallocUsed: 85396 kB Slab: 1377516 kB PageTables: 31236 kB
を見るといい。合計すると MemTotal を越えたのは謎だけど、 まぁとりあえず Slab というのが多すぎる。 他のマシンと比べてみても異様に多いので、 まぁなんかいまいちなバージョンの kernel とかそいうことなのかなぁ。
> uname -a Linux u4 2.6.30-2-amd64 #1 SMP Fri Sep 25 22:16:56 UTC 2009 x86_64 GNU/Linux
http://mkosaki.blog46.fc2.com/blog-entry-629.html
とかを見るとまぁそんなこんなで問題はあるのかもだ。 とりあえず kernel のバージョン上げて様子を見てみようと思う。
(23:28)
kernel のバージョン上げたのでメモ。
2.6.32-5-xen-amd64 とかに。 でもなんか xen の hypervisor といっしょに動かすと、 ネットワークが通らん件とメモリ 3G しか見えてないよという件があって、 まぁ調べるの面倒だし xen は当面いらんので放置することに。
ついでにこいうスクリプト書いて変わったことの変化とか追いやすいようにしてみたり。
#!/bin/sh set -ex n="$1" if [ "x$n" = "x" ]; then n=`uname -r` fi dest="$HOME/memo/kernel/$n" mkdir "$dest" dmesg > "$dest/dmesg" ifconfig -a > "$dest/ifconfig" lsmod > "$dest/lsmod" lspci -v > "$dest/lspci" cat /proc/cpuinfo > "$dest/cpuinfo" cat /proc/meminfo > "$dest/meminfo" route > "$dest/route"
(00:44)
とりあえず ext3_inode_cache とか そのへんのファイルシステム関係っぽいやつが、 ファイルシステムにアクセスするとぎゅーと伸びることがわかった。
でよく見ると、
Slab: 279936 kB SReclaimable: 264132 kB SUnreclaim: 15804 kB
と SUnreclaim て方は少ないまんまなので別にいいのかなぁと思った。 これってたぶんメモリ足りなくなったら swap へ行ったりせずに 消えてくれるんだよねきっと(実験すべき)。
というわけで、その仮定が正しいとすると、 この程度のメモリは不快をともなわずに 触れますよーという意味でのメインメモリの残量を示す指標としては、 MemFree + Inactive + SReclaimable でいいのかなぁとか思った。
ちょっと遊んでみる。 2G くらい MemFree がある状態で 3G 程度 malloc して 全部のページに触ってみると、 47MB swap 使って SReclaimable が 100M くらい減って… ええと後の 850M はどこから捻出したかって Active が減ってた。
はて、 Active 減らすより先に Inactive じゃないのだろうか…
色々やってみるに 3G 一気に取ったのがまずかったかな。 少しずつ取っていくと Inactive の減りの方が多そうに見える。
でさて SReclaimable が減った後に色々やってみると、 ls が遅かったりして、これって要は directory の情報とかが cache から落ちちゃったよー的な感じだよね。 それって結構不快をともなうよなーとか思うと、 MemFree + Inactive の方がいい指標なのかなぁとか。
あとまぁ Active だけってのもユーザランドでの メモリ使用量を体感するにはいい指標な気もするな。
の 3 つくらいを表示したら 僕のマシンでは1つ目と2つ目の差はほぼ SReclaimable っぽいので、 それでいいかな。
(02:00)
http://shyouhei.tumblr.com/post/313410522/screenrc
backtick で色つけてるのどうやってるのかなーと思った。 でまぁ screen のソースコードを読んでみると、
static void backtick_filter(bt) struct backtick *bt; { char *p, *q; int c; for (p = q = bt->result; (c = (unsigned char)*p++) != 0;) { if (c == '\t') c = ' '; if (c >= ' ' || c == '\005') *q++ = c; } *q = 0; }
などと \005 が特別扱いされてるわけだ。 で他の部分のコードを読むとこれはどうも % のかわりらしく、 つまり
const char SCREEN_RED[] = "\x05{+b r}"; const char SCREEN_GREEN[] = "\x05{+b g}"; const char SCREEN_RESET[] = "\x05{-}";
などとすれば良いようだった。
なるほどなー!!
(04:48)
_ kosaki [Buffers + Cached + SwapCached + AnonPages ≒ Active(anon) +..]
_ shinh [Buffers + Cached + SwapCached + AnonPages ≒ Active(anon) +..]
_ kosaki [ああ、そうか。SwapCache かつ AnonPagesという状態があるからだな。SwapCachedはスワップ開..]
_ gstreaming [ ils ajout鑽ent télécharger film megaupload san..]
_ annoncelegale [frais tu stipulas un travail dissimule revoici ces annonc..]
勉強になるなー
http://www.aoky.net/articles/james_iry/brief-incomplete-and-mostly-wrong.htm
(01:27)
ThinkPad X100e CTO AMD Athlon Neo X2 デュアルコア・プロセッサ L335 Windows 7 Home Premium 32 正規版 11.6型HD液晶(LEDバックライト、アンチグレア), ミッドナイト・ブラック AMD M780G with ATI Radeon HD 3200 graphics 2GB PC2-5300 DDR2 (1スロット使用) 250GB ハード・ディスク・ドライブ, 5400rpm 6セル, Li-Ion バッテリー X1 なし ThinkPad b/g/n なし 1年引き取り修理
これで 57515 円かー。 そろそろ意味もなくぽちりそうでやばいと思う
(00:28)
は時として難しいですね的なコメントを長々と書いた。
http://d.hatena.ne.jp/os0x/20100518/1274204934#c1274510604
なんていうかこの手のマイクロじゃないベンチマークって、 よくわからない人が「Linux は Windows より軽い」とか言ってるような よくわからない議論に近くなっていってしまう危険があって、 かつまぁよくわからないメディアとかはそういうの大好きなので、 なんともかんとも。
なんかそういうよくわからないメディアで情報を仕入れた人が したり顔で「最近の Linux は重いらしいじゃないですか」 とか言ってきたりとかでほげほげ。
まぁそんなことはともかくとして CSS とかは WebKit もしくは khtml の功績なので、 こういうベンチマークでは WebKit と書いてあげて欲しい。
しかし同じ WebKit と言っても このベンチマークを下の方の画面が見えてる状態で走らせたら 描画起きるかもしれなくて、描画が起きると Windows だと Skia との違いとかが出てきて かつ Mac だといや Chrome も Safari も CG 使ってますよ みたいな話になって、 まぁつまり巨大なものの速度評価というのは難しいというようなそういう
(16:02)
Win64 では coLinux まともに動いてないとのことなので、 Virtual PC に Debian を入れてみたところ、 どうにもこうにも色々イマイチ。 インストール時にヘンなフラグが必要だったり、 ダウンロードが途中で不自然に切れたり、 x64 をサポートしてなかったり、 そもそも遅かったり。
最近たまに聞く名前であるところの VirtualBox というのを Win7 マシンに入れてみた。 なにやら問題が全然なくてとても快適な感じがする。
しかしこう環境うつしてみると 俺インフラを整えるのは結構ムダに時間かかるなぁと気付く。 もちょい必要なものを減らすとか 自分に必要なものは deb パッケージにしておくとか そいうのが必要なのかね。
(19:04)
http://twitter.com/sugamasao/status/14409373221
via http://twitter.com/alohakun/status/14413372212
ごめんなさいごめんなさいごめんなさい…
ついさっき力強く EUC-JP をシステムロケールにしてしまった…
漠然と UTF8 にしたいという思いは無いわけではなくて、 しかし何をしたら UTF8 に移行できるのかというのが 今一つ見えてないのがアレなんだよなぁ。
(02:40)
あまり評判がよろしくなさそうだし 機能的にもいらなさそうなので消した。
http://www.google.co.jp/search?q=consolekit&ie=euc-jp&oe=euc-jp&lr=lang_ja
(02:53)
ホームディレクトリ
ビルドするもの
apt するもの
(04:36)
あまり面白くないと文句言いつつ どんなゲームだったか思い出せなくなってたのでぐぐってみたら
http://sirou.blog.ocn.ne.jp/boardgame/2006/03/__6bfd.html
とかが出てきて、当時僕が思ったことをそのまま書いてくれてる感じだった。 要は推理ゲーのフリをしてる感じが気に喰わない
(04:40)
適当に cmd と emacs-* にディレクトリ名を入れるようにした。 vim-* もやりたいんだけど、 .vimrc からカレントディレクトリを 取る方法がさっくりわからんかったからとりあえず放置
(05:07)
明日 16:00 付近から引越しのためしばらく止まります。 しばらく、というのはうまくいけば2時間くらいかなぁと思っています。 うまくいかない場合もっと長くなってしまうかもです…
(02:01)
前 | 2010年 5月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ Gimite [どこかで聞いたことのある会社がやっているサービスですが、 http://www.unit-hosting.com/ ..]
_ shinh [たしかにどこかで聞いたことがありますね…情報ありがとうございます。 なんかすごい安いですね。最初100円分遊べるよ..]