ALH84001

私的コラム&雑記(&メモ)

今週の興味深かった記事(2018年 第47週)

2018-11-25 | 興味深かった話題

NRAM

サーバー/PC主記憶DRAMの置き換えを目指すナノチューブメモリ - PC Watch

 ソフトウェアエンジニアリングを学んだ人であれば、こういう話を聞いたことはあるだろう。「メモリーはレジスタの1000倍遅く、HDDはメモリーの1000倍遅い」。もちろん、この1000倍というのは概算/アイデアであって正確な値ではない。10~100倍ならなんとかなるかもしれないが、絶対的な性能の差の壁がそこにはある。
 この20年間ほどメモリーは頭の痛い問題であり続けている。なにせCPUと比べても速度がまったく上がらない。2000年頃から考えてもSDR→…→DDR4と帯域は8倍以上にも向上してきたが、セルの動作速度(=読み書きの遅延)は過去20年で2倍程度にしか向上していないPC100(100 MHz)→PC4-25600(200 MHz)。

 なぜ上記のようなことを述べているかといえば、IntelのOptane Persistent MemoryHP EnterpriseのThe Machineなどを見ても分かる通り、メモリー階層の変革が必然的になりつつあるように見える。CPUの性能向上は物理法則の壁にぶちあたりつつあるが、もし高帯域・高遅延・大容量のメモリーが発明されるか(※これは大変に望みが薄い)、あるいはメモリー階層を変更してメインメモリーを特大容量・不揮発性にできればコンピューターの性能はまだまだ伸ばせる(希望的観測)。本記事のNRAMやOptaneやThe Machineからは業界がそういう模索をしている姿が垣間見える。

QNAP製PC拡張カード

QNAP、Core i7/DRAM/SSDの“PC一式×2”を搭載したPCIe拡張カード - PC Watch

 これはまったく用途が想像できないが実に興味深い。
 ブロック図を見ると拡張カード上にPC構成部品が2台分載っており、4個搭載されている10GbE NICでホストPCと拡張カード上の2台のPCがやり取りすることになる。つまりホストPCから見ると拡張カード上の2台のPCには直接的な連携機能はない。ところで10GbEの最大の弱点はPHYの発熱なので、NIC 4個であればPHYを省略してLayer 2でやり取りが可能なはずだが、PHY部分が載っているのか図ではよく判らない。とはいえ、Layer 2でやり取りするならばL2 Switchチップを使ってもよかった気がする。

 最近のQNAPはQBoat Sunny開発ボードなど非NASデバイスにも積極的だが、目的が解り難い製品が多く出てきている。
 今回の拡張カードの場合ではモノとしては興味深いものの、なぜPC 2台なのかという意図が分からない。上述の通り2台の間に連携機能はないからである。それならば、もしかしたら超低電圧版Core i7 7567U(2core/4threads 3.5-4.0 GHz 28w)2個よりも高性能モバイル用Core i7 8850H(6core/12threads 2.6-4.3 GHz 45w)1個を使ったり、あるいは省電力なNVIDIA GeForceを載せた方が良かったのではないだろうか?(※いずれにせよ、用途によって最適な構成は変わる)

なぜデスクトップLinuxは普及しなかったのか?

なぜ“デスクトップLinux”は普及しなかったのか? - ITMedia

 記事中ではデスクトップのインターフェースよりもデバイスドライバーについて述べられている。個人的にはデスクトップアプリケーション類の使い勝手の悪さの方が問題だと思うが、デバイスドライバーも確かに問題ではある。
 なぜデバイスドライバーが問題かと言えば、これも様々な理由が考えられるが、GPLのLinux KernelにロードするカーネルモジュールはGPLでなければならないからで、デバイスベンダーはOpen Sourceでソフトウェアを書きたがらない。そこで有志がドライバーを書くものの、今度は類似のドライバーを汎用化しようとするため速度が出ない状態が続いている。もしLinux KernelがMITライセンスかApacheライセンスなら少しはマシだったかもしれないが…ちなみにAndroidで状態がマシなのは、多くのベンダーがGPL違反しているからである(最近はQualcommもCode Auroraでオープンソースに積極的だそうだが…しかしAdorenoや各種モデムのファームウェア/ドライバーのソースコードが公開されたという話は聞かない)。
 また、記事中で指摘されている通り、ディストリビューションを絞るというのは確かに優れた解で、現状ではディストリビューションの数が多過ぎ「車輪の再発明」的なマンパワーの無駄がある。

 もっとも、いちLinuxユーザーとして言わせてもらえれば、例えばAndroid端末や家庭に普及しているWi-Fiルーターなどが成功していることから分かる通り、デスクトップは諦めて専用設計に特化したり、サーバーに特化したりした方が良い。

Comment