Pentiumのアドレスバスとデータバス

この間会社で話していて違和感あったのですが、「VisualC++のディフォルトの構造体アラインは8byte」との記述が。
あれ? IA-32って、データバス32bitのCPUじゃなかったっけ? と思って調べてみるとPentiumから先はデータバスは64bit、アドレスバス32bitだったんですね(EM64Tに対応してると40bit。1024GWordかぁ。この場合1word8byteなので8TByte使える)。Core以降に至ってはデータバス128bitなので1word16byteです。
で、ちょっと疑問なのですが、64/128bitのデータバスを持つということは、下3/4bitは常に0な訳で、レジスタとして32bitのアドレッシングができるのはわかるとしても、実際のピンは29本(Coreなら36本)でいいんじゃないかって気がするところ。
あと、IA-32MIPSMC68000などと違って(Powerがどうだったかは思い出せない)メモリアクセスの際に下1bit/2bitが0じゃないとバスエラーが出るような作りにはなっていないのですが(8bit単位の不定長命令があるから)、アラインからずれるとメモリアクセスに1回分のペナルティが出る程度で済みますし、ほとんどの場合使用されるメモリはキャッシュに乗っているので実メモリへのアクセスはバーストリードとライトバックキャッシュでのバーストライトでまかなわれるのにわざわざコンパイラのディフォルトが8byteアラインになってるのはなぜなんでしょうね? そんなにパフォーマンスに影響するのかな?


あと、調べていて気づいたんですが、Core2ってALU(Arithmatic Logic Unit:演算論理ユニット)が128bit幅なんですね。汎用レジスタ自体は64bitなのに(SSE3のXMMは128bit)。ドリームキャスト的な意味合いで言っても、「中身はどちらも32bit」(X68000,X68030の広告文句)みたいな意味で言っても「128bitCPU」と言っていいんじゃないかと。
というか、そんなにSSE3使うのかなぁ? 行列の積和算とかはGPUにやらせるだろうし、DCTの合成も今はビデオチップでやるのが主流だと思ってたんだけど。
(追記)
主な用途「動画エンコード」か。狭いなぁ(^^;)。