GMPマニュアル翻訳日記(2)

 つーことで,GMPマニュアルの下訳が完了した。3月中にできなきゃ一生できない気がしていたので,分からないところは適当にすっ飛ばしつつ,とりあえず意味が通りそうな日本語で埋めたというレベル。

 以降は,この下訳を直しながらの作業になるので,読みながら気になるところを紹介する日記になりそうである。

 通読して感じたのは,ほぼ独力でGMPを引っ張ってきたTrobjörn Granlundの個性だ。GNUの精神に共鳴して最初期からGNU Projectに参加し,ちょろっとでも商用ソフトにコードを流用しようもんなら激烈な批判を行う。多分批判の対象はIntel Math KernelとMathematicaのようだが,Microsoftにも嫌悪感をあらわにしていた時期も長かった。最近は老成したのか丸くなった感じもあるけど,20年以上も多様なCPU, OSに対応してきた,バリバリのアセンブラ&アルゴリズムマニアにして高速化に執念を燃やし続けてきた頑固職人ってのは,全世界探してもかなり希少な存在だ。ワシはご本人に会ったことはないけど,GMPのMLに流れてくる文面をチラ見している限りはかなりのトンがったお人のようである。遠目から敬しておきたい方である。

 しかしまぁ,長年に渡ってサポートを続けてきただけのことはあって,CPUの博物館みたいなことになっているのは,貴重かつ生きたソフトウェアの文化財といえるだろう。GMPよりさらに古い歴史を持つLAPACK/BLASがCPUアーキテクチャに依存した高速化の部分を他の研究チームや企業に丸投げしているのとは対照的である。

「現在は下記のCPU用のアセンブラコードが用意されています。
 ARM Cortex-A9, Cortex-A15, 汎用ARM,DEC Alpha 21064, 21164, 21264,AMD K8 と K10 (Athlon64, Phenom, Opteron等々,いろんなブランド名で販売展開されています),BulldozerとBobcat,Intel Pentium, Pentium Pro/II/III, Pentium 4, Core2, Nehalem, Sandy bridge, Haswell, 汎用x86,Intel IA-64,Motorola/IBM PowerPC 32 と 64 (POWER970, POWER5, POWER6, POWER7),MIPS 32-bit と 64-bit,SPARC 32-bit と 全てのUltraSPARC向けサポート付きのSPARC 64-bit。
 廃止されてしまったCPU用のアセンブラコードもそのまま残っています。」(1 GMPについて)

 コンピュータ博物館に収めたいコードも一緒に配布しているってのは貴重ではあるけれど,サポート面では厄介な問題もはらむ。mini-gmpなんてプロジェクトが提唱されるのも,レガシー化しちゃって分かりずらいコードを一部だけでもスッキリさせようということだろう。

 つーことで,4月一杯ゴソゴソ修正しながら愚痴とメモをここに書きつけていく次第である。

GMPマニュアル翻訳日記(1)

 GMPのマニュアルの翻訳を思い立ってから3年目,ようやっとあとひと月ほどで終える目途が付いたのでここで「後戻りできないように」そのプロジェクトの報告を行うことのにするのである。つか,そのうち誰かやるだろうと放置していたんだが,利用者は潜在的に多いはずなのに誰も日本語訳をしようとはせなんだ。使うだけ使ってContributeもナシか非人情な・・・と思っても,英語で十分事足りる世の中だし,まぁ今時翻訳などしても詮無いことではあるんだけど,「多倍長数値計算入門(一応100ページほどできているけどまだ仮称)」を書くにあたって,これだけはやっておかないとダメだろう,という自分に課した「勉強」の一環として取り組んでいるので,世の流行り廃りはどーでもいいのである。

 つーことで,本日頑張ったおかげで,「第15章アルゴリズム」以外の部分の下訳は完成した次第である。

 何で最新版の6.1.2じゃないんだという向きには

文句言うならテメェがやれ!

と言っておく。ま,完成の暁にはdiff取って書き換えする予定だけれど,どーせそんなに変わっている部分はないし,それよりむしろ翻訳する側としては

もちっと饒舌な解説削れTrobjorn!

と言いたくなる。まー,20年以上に渡って営々と開発し続けてきただけあって,CPUアーキテクチャやOSの博物館かこれはというぐらい古いシステムの話がごまんと残ってたりするのである。MMXってねぇ・・・懐かしいねぇ・・・と年寄りには訳してて感慨深いんだけど,不要だろうこれって記述が山ほどある。せめてForkしたMPIRはあっさり書いてほしいと思っているんだがその気はないらしい・・・だもんで,ワシの「多倍長数値計算入門(出版のあてもないけど仮称)」はごっそり削って骨だけにしてやると画策しているのである。

 つーことで,これからしばらくは「GMPマニュアル翻訳日記」を書きつけていくことにした。これやっておけば自慢(と言い訳)ができるので嫌でも翻訳が進むこと請け合いである(そうか?)。Twitterだと流れちゃってやっぱダメだ,自分なりのメモは分かりやすい場所に残しておかないとねぇ。

