あえて二兎を追う未来、追わない未来。   

2008年6月22日



☆茨城の温泉に行ってきた。   
さて、引っ越し作業も終わり、ようやくノンビリしているのだが、 ここ数ヶ月Celerom-Mマシンを1台作った以外は全然週末を楽しんでいなかった。 そんなわけで、引っ越し疲れの癒しもあって週末には茨城の温泉に行ってきた。 普通はお祭り見物の帰り際に温泉に行くのであるが、 温泉そのものを楽しむために出かけるのは久しぶりである。

もちろん、近場に温泉が無いわけではないのだが、 ちょっと遠出しないと旅行気分が味わえないので、今回行ったのは茨城でも水戸近くの この温泉

ホロルとは地元でフクロウの親分を意味するのだそうで、 町の商標として商標登録までされているのだそうだ。 確かに周囲はフクロウもたくさんいそうな緑また緑の森の中。 こういうところに来るとさすがに「遠くに来た!」という感慨にひたる事ができて、 温泉気分もワンラックアップである。

引っ越し疲れを癒すため「ホロルの湯」に遠出。
ダム湖の脇にあって、緑がいっぱい。周囲は「となりのトトロ」の舞台みたいな雰囲気だ。
写真では音は伝わらないけれど、周囲は野鳥のさえずりがすばらしい。

ここの温泉、パッと見、単純泉に見えるのだが、入ってみるとほんのりとヌメヌメ感があって、 いわゆるほんのり美肌系のお湯である。「おりゃ〜、温泉に行くど〜。」と、効能目当てでバリバリに気合いを入れて行くときは、 腐卵臭バリバリの硫黄泉とか、真っ黒けの黒湯とか、pH1.2の玉川温泉みたいにいかにも効きそうという温泉を選ぶのだけど、 今回は効能よりも癒し目的がメイン。 つまり、その意味ではあまり個性の強すぎる泉質でもダメで、こういう意味ではここはほどよくベストな癒し系のお湯なのだ。

癒しという意味では、周囲の緑がきれいな露天温泉があるのが、とってもグー。 また、「城里」という店内レストランに地粉で作ったうどんのセットメニューがあるので、 当サイト的には湯上がりにはこれがおすすめである。 明らかに無漂白のうどんは本場讃岐並みに腰があって美味かった。

お湯に浸かりながらプロセッサの消費電力について新たなネタを考えたりと、 何というか...数年前の地獄の週末(月休2日制と言われてた。)と比べると、人間らしい生活ができて嬉しいよね。

ちなみに、以前引っ越しに関して、不動産ネット情報の信頼性について疑問を呈した事があったが、 やはりというか、何というか、ついに 捜査の手が入ったようだ。 (新聞系のソースはこちら。) 当サイトの場合は、「申し訳ありませんが、この物件は契約済みです。」と言われたわけなので 抹消遅延として扱った訳だけど、こうなると実は自分の場合でも最初から客寄せパンダの架空物件だったのでは?という疑念はぬぐいきれないな。

同記事によると公正取引委員会の調査開始は当サイトのネット記載(3/31)の直前である3/25開始なんで別段当サイトの記事がきっかけという訳ではないだろうが、 公正取引委員会はいいタイミングでいい仕事をしてくれたようである。 お役所仕事と言うとグータラ税金泥棒の代名詞なわけだが、 すべての公務員がこういう風にビシッと仕事してくれれば税金泥棒なんて陰口は言われないだろうに。

それにしても、特定企業に限らず不動産業界そのものが他業界と比べると企業コンプライアンスが出来なさすぎである。 入居時の現状確認立ち会いをやらないのが基本方針... つまり、国土交通省のガイドラインを守るつもりがないと公言してはばからない業者も居るし。

☆C8、それはデュアルコア版C7。   
と言うわけで、今回はVIAネタ。 (CPUネタが続いたので本当はスパコンの消費電力関連の話を考えてみたんだけど、某Webサイトを見てちょっと方針変更。)1)

以前VIAからIsaiahが発表されたとき、当サイトはIsaiahの設計思想を正しいと書いた。 その後でちょっとおもしろい記事を見つけたのだ。 どっこい生きてたmP6 というESC SV 2008のレポート記事である。

