読者です 読者をやめる 読者になる 読者になる

tom__bo’s Blog

情報系学生がプログラミングしたり、ボルダリングしたりボルダリングしたことを書くブログ。もはやダイアリー

"A VERY FAST SUBSTRING SEARCH ALGORITHM"読んだ

1990年, Daniel M. Sundayの論文 http://dl.acm.org/citation.cfm?id=79184 Boyer-Mooreアルゴリズムより高速な部分文字列検索アルゴリズムを提案している。 Quick Search(QS) Maximal Shift(MS) Optimal Mismatch(OM) の3つ。 これらはパターン文字列の処理…

筋トレBIG3を計測した

BIG3とは ベンチプレス・スクワット・デッドリフトのこと。 kintorecamp.com kintorecamp.com kintorecamp.com 今回の記録 上記のサイトで体重75kgの初級者・中級者と比較してみる。 このサイトでは初心者(未経験者)というのもあるのだが、高校の頃にも筋…

2016年終わり

去年の振り返りエントリを見ていて、適当に書いた割には今読むとそれなりに味わい深いことがわかったので、今年も振り返りエントリを書いておく。 目標の達成度 卒論提出!!! 提出した。良い。それだけ 国際学会で海外 行けた。 先輩の研究を引き継いだ形…

Systems Performance 読んでいく (7章 その3)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 7章3節メモリアーキテクチャを2つに分けた、後半部分。 7.3.2 Software メモリマネージメントに関するソフトウェアの仕組みは、仮想メモリ、アドレス変換、スワッピング、ページング…

Systems Performance 読んでいく (7章 その2)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 7章3節メモリアーキテクチャを2つに分けて、前半のハードウェア部分。 7.3 Architecture この章ではプロセッサとOSを含むハードとソフト両方のメモリアーキテクチャについて紹介する…

Systems Performance 読んでいく (7章 その1)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 7章2節まで。 7 Memory システムのメインメモリはアプリケーションやカーネル命令、それらの実行中のデータやファイルシステムのキャッシュなどを保管している。 多くの場合、これら…

Systems Performance 読んでいく (6章 その5)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 6章7節以降、6章最後まで。 6.7 Experimentation この節ではCPUパフォーマンスをテストするツールを紹介する。 バックグラウンドとして6.5.11 Micro-Benchmarkingを見るように。 6.7.…

Systems Performance 読んでいく (6章 その4)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 6章6節分析のみ。 6.6 Analysis この説ではLinuxとSolaris based OSでのCPUのパフォーマンス分析ツールを紹介する(Solarisはほとんど省略) この節で紹介するツールを以下に示す。 こ…

鬱になりかけて気づいたら筋トレにはまった

将来の進路を考えないと行けなくてかなり悩んでいた。 悩んでいたときも、進路を決めてからも、お世話になった人を裏切る判断をしたような罪悪感でずっと鬱々としていた。大学に行ったりバイトに行ったりで外出したときは割りと正常に動作していたので、それ…

Systems Performance 読んでいく (6章 その3)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 6章5節方法論のみ。 6.5 Methodology この節ではCPUの分析とチューニングをするための方法論を見ていく。 トピックを以下に示す これらをすべて行うのは現実的ではないので、筆者は p…

Systems Performance 読んでいく (6章 その2)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 6章前半部分その2。 6.4 Architecture この節ではCPUのアーキテクチャと実装をハードとソフトの両面から紹介する。 このトピックはあフォーマンス分析のバックグラウンドとしてまとめ…

Systems Performance 読んでいく (6章 その1)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 6章前半部分。 6. CPUs CPUは全てのソフトウェアを動かしているので、しばしばパフォーマンスの最初のターゲットになる。 特に最近のシステムでは多数のCPUを使い、カーネルによって…

ドスパラ「パーツの犬」モデルでPC自作した

PC

家族用のデスクトップPCが必要になったので、ドスパラの「パーツの犬」という自作キットでパーツを調達して自作した。 PC自作と言っても「パーツの犬」は自作用キットなので説明書読んで組んでいくだけ。 僕はPC自作したことがなくて、安いパーツで揃えて「…

