Skip to main content

ログ取得ツール

レイトレ (2)

(1)の続き。POV-Rayで同じ画像を出そうとしてみた。POV-Rayというのは最近の若い人は知らないかもしれませんが、私が子供の頃からあったレイトレ言語のコンパイラみたいなソフトウェアで、今からすると非常に貧弱だった当時のマシンでも頑張ってレイトレしてくれていた。懐かしいなー。

PythonでPOV-Rayの言語構造を出力するライブラリでもないかなーと思って探してみたら、vaporyっていうモジュールが見つかった。

作ってみたのがこれ→ https://github.com/wtnb75/rtow1/blob/master/povray/where-next.py

やってみると、PyPyで1時間以上かかっていた画像はサイズを増やしても1秒と経たずに出力される。POV-Rayすげーなおい。圧倒的ではないですか。

なるほど。

まあでも、もうちょっと時間を見つけてPythonで次章(次週)も頑張りますよ。序盤から「君がこの道を選んだからには…」みたいな文が出てきていて、割と熱くなれそうだしね。

川崎5-1清水 (2020熱狂のシーズン到来!)

来ましたよ今年が。例年より少し早く、来ちゃった来ちゃった! 待ち望んでいた人も多いことでしょう。ワクワクドキドキ、一喜一憂、高速手のひら返し!! いいですねえ。今年は中村憲剛がリハビリ中に始まるというその影響が気になるところではあるよね。雨は小雨になり、ほぼやんで、シーズンは始まった。

開始から割と飛ばしてましたね。相手とのプレースピードの違いでぶっちぎっていく感じ。開幕からこんなキレてていいの? ってくらいキレキレで、圧倒していく。

今年は最初から飛ばしまくってシーズン途中で息切れしても、その頃には中村憲剛が戻ってくるし…という考えがあるのかもしれないねえ。

前半の出来を考えると、後半に盛り返して1点返した清水はさすがにプロだなって思いました。ただまあそこから小林悠を投入してあっさり主導権を取り戻し、容赦のない追加点を連発。気持ちのいいゴールショーになりました。

若手、新加入選手、古株と満遍なく活躍し、絶好の開幕戦になりました。今年もガンガンやれそうだな。オレには見えた。みんなにも見えただろう。

RasPiのPyPyはXeonのPythonにすら勝てる!

https://github.com/wtnb75/rtow1#performance

話題沸騰(?)のRayTracing In One Weekendやってレイトレを完全に理解しました。性能度外視でいいかとPythonでやりましたが、PyPyを使うと割と実用的な速度で動くということがわかった。環境としては、普通に世間でvCoreとか言って売ってるVPSと、手元のRaspberry Pi。普通のCPythonは十分遅いけど、PyPyを使うことでそこそこ高速に動くことができる。Raspberry Piは2Bと3Bの2つ持ってて、2Bの方は設置場所の問題もあって、負荷をかけ続けると安定動作してくれない。最後のやつはついに完成しませんでした。どうしても途中で落ちてしまう。3Bは余裕だった。

それでこういう計算の場合、PyPyはPythonよりも10倍以上高速だということが判明した。なかなか凄いです。何より、ちゃんと動くという点も偉い。PyPyなかなか侮れませんよ。

しかしCPythonだと流石にきついね。最後のなんて、Xeonなのに45時間もかかりましたよ。PyPyなら1時間半で終わる。まあ、最適化も何もしてないGILありのPythonでシングルスレッドだから、高速とは最初から思っていないけども。まー単純にmultiprocessingで並列化するだけでもかなり効果はあると思うけどね。RasPi3Bだって4コア持ってるから。

GitHub Actions、かなり最高に近いけど

最近GitHubでActionsを使っています。個人開発の話です。会社ではちょっと違うやつを使ってるんで。