表題通り、組み込み用途とは言えmP6がいまだに生きていたというのも(失礼ながら)「えぇ〜。」という驚きと共にとても興味深いのだが、 当サイト的にとてもおもしろかったのは、VIAが組み込み用にC8という新コアを計画していたことである。 詳しくは同記事をお読みいただきたいのであるが、謎の新プロセッサC8はC7のデュアルコア版であるそうだ。

当サイトがこのコラムを書いたときにはもちろんC8の話なんて全然知らず、 ここで比較例としてデュアルコア版C7を持ち出したのは全くの偶然

しかしである。当サイトの結論はPC用途のようにデュアルコアが生きない用途ならばIsaiahは 正しい設計思想であるという見解。理論ピークベースの整数演算性能や理論ピークベースの消費電力ならば 下記の通りC7デュアルコアがIsaiahに勝るという推測を導き出している。

比較項目 コアサイズ C7比推定性能
Isaiah 同一プロセスルール換算で3.7倍
(プロセスルールの縮小により実際は約2倍)
1.9倍
(ポラックの法則から推定)
デュアルコア版C7 同一プロセスルールならほぼ2倍
(+α分は必要だが、共用で削減できる部分も。)
2倍
(理論ピーク性能)

ではここで組み込み用途とPC用途を比較してみよう。

PC用途では過去のソフトウエア資産を継承できることが最優先事項であり、 過去のソフトウエア資産はマルチメディア系ソフトを除きほとんどがシングルスレッド動作なので、 マルチコアはあまり生きない。アムダールの法則の寄与が大きく、 ポラックの法則を考慮に入れても単一コア性能のアップの方が効果的であるというのが当サイトの見解。

しかし、組み込み用途ではどうだろうか?

まず、組み込み用途ではPC用途ほど過去のソフトウエア資産継承を考えなくてよい上に、 ほとんどの場合で動作ソフトをシステム作成者側でコントロールできるというメリットがある。 勝手に想定外のソフトをインストールされてしまう可能性は低い。

しかも、動作の並列化がPCよりやりやすい場合が多いだろうし、 性能面でも最低保障性能の方がピーク性能よりも大事な場合が多い。 (たとえば、NC工作機の制御の場合、緊急停止ボタンを押したら規定時間内で確実に緊急停止する必要がある。 この場合は、ピークでの最高性能よりも、いかなる場合でも保証できる性能が高い事が求められる。)

Out-of-Order化はシングルコアの性能をアップさせるが消費電力的には不利であるし、 割り込み応答時間はかえって不利になるだろう。 最近は機器の省エネが問題になってきている上に、消費電力が低いプロセッサは (冷却にかけるコストが同じなら)故障率も低い。 安定動作という意味でもメリットが大きいと思う。

コスト的に見てもC8は有望だ。どう考えてもIsaiahよりコアが小さくなるので、 コスト的に要求が厳しい組み込み用途ではこちらの方がずっと魅力的になる。 また、以前設計したコアをデュアルコア化するだけなので、開発コストも抑える事ができる。 (なんちゃってデュアルコアならば、さらに開発コスト抑制が効くと思う。)

もちろん、性能レンジがさらに低くて問題ない用途ならばいわゆるマイコンを使うという手が一般的だが、 先ほど紹介した記事のように基本的にはPCとあまり変わらない性能レンジだけど ジャンル的には組み込みという組み込みでのハイエンド市場もあるだろう。 このレベルの性能レンジが必要な場合はC8(C7デュアルコア)という選択肢は 組み込み用途としては十分に有望であろう。

つまり、この場合はIsaiahの設計思想よりもC7デュアルコアの方が都合が良いだろう。

☆最適設計は用途によって変わる。   
PC用途と組み込み用途。 VIAは用途によって2種類のプロセッサを用意したわけだけど、 これは正しい選択だろうか?

まず、用途にかかわらずプロセッサを1種類に絞る場合を考えてみよう。 この場合は、開発コストを考えればC8が有望だと思う。 種類を絞る理由はコストダウンが最大の理由だから、C8を削ってもあまり意味がないからね。

