憂鬱な午後のひととき


8月28日_

秀丸でウィンドウ縦分割

メニューには横分割しかなくててっきりできないものと思っていたら, [その他]→[メニュー編集]→[ウィンドウ]で[ウィンドウ分割左右]というのがあるやんか. チェックしたら使えるようになった. ver 8.00ぐらいからの機能らしい.

8月20日_

PC-1246のBEEP

今回は持って帰らなかったけど多分電源入れれば動くと思う. PC-1246メモリ拡張大作戦によるとメモリは1278バイト(KBではない!). あれ, 私の記憶では1KBないと思ってた. 初めて買ってもらったコンピュータでとてもよく使った. PRINT文に渡す文字列のダブルクォーテーションは閉じてなくてもよいのでかかなかったら1バイト減らせるとか.

BEEPがならないのは許せないというのはよく分かる. 当時, BEEPコマンドがあるのに音が出ないのでものすごく悔しい思いをしていた. 改造すると音がでるようになるのか. 私は機械をいじるなんて発想はそもそもなかったので無理だな.

ただ, そういえば違う方法で"音"を出していた. ある日, ポケコンをいじっていて近くにあったラジオにノイズが入ることに気がついた. で, いろいろ調節してある周波数に設定すると結構よく反応することが分かった(もちろん向きや傾きのも依存する). そしてポケコンでFORループなどを回すとそのノイズの音程(?)が変わる!

FORループの調節をしたり適当なダミー計算を入れて「ほら, ポケコンで音が出るようになった」と友達に自慢してたような.

8月19日_

メールとかwebとか

以前は1日でもアクセスできないと心配になったりしてたけど, 最近は1週間ぐらい別にいいかと思うようになった. 実際特に問題は起こらない(というか起こっていても認識できないというべきか).

8月18日_

TOWNS復活

実家から取り寄せたTOWNSの電源まわりを動かなくなったHC側に移す. なんか今となっては意味不明な結線や切れ込みなどあってやりにくい. 水晶発振器が変わってたりソケットに置き換えられていたりも(これはベースクロックアップのため).

電源を入れたらあっさりHDDへのアクセスまでいった. これは望みがある. HDDアクセスエラーで止まってるけど, いろいろ設定を変更したら認識するようになった.

以下, 備忘録. CMOSクリアはq:\exe\あたりのツールで行う. HMMなどのMS-DOS領域の設定はCD-ROM起動してからコンソールに行ってsetup.exeを実行. 常用していたときでも殆どしたことないのでやりかたを忘れてて探すのに苦労した.

ある程度は動くようになったがHEat(テキストエディタ)などネイティブアプリが動かない. うーん. いろいろいじっていて搭載メモリが104MBもあることに気づく.

これはもしかしてメモリ初期化に時間がかかりすぎてるだけ?と40MBぐらいに減らしてRAM-DISKなどを設定したら動くようになった.

次に画面モードが640x480のままから大きくならない. 設定ツールでハイレゾ(1024x768)にしてるのだけどなあ. いろいろやっていて思い出した. 確かこのツールはバグってるか何かで一度ローレゾに設定してから再度ハイレゾにしないといけないのだった. それをやってハイレゾになる. めでたし.

あとは起動時のメモリカウントをしないモードで使ってたのだけどCMOSクリアしたのでカウントするようになってしまった. 流石にどこのIOをいじればよかったかまでは覚えていない. 今度実家に戻ったら雑誌で探すか.

8月16日_

古いマシンの整理

実家にあった古いパソコンや部品を整理して捨てる. TOWNS-2Fも電源が入らなくなっていたので捨てる. FM-77AV20や40EXのキーボードや24ドット熱転写プリンタとか欲しい人いた...わけないよな.

3/16に手元のTOWNS-HCの電源が入らなくなっていたので, モデル不明の白TOWNSを持って帰る.

8月13日_

ペルセウス座流星群

夜自転車で石舞台まで行って空を見る. 上を向いてると首が痛いので野原で寝ころがった. 暗くて見えないが何人か来てる人がいるようだ.

何個か流れるのが見えたので満足して帰る.

8月12日_

今日からリフレッシュ休暇で1週間休み

ちまちまとコードを書いては消し書いては消し. 意外と難しくて悩みながらも楽しい. エアコンをつけずにいたら部屋の温度が34度になってしまったので諦めてつける. 明日から実家に戻るのでしばらくネットにつながりません.

『旅猫レポート』(有川浩)

野良猫と、その猫が怪我をしていたので拾った主人公との二人旅. 『夏への扉』や『コロボックル』ネタなどまじっていてニヤリとする. 猫が好きな人にはたまらないんとちゃうかな(私は特に好きではないが).

8月10日_

『放課後探偵団』(似鳥鶏 鵜林伸也 相沢沙呼 市井豊 梓崎優)

高校生, 大学生が主役のミステリ短編集. どれもよくできていて楽しめた. 著者たちの別の作品も読んでみようかな.