HTTPSに変更しました

 Let’s Encryptを導入してしばらく様子を見ましたが,機は熟していると思いますので,本サイトは全面的にHTTPS対応致します。まずはトップページとこのblogから対応し,順次他の静的ページを書き換えていきます(多分)。旧blogの方は・・・対応できるのかしらね? httpでもhttpsでもどちらも同じページを見られると思いますが,不具合ありましたらお知らせ下さいまし。

 当面,更新は気軽にできないとは思いますが,止めるつもりもないので,ボチボチ続けていく所存です。

 今後ともよろしくお願い致します。

幸谷智紀「LAPACK/BLAS入門」森北出版

[ Amazon ] ISBN978-4-627-84881-8, \2600 + TAX

 データ出た出たやっとデータ。悪戦苦闘したと見せかけつつ怠惰に過ごしたこの2年,毎回怒涛の如く押し寄せる編集担当Fさんの問い合わせ要求にきりきり舞いさせられながらもとうとう完成致しました。未完成の原稿を押し付けられて辟易させられた諸先生におかれましてはお詫び申し上げますと共に要らないといっても献本送り付け差し上げますのでどうぞ当方になり替わりまして恨みつらみ晴らして頂きたくいかようにもお使い下さいませませ。薄いから普通の五寸釘で打ち込めると思います。

 しかし出来上がってみればA5版で135ページ足らずのうっすいテキストなのに定価2600円(+消費税)とは暴利ではないかと訝しむそこのあなた! これでも安くしたのですよ,なにせ初版部数を売り切れるとはとても保証いたしかねる代物だし,弱小理工系出版社としては誠にリスキーな物件であるからして3000円でもどーだろーという線を何とか踏みとどまって頂いてこの価格に抑えたのですよこれでも! いーじゃない紙だけデカくて分厚くて開きづらいどっかのICTマニュアル本に比べれば,LAPACKEとCBLASとIntel Math Kernel Libraryと疎行列とMAGMAとcuBLASの解説に加えてOpenMPやPthreadまで言及しちゃってるんだから勘弁して下さいよ旦那。テキスト本体は薄くても,こっちゃどんだけしんどい思いして大量(でもないか)のプログラムを書いたとお思いか!

 まぁ,前書きにも書いたけど,この本,Web情報だけでスラスラLAPACKE, CBLASを使いこなしてプログラムをジャカジャカ書けるよーなパワフルな人向けには一切書いてませんので,読むだけ無駄,買うだけ無駄。とっととGoogleってBingってお仕事に邁進して下さいな,こちとら「行優先ってなーに?」「LU分解って酵素パワーみたいだけど洗剤?」「GPUってお絵かきのどーぐ?」ってなド素人向けに商売しようってんでぇこのすっとこどっこい。連立一次方程式と固有値問題とBLAS活用だけに話題を絞ってどんだけのことができるかっていうHPC業界と数値解析業界からは蝙蝠野郎と白い目見られそーな類書がないテキストなんでいっ。お手本がないテキスト書くってホントしんどいもんなんだよ全く,迷路みたいで精神的に参った参った。人様が積み上げたライブラリにすがってプログラムと解説書くだけでこんだけしんどいのに,全く漫画家さんとか小説家さんは偉いよなぁ,毎回読者を引き込むストーリーをスクラッチから考えなきゃいかんのだから全く頭が下がります。

 つーことで,章立てとかバグ情報とかプログラム一覧はサポートページを見て下さいな。「あの膨大なLAPACK/BLASの全解説?」ってんなわきゃねーだろっての目次見て目次。詐欺だといわれないよーに予防線張っておきますんでその辺誤解のないように一つヨロシク。まぁ学部2~4年生辺りでCは触ったことあるけどボチボチ高速な線型計算を使わないとダメなんだけど自分で書くのはシンドイという状況にある学生さんにとっては導入用としてはそこそこお役に立つのでは?ってな内容でございます。書店や図書館で見かけたらお手に取ってご覧くださいませ。で,間違いあったらお知らせ下さいませ。

 で,心は既に「多倍長数値解析入門(希望的タイトル)」に飛んでたりするんで,もちっと本格的なLAPACK/BLAS本をお望みでしたらちゃんとした線型計算・HPC屋さんにご依頼して下さいまし。なにせこの界隈の方々が立派な解説書書かないからこっちにお鉢が回ってきちゃったんだからねっ!