しかし、VIAはリスクを取ってOut-of-Order化したIsaiahを導入してきた。 VIAはPC用途ではintelやAMDのような大きなシェアを取っておらず、 リスクを冒してこのような賭をする意味が正直なところよくわからない点はある。だが、 本気でPC市場を取りたいと思っているのならば正しい方向性はこちらしかない。 (in-orderで高クロックというAtomやPower6の流れは別の選択肢として十分考えられるが、 C7をデュアルコア化してもPC用途ではまず使い物にならないと思う。 つまり、C8をPC用途に投入してもおそらくは現状のC7が獲得している以上の市場は得られないだろう。)

ともあれ、PC用途と組み込み用途では要求事項が全然違うので、当然最適設計も違ってくる。 ローエンドPCとハイエンド組み込みで性能レンジが似ていても、要求される中身は結構違うのではないだろうか?

とすると...

実は当サイトが疑問に思ったのはAtomが組み込み用途を取れるか?という問題点である。

当サイトはローエンドPC用(+その下の市場向け)の設計思想としてはAtomの考え方は正しいと思っている。 ローエンドPC〜さらにその下という用途を考えた場合は in-orderで高クロックという手は確かに考えられる。 また、SMTを導入したのも、少ないトランジスタ数でマルチスレッド対応できるようにするという点で まったくもって正しい設計思想だと思う。 なぜならば、PC用途ではシングルスレッド性能を削ってまでマルチコア性能を高める意味が無いからである。

デュアルコア化はコアサイズコストが2倍程度だけど、シングルスレッド動作ではまったく性能が向上しない。 1コアのSMTならば2スレッド動作での性能は(同じダイサイズの)デュアルコアに比べて3〜4割ダウンだけど、 シングルスレッド性能はポラックの法則に従えば4割り増し強。 あまり動作していない2スレッド動作のために多くの動作時間を占めるシングルスレッド性能を下げるのは非合理というのが 当サイトの判断であり、PC用途での2スレッド動作頻度を考えれば対応ソフトを使っていない限り後者が優勢なケースがほとんどだろう。

ちょっとここで余談。 当サイトがマルチコアに否定的見解を書くときによく誤解される事がある。 それは、当サイトがシングルコアとデュアルコアを比較する場合は、 必ずダイサイズが同じ場合を仮定しているのに、 多くの方々がたとえば同じコアのDuoとSoloといった具合の比較を頭に思い描いている事である。

同じコアのシングルとデュアルとでは、(クロックが同一の場合は)考えるまでもなく無条件で デュアルコアが優勢である。なぜならば、1コアが動かない状態でシングルコアと同じ性能になる訳だからね。 これは絶対優位の比較であり、こういう比較ならば書くまでもなくデュアルコアが優勢。

当サイトの主張の前提条件は、あくまで同じコスト(同じダイサイズ)のCPUの場合という観点からであるので、 この点は誤解無きようにお願い致したい。

話を戻して、組み込み用途ではシングルコア+SMTという構成は正しい判断だろうか?

当サイトの判断はIsaiahほど不適ではないが、単純なスカラコアのデュアルコア版におそらく 負けるのではないか?という点だ。

これに近い観点の記事がある。 Nettop/Netbookを超えた先にあるAtomプロセッサの可能性という記事で、内容はとても興味深い。

おもしろいのはCPUのトランジスタ効率の観点で、同記事によれば プロの間での主流意見はIn-Order 2wayスーパースカラがもっとも電力効率が良いという事である。 (ほぉ〜、プロ間ではその判断が主流なのか...)

ちなみに、当サイトの判断はプロの間での傍流(反主流派?)の意見の方で、 単純に電力効率が一番良いのは1wayの単純なスカラプロセッサという意見。 「トランジスタ効率=電力効率」という単純化した論理で物事を眺めているからである。

これがプロの主流派の意見よりも正しいという確信はないが、 少なくとも投入トランジスタ数に対するパフォーマンスでは単純なスカラがIn-Orderスーパースカラ に勝るというデータを別件で見たことがあるからだ。 (もっとも、同記事のCELLのデータを見るとIn-Order 2wayスーパースカラという意見も説得力があるが... 悩ましい所だね。)2)

どちらが正しいかは今後明らかになっていくだろうけど、 組み込み用途ではPC用途よりもマルチコアが有効という観点を考えれば、 C8つまりC7デュアルコアがAtomよりも組み込み用途では正しい選択の可能性も捨てきれないと思う。