Systems Performance 読んでいく (5章 その2)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 5章後半部分。 5.4 Methodology and Analysis このセクションでは、アプリケーションの分析とチューニングのための方法論について説明する。 分析に使うツールはここで紹介するか他の…

ISUCON6本戦で惨敗した

はじめに Catechinというチーム名で大学の友人(@Kender_09, @o_sama3)とISUCON6に参加してきました。 結果はタイトル通り惨敗で、最初に気づいたボトルネックに全く手を付けなかったくらい、迷走してしまいました。 チーム内での役割は緩やかに分担していて…

Systems Performance 読んでいく (5章 その1)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 5章前半部分。 5. Applications パフォーマンスは作業を実行するところ、つまりアプリケーションをチューニングすることが最良である。 これにはデータベース、ウェブサーバ、アプリ…

ISUCON6予選に参加してきた

ISUCON予選1日目にチーム名Catechinで参加しました。 結果が出たら人権をロストする可能性があるので、結果が出る前に当日にやった作業を振り返ってみる。 本選出場者が公開され、学生枠で2位(学生全体では3位)で本戦出場が決定しました(=゚ω゚)ノ 最後までgol…

Systems Performance 読んでいく (4章 その2)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 ※ Solarisに関する記述は省略しています。 4.3 DTrace DTraceはプログラミング言語やツールを含む観測用のフレームワーク。 この節ではDTraceの基本である、動的・静的なトレーシング…

LINE Summer Internship 2016に参加してきた

途中で1週間参加できない日程があり、終了が1週間遅れたけれど、LINEのインターンに参加してきた! 写真のバックアップに失敗していて思っていたより写真がなくなってしまった。 ヒカリエのお弁当! 中華! バーガー! 牛カツ! 牛タンの握り! めちゃくちゃ…

Systems Performance 読んでいく (4章 その1)

Systems Performance: Enterprise and Cloudを読んでいく。 前回の続き。 ※ Solarisに関する記述は断りなく省いたりします。 4. Observability Tools OSは歴史的にも様々なソフトウェアとハードウェアの観測ツールを提供してきた。 入門者には幅広いツール群…

Systems Performance 読んでいく (3章 その2)

Systems Performance: Enterprise and Cloudを読んでいく。 前回に引き続き自分用メモ。 後半は3節部分。 このブログに書き起こす作業に予想以上のコストがかかっているので、今後の章ではSolarisベースの説明に関しては書かないことにした。 Linuxの比較と…

Systems Performance 読んでいく (3章 その1)

Systems Performance: Enterprise and Cloudを読んでいく。 前回に引き続き自分用メモ 3章は長かったので、2分割。前半は2節まで。 3 Operating Systems OSとその内部のカーネルへの理解はシステムパフォーマンスに必要不可欠である。 この章ではこの本全体…

Systems Performance 読んでいく (2章 その3)