昨晩, 食事中に酷く舌を噛んでしまって血が2時間ぐらい止まらなかった. まだ痛い. 疲れてるとたまにそういうはめになる.

8月9日_

バグ調査

ここ数日, あるアプリケーションが特定の条件下でbacktrace()を呼ぶとSISSEGVする原因を調べていた. ある変数をlocalからstaticにしたら出なくなったので, どこかでメモリ破壊を起こしてるのだろうと思ってその探し始める.

スタックの書き込みオーバーランをチェックする-fstack-protector-allをつけてビルドしても変わらない.

そこでbacktraceをあちこちに埋めて, 落ちてしまう箇所を二分探索してみようとした. ところが症状が非常に不安定でprintfを入れたりコードの一部をコメントアウトするとSEGVしなくなる. デバッグ時によくあることだが, なかなかやっかい. 該当個所を見つけたと思っても, 実は違ったということを何度か繰り返す. これはきつい.

それで方針を変えてmain()から落ちるところまでの距離を出来るだけ短くするようにコードを削る方針にした. SEGVする状態を保ったままひたすらコードを削る. 削りまくる.

そして, これはmain()の前に実行される何かの初期化処理の中で悪さしてるのか, と思われるぐらいまで処理が簡単になってきた. だから今度はリンクしてるオブジェクトやライブラリを減らし始める. どんどん減らすと結局元アプリケーションのコードは1行も残らなくなってしまった.

つまり, 明らかに正常な十数行のコードなのにSEGVしてしまう状態にたどりついた. 結局コンパイル環境と実行環境との間の共有ライブラリの微妙な違いが問題だったようだ(バージョンは同じなのにバイナリが違ってた).

こういう原因を特定する作業というのは, 勘や泥臭い作業も多くてなかなかノウハウとして共有しにくい. 今回は実況中継的に社内で発言していたので(明後日の方向に進んでたり, 間違った推論も含めて), うまくまとめるとよい題材になるかもしれない.

8月2日_

第一回XeonPhiハッカソンに参加

新宿かあ, 渋谷の乗換面倒だなと思ったけどよくみたら新宿三丁目で乗り換えるルートがあったのでそちらにした. ビルが高いので上ばかり見て歩くいつものおのぼりさんである.

午前中は軽くXeonPhiのアーキテクチャの話を聞いたり, 「XeonPhiの中の人だけど何か質問ある?コーナー!」で初心者質問をいくつかさせてもらったり.

XeonPhiはSSE/AVXを持ってないんだねとか, コアは昔懐かしPentiumでuパイプやvパイプがあるとか.

午後から本格的にハッカソン開始. いろいろみなの話を聞きたいのだけど実装もしたいのでどうしようか悩むが今回はひたすら実装することにした.

当初, お題は圧縮Suffix ArrayあたりのコードをOpenMPで240スレッドで走らせようと思ってたのだけど, OpenMPをonにしたら何故か遅くなったのでやめた(XeonPhiのせいじゃないです. こちらのコードが悪い. → でも発表会で他にもそういう人はいた).

fmathのexpを移植することにした.

と言っても最初はドキュメントを眺めたり, ヘッダを眺めたり簡単なコードを書いて結果を確認したりの繰り返し(結局は最後までそれだったが).

シャッフル系が何をつかってよいのか分からなかったり, 32bit単位以外のシフト無いなどにはまる.

夜の7時半頃ようやく正しい値を出すようになったところで時間切れ. 最適化には手をつけられず. ピザを頼みながら懇親会なんだけど, 今日の成果を発表しないとピザを食べる権利が与えられないのでみな粛々と資料づくり. 私のは[第一回XeonPhiハッカソン].

発表したけどピザは冷めていた. 無念. 他の人の話も聞きたかったけど時間も遅くなってきたので途中で退出.

会を主催してくださった山田てるみさん, 会場を提供してくだっさって, いろいろ裏方作業をしてくださったさくらインターネットの方(本名しか覚えてないので伏せます) どうもありがとうございました.

PS. x86/x64最適化勉強会6で発表して欲しいネタもいくつかあったなあ. エントリーしてくださらないかな.

8月1日_

『平等ゲーム』(桂望実)

瀬戸内海にある1600人しかすめない全員平等の島. 仕事は4年後との抽選, 家賃は無料. そういう島で育った主人公は, たまにおこる欠員を埋めるための勧誘員の仕事をしている.

本土の人は絶対来たいという人も入れば, 今はいいという人もいる. 島をユートピアと信じている主人公は断る人がいるのが理解できない.

ただ主人公がユートピアと信じていた島にも後ろめたいところがあることが分かってきて, 正しくあるべきだと糾弾する. そのあたり, 自分も似たところがあるようで, あるのでみてると痛々しい.

読んでから気がついたけど, 著者はこないだ読んだ『県庁の星』も書いてたのか.


御意見は光成滋生<herumi@nifty.com>までお願いします