朝起きたらからだがしびれたような感じで動かない。 というより胸が苦しい。 これは先週調子に乗って働きすぎたか。 薬を飲んで夕方まで寝る。
5pm ごろ起き出して昨日届いたモンティパイソン・ホーリーアンドグレイルを観る。 特典満載で全部観るのに時間がかかる。 本編にパイソンズのメンバーのコメント入りで観るモードもある。 さすがにこれはまた別の機会にする。
まだ体調が思わしくない。
先週作ってみた Java のパフォーマンスを計測するプログラムから 共通部分をくくり出して抽象化し、 実際に実行するクラスは導出するようにした。 それから出力結果を HTML にするオプションを追加。 これで実験結果を公表するときに便利になる。
Java のソースコードステップ数をカウントするためのツールをダウンロードする。 しかし、jar ファイルにリソースが入っていないため、 クラスパスを通すだけではいきなり例外で落ちてしまう。 実行するときのカレントディレクトリがこのツールと同じでないといけないらしい。 ちょいとこれはいただけないような気がする。 なんでこんな構成にしているのかな。 幸いソースコードがついてきたので、 再コンパイルして、 必要なリソースを含めた新しい jar ファイルを作ることにした。 もっとも再コンパイルする必要はないけど。
$ ant clean $ ant all $ cp -r doc/* doc/.picts classes $ cp icons/* classes/javancss $ (cd classes; jar cvf ../lib/javancss.jar)
というか本当は Ant の build.xml
を編集する TERMITE
というツールをダウンロードしたかったのだが、
こちらはなぜかおかれているはずのサイトにアクセスできずに手に入らなかった。
突然、知人から夜集まろうというメール。 相変わらず突然に相手の都合を考えないやつである。 もっともあたしの知り合いはみんなそうなンだけど。 で、いろいろ愚痴を聞かされる。 とはいえあまり大人の言う愚痴ではないな。 ちょっと考え方が後ろ向き。 まあ、愚痴を言って解決するなら安上がりなもんだ。
がーん。IE ってスタイルシートの white-space
には対応してなかったのか。
なので div
要素のスタイルで white-space: pre
にしていたところを全面的に見なおし。pre
要素に変更する。
このところちょこちょこと改良しているパフォーマンス計測プログラム。
実行速度とかの数値の桁あわせをするために DecimalFormat
クラスにトライしてみた。
しかしやっぱり C 言語の printf がどんなに便利だったかを思い知らされた。
フォーマットする数値の先頭に空白をパディングする機能がない。
フォーマットしたあとの文字列の小数点の位置が先頭から何文字目かが返ってくるので、
その値をつかって先頭に空白を挿入しなければならない。
とてもめんどくさいと思う。
そうやって先頭に空白を挿入したはいいけど、 <code> って空白を無視するのか。 ちょっと虚脱感を感じる。 空白ではなく を挿入して解決。
久しぶりに玉突きをしに行く。 相変わらずへたくそなままであるが、やっぱり楽しいね。 しかしやたらと 80 年代の BGM がかかりまくってたな。 はやってるのか?
先週から続いている Java のパフォーマンス実験プログラム。 今までは結果の出力をベタなテキストの出力とHTML出力を 引数で指定するようにしていたが、 面倒なので出力は HTML オンリーとする。
何度かプログラムを走らせているうちに、
どうにも期待する結果が出ていないことに気づく。
最初は無理やり推測して納得していたが、
SDK のソースとかを見てみるとそんなに差が出るはずがない。
それで Runtime.totalMemory()
, Runtime.freeMemory()
を計測する前後で出力するようにしたところ、
Runtime.totalMemory()
の値がだんだんと増加していることがわかった。
ようするにヒープサイズって最初から最大値を確保しているわけではないということか。
ということは多くのメモリを必要とする実験の場合、
先に実行する方がある意味不利なのだな。
ようするに Java VM は必要に応じてヒープを実行環境の OS から確保しているわけで、
最初に実行する実験はそのヒープの拡張のオーバーヘッドまで実行時間に影響するということだ。
拡張されたヒープは縮小することはないので、
それ以降の実験ではオーバーヘッドになることはないということか。
そのため今までは2回ずつしか実行していなかったが、 10 回実行した計測値の平均をとることにした。 そして 10 回のうちの最大値と最小値は取り除いて平均値を出すことにした。 最大値も最小値もきっとある特定の条件が影響しているに違いないのであるから、 そういうのまでデータに含めるのはよくないと判断したわけである。
ちなみに後で調べたらオプションでヒープの初期値を指定できることがわかった。
-Xms
, -Xmx
である。
昨日の天気予報によれば、夕方ににわか雨だそうである。 しかし朝起きたらあまりにもいい天気。 先週の計画どおり銀座に出てみることにした。
まずは伊東屋 8 階で 1 月ごろになくしたボールペンを購入。 これで 3 本目だ。 1 本目は洗濯機に放り込んでしまってばらばらになってしまった。 2 本目は酔っ払ってどこかにおきわすれたようす。 ロットリングの 4 in 1。 5000 円なり。 これは黒・赤・青のボールペンにシャーペンが一体になったもの。 それにしては適度に細く、程よい重さがあって好きなのである。 といってもボールペンの書き味は少し引っ掛かり気味であまりよくないと思うけど。 そのほか携帯用にイレイザーホルダ、 ロットリングの製図ペンの替えカートリッジ。
階を下って、 絵の具のフロアで配色辞典を見つけた。 これは学生時代に買ったもののやはりどこかにやってしまった。 多分押し入れの奥に眠っているのだろうと思うのだが。 配色辞典の隣に同じシリーズでもっと分厚いのがあったので、 こちらを購入することに。 あと配色に関する入門書と、 ダブルトーンの見本帳のようなもの。 いろいろなチラシやポスターのサンプルが豊富で眺めているだけで楽しい。 もうひとつ、 いろんな種類の紙に印刷した見本帳、というよりカード。 システム手帳に挟みこむための穴があいていた。 そのうちこれを閉じるのにシステム手帳を買うことになるか。
さらに下へ行くと手帳のフロア。 ポストイットケース、というよりカバーか、それの 1" x 3" のを買う。 これも同じもので 3" x 3 " を持っているがあまり活用していない。 小さいサイズならつかうかもしれないと購入してみた。 きっとつかわないんだ。 同じくポストイットを手帳に挟み込みこめるように台紙にべろがついたシート。 これも微妙に今つかっている手帳だとはみ出すような気もするが、 まあバッグの中に入れておいてもプラスチックの透明カバーがついているので、 中でバラけないだろうと思い購入。 さっきのポストイットケースを買ったのもその理由から。 ポストイットってケースに入れておかないとバッグの中でばらばらになってしまう。 かといって買ったときについてくるケースに入れておくと取り出すときが面倒なのだ。 このケース、伊東屋オリジナルであり、皮製で箱入りなのでちょっとしたプレゼントにもいい。 その他、手帳用ボールペン。かなり細く長くデザインがしゃれている。 これもつかわねーだろうなと思いつつ。 だいいち今つかっている手帳にはさまるかどうか。 それと今つかっている手帳用のメモシートの追加分。 これがなかなか売っていないので、時々まとめ買いをする。 ASCII の通販サイトでも購入できるが、 高々 800 円程度のものを送料払ってまで買う気はしない。 レジの前に立つと文庫本の栞兼バインダーが置いてあったのでこれもついでに。 ほんとに必要なのか。
これ以上いるとどんどん財布が軽くなっていきそうなので退散することに。 その前に、 B5 サイズのカッティングシートをもうひとつほしかったが、 本館では A4、 A3 サイズばかりだったので、 紙を専門においてある別館にないかといってみる。 案の定ない。 B5 サイズだとノートの下敷きにするのにちょうどいいので重宝しているのだ。 しかし店内を冷やかしていると、 紙で作る動物のキットが置いてあった。 何やら楽しそうなのでまとめて購入する。 作ってるひまあるのか。
それから目的のアフターシェーブとフェイスソープを求めて松坂屋へ。 途中松屋と三越でも探してみたがアラミスのブースは見つからず。 何とか松坂屋にてこじんまりしたブースを発見。 なんとなくほっとする。
しかし 900 のフェースソープはおいてなかった。 なので Lab シリーズのソープを買う。 アフターシェーブも Lab の無香料のものにした。 これならどのオードトワレにしても大丈夫でしょう。 ついでにトワレをと思い、 お勧めの TOMMY の夏向けのを買ってみた。 実際涼しげでいい香である。 1 万円以上お買い上げの方には特別に 2000 円でこのバッグをご購入いただけます、 ときた。 お前ら俺の財布を絞り尽くす気か。 よっぽど普段客がこないんだな。 いいでしょう買いましょう。 変にロゴが強調されていないのでなんとなく得した感がする。
すでに 6pm をまわっている。 先日 Web の日記でいけたにという蕎麦屋のことを読んだ。 いってみようかとふらふらと銀座 7 丁目資生堂のあたりにいったはいいが、 今日は休みのようである。 ここんところそばを食っていなかったので非常に残念。
家を出るときは、 用をたしたらぶらぶらと八重洲ブックセンターか 丸善あたりにも足を伸ばそうと考えていたがさすがに荷物が重く、 なんだか腰の骨がずれたような感じになる。 なので近場の本屋で時間をつぶし、 20時丁度の列車に乗る。
一時間と少しして到着すると雨が降り出した。 昨日の天気予報があたったようである。 しかしでがけに傘はよかろうと置いてきてしまった。 意を決して春雨にぬれながらそぞろに歩きだした。 3 分位しただろうか、にわかに雨が上がりだす。 確かに予報ではにわか雨であった。 こんなことなら駅で雨宿りしておけばよかった。
昨日の疲れか晩酌の深酒か、目がさめたらすでに昼を過ぎていた。 そして例のごとく胸が締め付けられるような感じ。 とりあえず薬を 2 錠飲んでおく。
そういうわけで外に出る計画はすべて取りやめ。 ネットなど散策してすごす。
そういえば某無料レンタルスペースは WebDAV に対応していて、 というか FTP に対応してなくて、それって便利なのかどうか気になっていた。 調べてみると HTTP を拡張したプロトコルだそうだ。 結構いろんなプラットフォームでサポートしているらしい。 Windows 98SE や Windows 2000 の場合 Web フォルダってのがそれだ。 ただ気に入らないのはほとんどのクライアントが GUI ベースだ。 ローカルで更新したファイルだけを自動的にアップロードしてほしいのである。
Dream Weaver や GoLive には WebDAV に対応しているようだ。 しかし持っている Dream Weaver 4 ではなぜか認証に失敗する。 どういうこと?
ちょいと検索したら sitecopy なるコマンドベースのプログラムが見つかった。 マルチプラットフォーム対応である。 が、なぜかこれも認証に失敗している。
Web フォルダの UNC パスとかがわかれば rsync で同期させるのでもいいんだけど。
結局放擲して、 先週からちょこちょこと作成している Java のパフォーマンス関係の情報を求める。 あまり日本のサイトには情報はないようだ。 それはそれとして、やはり Java-house は情報の宝庫だね。