Systems Performance: Enterprise and Cloudを読んでいく。 前回に引き続き自分用メモ 2章は長かったので、3つに分けました。2章最後で、6節から2章最後まで。 2.6 Modeling 分析的なモデリングは様々な方法で行われるが、特に"scalability analysis"(スケ…

Systems Performance 読んでいく (2章 その2)

Systems Performance: Enterprise and Cloudを読んでいく。 前回に引き続き自分用メモ 2章は長かったので、3つくらいに分ける予定。その2は5節のみ。 2.5 Methodology このセクションではシステムパフォーマンスを分析するための方法論を紹介する それぞれ…

勉強会資料

達⼈人に学ぶDB設計徹底指南書・SQLパフォーマンス詳解を読んだので、そのまとめで話した。数人の友人(SQL叩いたことあるくらい)とやってたので、資料の作りこみも甘くてホワイトボードにガンガン図を書きながら話してた。せっかくなので、スライドは…

Systems Performance 読んでいく (2章 その1)

Systems Performance: Enterprise and Cloudを読んでいく。 前回引き続き自分用メモ 2章は長かったので、3つくらいに分ける予定。その1は1~4節まで。 2 Methodology パフォーマンスの問題に取り組むときに最初の挑戦は、どこから分析を始め、データを収集し…

Systems Performance 読んでいく (1章)

Systems Performance: Enterprise and Cloudを読んでいく。 https://www.amazon.co.jp/Systems-Performance-Enterprise-Brendan-Gregg/dp/0133390098www.amazon.co.jp 日本語版しかないけれど、読み始めたら面白かったので、一字一句読み飛ばさず頭から読ん…

CPAN Authorになった (Pgtoolsリリースした)

Pgtoolsというツールを作りました。github.com 遡ること去年の夏休み、、、 はてなインターンでの課題の一部として、PostgreSQL版のPercona toolkitがあると便利!というのが始まりだった気がする。Percona toolkitというのは海外のMySQLコンサル会社が公開…

第7回 PostgreSQLアンカンファレンス@東京に行ってきた

第7回 PostgreSQLアンカンファレンス@東京(2016/5/28) : ATND に参加してきた。 アンカンファレンスというイベント自体初参加だったので、発表したい人たちでプログラムが出来ていく雰囲気を味わえて面白かった。 僕自身は以前のブログで書いた"Slony-Iを…

ハードウェア・モジュール関連コマンド

Thinkpad-X260上でハードウェアやカーネルモジュールの設定確認をしたメモ。 Ubuntu 16.04を使っているけど、外部ディスプレイにつなぐとフリーズしてしまったり、まだまだわかってないことが多い。 kernel 4.6も出たのでアップグレードせねば。 あとはでき…

PostgreSQLで異なるメジャーバージョン間のレプリケーション実験

はてなのアルバイトでmaster-slave構成のPostgreSQL(9.3.*)クラスタをアップグレードするための調査をすることになりました。 サービスの性質上できるだけ無停止でアップグレードする必要があったため、Slony-Iを使ったダウンタイムなし(もしくは最小)のア…

systemdメモ

Ubuntuで、キーボードの数字と記号を入れ替え(シフト無しで記号、シフトありで数字になる)ようにしようとしていた。 .profileで予め用意したキーマップをxmodmapコマンドで上書きしようとしたけど、Unityに上書きされるのか、上手く書き換えられなかったの…

シンガポールのプリペイドSIMカード

シンガポールのSIMカードは2種類あって、S$38の方が良いよという話。海外に行く時にレンタルのwifiではなくSIMカードを買ったほうがいろいろ便利。 Googleマップで現在地がわかる(mobile Wifiだとたいてい出来ない) いざというときの電話番号が持てる 充電…

国際学会の質疑応答テンプレート

国際学会でポスター発表することになった。 とにかく英語論文の内容を説明するのはきびしいものなので、質疑応答に関するテンプレートを作ってそこは丸暗記する。 相手の質問の解釈と返答に思考リソースを割きたいので、この辺でつっかえて相手の興味を不意…

Thinkpadでのubuntu16.04環境構築

thinkpadX260を買ったはいいもののgentoo, debianとインストールに挫折してUbuntuで、まずはLinuxに慣れるところから始めることにした。 チップセットの対応とかビデオドライバがよろしくないとか、とにかくまだ自分には厳しかった。。。 日本語Limixがとに…

株式会社はてなに入社しました

株式会社はてなに入社しました! 株式会社はてなに入社しました - hitode909の日記 いえーいヽ(・ω・)/ 今日はエイプリルフールですね ⊂゚U┬───┬~ OWARI

Markdownで連続したハイフンのエスケープ

githubやメモ等にマークダウンで書くときに連続したハイフンが上手く表示できない問題に困った。 hogehogehoge ----------------- fugafugafugaのように書くとhogehogehogeが見出し語になってしまうのは当然として、 それを回避するために改行を挟むと、実際…

MacBook Air (13-inch, Mid 2013) バッテリ交換

残りの大学生活はLinuxに生きるんだ!!と意気込んだtom__boですが、まだまだインストール作業すら終わってない、、、 というか作業できてない、、、今回は普段使っているMacBook Air (13-inch, Mid 2013)のバッテリ交換をしたので思い出にブログ更新。 最近…

肩こり対策・解消法

毎日パソコンに向かっているせいで肩こりがやばいという人は多いと思う。 僕もしょっちゅう肩こりに悩まされていた(いる)ので、僕なりの解決策を挙げてみる。 とにかくPC作業のボトルネックだと思っているので、誰か他に知見があれば教えてほしい。 内容は…

Thinkpad 来た

PC

Thinkpad X260来た! 中古品のX250買おうとしたり、Lenovo USから整備品注文しようとしてことごとく失敗した。 カッとなってX260をカスタマイズして買った。 スペック Intel Core i7-6500U (2.50GHz, 4MB) ディスプレイ12.5インチ 1368×768 光沢なし メモリ1…

理科系の作文技術 読んだ

最近は論文を書いて、教授からびっしり修正が入った原稿がかえってくるというのを何度か繰り返している。 基本的にサーベイする論文は英語なので、(日本語のも読めという話)論文の書き方のメンタルモデルがきっちり出来上がってないということもある。しか…

GNU makeメモ

テキストファイルMakefileに必要なファイルと各ファイルのコンパイルのコマンド、ファイル間の依存関係を書いておくことで、自動的に一括でコンパイルしてくれる。 依存関係に基づいて、更新されたファイルのみをコンパイルしてくれるので、コンパイル時間が…

2015年

だいぶ酔っ払って12月はブログ書いてないなーと思ったので、適当に振り返りと目標を書いてみる。 年末だーという気分と最近詰め込んだ疲れで寝倒してるからやる気が出れば良さそう。 振り返り 就活をやめて大学院に進むことにした。いわゆる入院。 プログラ…

第33回 PostgreSQL 勉強会に行ってきた

2015/11/14に開催されたPosgtreSQL勉強会に参加してきた。相変わらずイベント系はなぜか記事にするのに間隔が空く。。。 第33回 PostgreSQL 勉強会(2015年11月14日) — NPO法人 日本PostgreSQLユーザ会 公演とPostgreSQLのパッチレビューをするハンズオンがあ…

0xDBEでPostgreSQL(Pagila Sample DB)を操作

以前の記事でPostgreSQL9.3で実験環境を作りましたが、そのとき使ったSakila Sample DB(Pagila)を0xDBEというJetBEANSのDBA向けIDE !?を使って見ていこうと思います。www.jetbrains.comPostgreSQLのツールだとpgAdminが有名そうですが、MySQLを触るときはSeq…

PostgreSQL レプリケーション構成を組んでみる

WAL, アーカイブログ, PITLもなんとなくわかってきたことなので、ようやくレプリケーションを試してみようと思う。 pg-poolⅡとかHA化のためのツールも有るようだが、今回はPostgreSQLの機能だけを使って構築してみようと思う。 毎回出しているが、以下のリン…

MORIPARK Outdoor Village 〜 ボルダリングジム紹介 〜

最近クライミングできていないtom__boです。 だいぶつらみが増してきたので、以前のクライミングジムのブログを書いて落ち着こうと思います。 夏の終わり頃に昭島駅のMORIPARK Outdoor Villageに行ってきました。 outdoorvillage.tokyo ここまで東京の西側に…

PostgreSQL WALとPITR

前回の内容からレプリケーション構成を組んでみようと意気込んでいましたが、そのためにWAL(Write Ahead Logging)やアーカイブログ、PITR(Point in Time Recovery)の知識があったほうが理解が出来そうなので、こちらをまとめることにしました。引き続きwww.a…

PostgreSQL サンプルデータベースで実験環境構築

最近はブログに書けるようなまとまった勉強をしていなくて非常に不安なtom__boです。今回はPostgreSQLつかっていろいろ実験してみたいので、環境を構築することにしました。(ただの作業メモになりそう。。。) バージョンのアップグレードも試してみたいの…

CyberAgent弟子入りインターンに参加してきた

9/14~10/9の約1ヶ月でCyberAgentのサマーインターン弟子入り(インフラコース)に参加してきた。 お世話になった社員の皆さんありがとうございました。(名前を出していいのかわからない) インターンの記事をかかないといけない気がしているのは多分僕だけ…