Actionsはベータに当選(?)して使えるようになってから少し使って、本リリースされたあと最近になって頻繁に使うようになった。過去に作ったPython関連のリポジトリに適用して回る作業をしたり。これで、PyPIにリリースしたりgithub-pagesにビルド結果を上げたりといったタスクが非常に簡単になった。

自分が使っているルールは割と単純で、

  • masterに上げる=github pagesにビルド結果が上がる
    • 最近peaceiris/actions-gh-pages@v2にforceOrphanオプションができて、gh-pagesに履歴を残さない設定が可能になった
  • ブランチに上げる=テストが走り、PRのページにCIの結果が上がる
  • 先頭に「v」を使ったタグがつく=vを抜いたバージョンのwheelを作ってPyPIにアップロード

って感じ。バージョン番号は適当に0.0.1からインクリメントしているという、まあ、、不良開発者です。本当はセマンティックバージョニングにするのがいいんでしょうけどね。非互換があっても末尾インクリメントだけ! だってユーザほとんどいない&カネもくれないのに、めんどくさいじゃん。

人がデジタルサイネージを覗き込むとき…

南北線に乗っていて、あるじゃないですか、ドアの上にディスプレイがついてるやつ。広告や乗り換えの案内が流れる。いわゆるデジタルサイネージね。

それが新しくなっていて、かなり鮮明な映像になっていた。ボーッと見つめていたら、よく見ると「センシングサイネージ」と表示されていて、見つめている君を見つめているよと。データを使うよと。なるほど…カメラがバッチリついてました。見られていたか。

現代においては、画面を覗き込むとき、画面もまた君を覗き込んでいるんだなと得心してしまった。

自分としては、車内犯罪の対応のために監視カメラを置く方向にまず行くんだと思ってました。それなら犯罪も冤罪も防ぐ効果が見込めるわけで、利便性は高まる。それは許容できる内容だと思うわけよ。しかし現代はさらに先を行っていた。乗客にとっては何の利便性も得られないこと(広告の効果を上げる?)のためにカメラをつけるなんて。なんという深淵。

その場所が電車のドア上。許されるんだな、これが。ちょっとした衝撃を受けた。しかもこれ防犯カメラ用途には使わないんでしょ??

ソフト同人小説

だいぶ前のことだけど、私の祖父が見知らぬ人の同人小説に登場していたのを発見した。ノンフィクションの伝記みたいな小説。フリーのブログサイトに連載されていた。元は自費出版(?)したやつだけど、孫が打ち込んでアップしてくれた、みたいなあとがきがあった。著者は祖父と同年代の人かな? まあ、祖父の出演はちょい役でしたが。

この祖父は20年以上前に死んでいる、もはや自分にとっても家族や故人というより「ご先祖様」扱い。その思い出も子供時代のもののみ。だけど、たまたま人名でググったら出てきて、驚くべきことに本人役だったという…

他人の小説に登場するほどロックな男だったかと、正直に感心した。創作活動系に縁があるのはもう一人の祖父の方だと思っていたけど(こっちの祖父も実は文章を書いて自費出版している。私も1冊もらったけど、ついに読み終えることはできなかった!)、こっちもなかなかやるねえ。思えば、小説内の彼の事績に関連するエピソードが私の実際の記憶にもあったりする。感動の再会のような気分だよ。

3位の話

少し前に、息子の一人があるスポーツの大会で3位になって嬉しがっていた。そこで満足してはならんぞ…と思いつつ、おめでとうとは告げたものの、もっと上を目指したらどうかという内容を、どう伝えるべきか。ダイレクトに言うか? こいつの性格を考えると策を弄したほうがいいのか??

そんなことを考えていたら、彼のほうから自慢してきました。
「お父さんって3位になったことある?」
君は父と張り合うのがライフワークになっているね。
私は答えました。
「高校大学で○○(あるマイナー競技)をやっていて、小さな大会で3位は2回くらい入ったことがあるよ。だけど1位は取ったことないねー。100人以上参加する大会だと確かベスト8が最高だったかなー」
「ふーん」