☆万人に合う物...二兎を追う者...   
さて、と言うわけで当サイトはAtomには非常にワクワクしているけれど、 組み込み市場を本気で奪うためにはもう少し組み込み向けに最適化する必要があると思っている。 だけど、それはPC用途向けの最適化からはさらに離れて行ってしまう方向だとも思う。

すると、「二兎を追う者は一兎も得ず。」となるわけだが、 じゃぁVIAのように2種類のプロセッサを開発するかというと、それもなんかちょっと違うような?

なぜってC7は単純なスカラ方式だからこのままC8に流用できるけど、 intelで同じような単純なスカラコアを過去の資産として生かそうとするとなんと486まで遡らなくてはならない。 さすがにこれは古すぎて流用不可だから2チップともにゼロからの新設計となり、開発コストが2倍になってしまう。 資金や人的資源の面で投資効率が悪すぎるのではないかな?

こうしてみると、VIAは開発資源の有効利用という点ではある意味で非常に先見の明があるのかもしれない。 性能面から物事を考えがちなPCマニアはVIAのコアを「見るべき性能がないダメコア。」として酷評するケースが多い。 確かに純粋な性能だけ見たら同時代のintel・AMDのプロセッサとは比較にならないのは事実である。

しかし、90°視野をずらして投資効率という面から考えると、 C8コアは初期設計の古いコアを改良に改良を重ねて使い回すことで開発コストを最小限に抑える事に成功している。 それは、ある意味で「長く使える。」という性能面とは別の先見性が必要とされるわけで、 だからこそ、VIAのようなシェアの小さい企業でもガツッと投資しなければならないIsaiahのような複雑なコアを開発できるのだろう。 当サイトは名古屋地方出身だけど、名古屋人は娘の結婚式のようにドカッと投資するときに備えて、 普段はケチケチと慎ましい生活を送っている。これと同様な話で、これはこれで一つの考え方なのではなかろうか? (当サイトは、単純な性能比較だけによらず「骨太な設計思想により長く使えるプロセッサである。」ということを名プロセッサの条件に加えている。)

Atomは両方の市場を一挙に狙っているけれど、「二兎を追う者は一兎も得ず。」のリスクも犯しているように思う。 当サイトはリスクを取って勝負に出るのは心意気を買うので応援したい気にはなるのだが、 客観的判断の妥当性と思い入れは別物。 おそらく、いずれてこ入れ(小改良バージョン発表)されるような気がするのである。 それがどのような方向性なのか、どちらかの用途に最適化するのか、あえて技術革新の力でさらに二兎を追うのか、とても興味がある。



1)
当サイトは結論をはっきり書くし、同じネタを扱うサイトが少ないので、結論が真逆だと特定のサイトを狙って 批判していると誤解されてしまう可能性が高い事が発覚。 当サイトは、PC雑誌のようにお金を取って情報を売っている立場なのに提灯記事を書いている場合と、 自身の利害関係に合わせてアプリオリに結論を決めて書いている場合を除き (「まったく同意できない。」と書いたのはこっちの意味だったんだが...)、特定サイトの批判を書くことは無いです。

自己の論理に忠実に従って自社製品でもダメな物はダメと言えて他社品でも良い物は良いと言える方の思考・論理は (たとえ当サイトとは見解が真逆でも)客観性という意味で信頼しておりますし敬意も持っておりますんで、 批判の意味はありません。配慮が足らず気分を害したのであればご容赦のほどを。

2)
ちなみに、CELLは最初の設計プランでは単純な1wayスカラコアだったが、 IBMからの提案により途中でIn-Order 2wayスーパースカラに設計変更となっている。 整数演算性能が求められるからIn-Order 2wayスーパースカラという事情の裏を想像するのも、とてもおもしろい。

ちなみに、CELLはゲーム用途だから整数演算性能よりも浮動小数点演算性能に重きを置くのが正解で、 この場合はIn-Order 2wayスーパースカラ化よりはSIMDの強化で性能向上を目指した方が正しい選択のような気も少々。 その意味ではIn-Order 2wayスーパースカラ化が正しい判断だったかどうかは、用途を考えればちょっと微妙に思う。