去年の pp-club のイベント絡みの飲み会で「プログラマ用の開発PCとはなどんなスペックか?」という話があって、作ってみたい~と年末年始ごろに夢にまで見ていたのですが、リンクスインターナショナル社の阪口さんと、デザインラボの加藤さんのご協力もあって、晴れて最強.NET開発PCの自作にこぎつけました。
.NET 開発専用パソコンを考える(´・ω・)ス その1 全体とメモリ|WEB系技術電脳日記
http://ameblo.jp/konica/entry-11476853250.html
あたりも参照にしてください。
私の場合、自作PCってのはDOS/Vの頃ぐらいしかなくて、そのあとはちょっとしたメモリ増設とHDDの追加ぐらい。当時、オーバークロックが流行っていたのですが、手を出したことがありませんでした。1年前ぐらいから、duck さん のようなオーバークロッカーという方もいて、まさしく最近の自作PCの主流は OC ってことなのか…ってことで、ここ数年買うのは、BTO パソコンっていうお仕着せパソコンを買っていた訳ですが。
去年の 12/1 にリンクスインターナショナルさんからデモ機を持ち込んでもらって、その場で Windows 8 + Visual Studio 2012 + Office 2013 Preview あたりを軽く試してみました。詳しくは忘れてしまったのですが、CPU もメモリもそれなりに豪華版であったということで、サクサクと動いて密かに感激しておりました。私の PC が、3年ぐらい前の BTO PC だったこともあって、Windows 7 ではそれなりに動くのですが、Windows 8 だとちょっときつい、更に言うと、Visual Studio 2012 の動き重くなり、さらに XAML デザイナーの部分がかなり重たいので、「いったい、推奨スペックはどのくらいなのか?」と疑問を持っていました。実際、Windows 8 のパッケージにはそれなりに推奨スペックは書いてあるものの、実運用で Windows 8 + Visual Studio 2012 + Office 関連 + VMware 関連を動かしたときに「快適に仕事ができる程度の PC」ってのが、どのくらいのものなのか?をここ2か月ほど考えていたわけです。
■お仕事の前提条件
プログラマにしたって、いろいろな仕事があるわけで、そこそこのパソコンでいい場合と、高速なパソコンがほしい場合と、サーバーと組み合わせないとダメな場合とか、社内だとかフリーだとか、いろいろと条件があります。
普段使いで同時にうごいているのが、
- Windows 8
- Visual Studio 2012 が 2,3枚
- シミュレーター
- Word/Excel が 2,3枚
- PDF が 2,3 枚
- Firefox が 10タブぐらい
ってところが普通に稼働している範囲です。これに、別件の VMWare + 英語版 Windows 7 + Fortraun + VC++ があって、これは別にマシンで動かして、リモートデスクトップで接続させています。
このあたりをベースにして、ちょっと構成を考えたのが、以下なところです。
- CPU は、それなりにコアが多いほうがいいと思う。
- メモリは、64 GB 積んでみる(仮想環境も含めてみる)。
- GPU はどのくらい必須のなのか?
- C ドライブは SSD のほうが早いのか?コンパイル速度は速くなるのか?
- HDD は、作業領域とデータベース用に 2 台用意する
- モニタは 2 台必須
■購入と組立て
このあたりを、ざっくりと、加藤さんと阪口さんに相談して、パーツを選定して貰い、2/23(土) に秋葉原で購入&組立てました。組み立てました…とはいえ、実際に組立てたのは阪口さん。私は財布係です(苦笑)。
メモリチェックをして貰ったのですが、64GB だと 1時間経っても 30% を超えたぐらいなので断念(笑)。メモリは、CMX16GX3M2A1600C11 という 8GB x 2 を 4 つ購入しました。メモリの場合、型番なりロットを合わせないと同期の問題があって、動かないパターンってのが出てきます。また、最初の頃は大丈夫でも、使っているうちになんかおかしくてブルースクリーンになる、ってのはメモリ同期がおかしいパターンが多いんですよね。
あれこと2時間弱かかって(半分はメモリチェックです)。ここまで組んでもらいました。配線は、裏側に隠してあるという美しい仕様。これを自分が作るとなると大変…といいますか面倒なので、マザーボードの上をうにょうにょと配置する形になってしまうのですが。
一応、その場でチェック用に、
- Windows 8 Pro をインストール
- Visual Studio 2012 をインストール
- Office 2013 をインストール
- VMWare Workstation 8 をインストール
- VMWare 上に Windows 8 をインストール(メモリは 8 GB 割り当てる)
- VMWAre 上に、Visual Studio 2012 をインストール
な感じにして、ホスト側で、Visual Studio 2012 + Office 2013 + VMWare を同時に動かすというパターンを試してみましたが、全然大丈夫、びくともしませんね。この「びくともしないところ」が、メモリなのかCPUなのかGPUなのかSSDなのかを、ぼちぼちと検証していきたいと思っています。どう考えても 64 GB のメモリは積みすぎ、という感じがしないでもないのですが、VMWare 上に仮想的なサーバーを組み立てて、IIS + ASP.NET + SQL Server でテストをするとか、Apache + PHP + MySQLのパターンを使うとか、いろいろあるので開発&検証用としては、これぐらいあったほうがよいのか、どのくらいあったらいいのか、ってのを調べていきます。
予算をいくらでもつぎ込んでいけば、CPUなりメモリを積むことができるものですが、費用効果とか原価償却とか本当につぎ込まないとダメなところ、逆にいえば「ここをケチってしまうと、開発効率が格段に落ちて、できあがるものもできあがらない」っていう悪い要素を消していきたいですね。