これで彼が1位を目指す気になるんじゃねーかと期待しての発言です。実際は中学時代の部活(高校大学とは全く別の競技)では市や周辺地域のレベルでなら1位は何度もとりましたが…。小学校時代にそこそこガチ勢だったし、小さい市だったからさ。ウソはついてない。つまり1位になっても父より上に立てないんじゃ、やる気にならんだろうなという計算。

hello cyclingの改善と改悪

変更があってからしばらく経過してしまったが、私がかなり頻繁に利用しているシェアサイクルのhello cycling、以前に記事を書いたあと、サービス仕様が少し変わった。そしてそこそこの時間が過ぎたんで、それについて述べておこう。

まず、消費税で便乗値上げした。15分60円を70円にするという…17%アップ! 消費税の2%アップと比べて、ちょっと幅大きくないっすか? 現金払いはできなくて、カードやポイント払いだから値上げは1円単位でいいと思いますが、なぜ10円単位にする必要があったの?? まあ元が安かったから暴利感は少ないが、こういう露骨な便乗値上げは行政指導してもらいたい。増税推進した役人や政治家はどう思っているのかな? 選挙でコレを許した俺らもザマねえなあと思ったよ。

電池の残量がアプリで表示されるようになり、0%の自転車を借りずに済むようになった。割とでかい改善で、満足度は爆上げ。こういうのを待っていたんだよ。表示はざっくりだが、自分としては0%が避けられればそれでいい。残り10%でも到達できる範囲しか乗ってないから。

ルンバの安物互換電池!

お掃除ロボットのルンバ。私はその昔、結婚した頃に廉価モデルを買って今まで使ってきました。外出中に床がハンパなくキレイになるので便利極まりない。家族が使いたがらないので使用頻度はそれほど多くないんですが…

だいたい毎年電池を交換したり分解掃除したり部品交換したりしておりますが、毎回「これよくできてんなー」と思います。非常に、保守しやすく設計されてるんですね。アメリカ製品はこういうところが良いんだよな。信頼。

ただ交換する電池はパチモンの安いのです。毎度毎度の中国製。純正品の入手性と価格がクソなのはダイソンと同じで、ただパチモンが多く出ているのがさすがワールドワイドで売れまくった製品だなと。10年以上前のモデルの交換部品がまだまだAmazonで安く手に入るんですからね。便利な世の中ですよ全く。しかもメーカーは電池の規格変えてないのよね。マジで偉い。

で、今回また電池がヘタってきたのを感じて交換したんです。なんか早いなって思いつつ、さすがに安物すぎたかなって感じで。

川崎1-4マリノス (最悪の中では最良の? 結果)

いやー豪快に負けましたね。とてもホーム最終戦とは思えない負け方。今季のホーム戦を象徴するような? いやここまで豪快にやられたケースは初めて? どっちなんだろう。

試合前は正直「FC東京がリーグ優勝するのは嫌だなぁ」という思いでいっぱいだった。つまりこの試合はうっかり勝ってしまうんじゃないかと思っていたんだよね。で、最終戦FC東京よりはマリノスの方がマシだから、頑張ってよと。そういう結末を想定していた。自分勝手な、楽観的観測。

川崎は優勝の可能性が0になり、3位(ACL圏)の可能性はわずかに残されていた状況。まあ、中位の中の上位? って感じで、カップ戦とったこともあって無駄に満足を感じており…正直なところ消化試合感覚が。応援もパネルやフラッグを出したものの、風もあって寒く、声も出てない。ただチケットはかなり売れたみたいね。緩衝帯の位置がかなり深く、これまで数々のトラブルw を引き起こしてきたマリノスサポは最も狭いエリアに閉じ込められていた。それを眺めて、もっと広いスタジアムがいいよなーなんてぼんやり思っていた、昼下がりの出来事。