[自作日記4] いざ秋葉原! CPU選び

[自作日記4] いざ秋葉原! CPU選び

こんにちは、さっそく自作PCを作っていきましょう。

ここでは、Qualitegの若手社員 Jun さんにご登場いただき、GPUマシン自作体験記を赤裸々に語っていただくストーリーとして進めていきます!


Junです。ソフトウェアエンジニアです。

ある日、出社すると、席に1枚の封筒がおいてありました。

なんだこれ?

開いて見ると、中に便箋がはいっており、
今時手書きで、しかも太めのマッキーで、こんなことが書いてありました。

white printer paper on brown folder
Photo by Mediamodifier / Unsplash

Junさんへ、
Qualiteg へようこそ!

当社ではメンバーは必ず1台はGPUマシンを自作するのが掟(おきて)となっています。

そこの封筒に45万円ありますので、これをもって秋葉原に行ってパソコンのパーツを買ってきてください。
以下にヒントを書いておきますので、よろしくおねがいします。

① CPUは 12世代か13世代のどちらでもよい。

② GPU中心でつかうため、CPU側の能力は i5程度で問題ない。

③ マザーボードのチップセットは CPUが12世代ならZ690 か CPUが13世代ならZ790。ATX。

④ CPUメモリは 64GB 以上。DDR4でもDDR5でもどちらでもOK

⑤ グラボはコンシューマー向けでOKだけど、最上位モデルに近いもの。

⑥ SSD は 1T以上。

⑦ 電源は 800W 以上、 80Plus Titanium

⑧ ケースはグラボがちゃんと入ることを確認すること!

あとは、アキバに行けばなんとかなるとおもいます(^^♪


GPUマシン購入依頼の置手紙でした。

PCのパーツ選びも自作も久しぶりで、かつ、45万円ももっていくとなると、
正直不安でしたが、この置手紙をもって京浜東北線に乗り込みました。

 "JREast-Keihin-tohoku-line-JK27-Kanda-station-sign-20170824-182332.jpg from Wikimedia Commons by LERKCC-BY-SA 4.0


考えてみれば、オフィスは神田にあるので歩いてもアキバ行けるんですが、45万円を持ち歩く緊張感から、電車に飛び乗っていました。

そんなことを思っていたら、あっというまにアキバにつきました。

a city street filled with lots of tall buildings
Photo by Taewoo Kim / Unsplash

秋葉原はかつてはパソコン好きの聖地で今も非常に活気があって楽しいです。

ツクモさん、ドスパラさん、パソコン工房さん、自作PCの名だたる名店がそろっているのが秋葉原のすごいところです。そして、本当に店員さんが親切で知識も豊富です。自作PCを楽しむなら秋葉原一択だ!とみんなが言っている理由がわかります。

CPU を選ぶ

さて、さっそく、置手紙をみてCPUを購入することにしました。

① CPUは 12世代か13世代のどちらでもよい。

② GPU中心でつかうため、CPU側の能力は i5程度で問題ない。

自作系のお店に入ると、たいていレジの近くなど目立つ場所にPCパーツの価格一覧表が印刷してあります。

また、現在の売れ筋モデルなんかが書いてあり、情報収集や価格比較にもとっても便利。

そこで、12世代のCPUと13世代のCPUのモデル名と価格をしげしげと観察していると店員さんが話しかけてきてくれました。

「何かおさがしですか?」

私「は、はい、実はAI用のパソコンを作ろうとおもってまして、そのCPUをさがしています。12世代か13世代で・・・」

「それでしたらこのへんですかねぇ。」

教えてくれたのは 13世代の Core i5 でした。

私「はい、計算のほうはGPUにさせるので、CPUはふつうくらいでいいので、そうですね、i5くらいかな。でももっと安いやつありますか?」

「もう少し安いとなると i3 もあります。」

私「i5とi3てi3のほうが性能が低いんですよね。」

「性能が低いと言えば低いのですが、影響がでてくるのはコア数、スレッド数の違いですね。コア数やスレッド数を多く使うソフトウェアのご利用を予定しているようでしたら、i3よりもi5,i5よりもi7のほうが適しているといえます。」

性能が低いという、エンジニアにあるまじき表現をつかってしまい恥ずかしかったですが店員さんの指摘は適切でした。

GPUしか使わないし、コア数とかそんなにいらないから、13世代のCore i3 でいいかなと思ったとき、あることを思い出しました。

そういえば、いまLLM (広い意味でディープラーニング系といえる)以外にも Kaggle の分類系問題やってるんだった。

私は、 Kaggle の練習もやっており、そこで XGBoost など、ディープラーニングではなく、どちらかというと古典機械学習系のアルゴにも挑戦していることを思い出しました。

ディープラーニングの推論だけなら、たしかに CPUは Core i3 でもなんとか動かせるかもしれませんが、 XGBoost のように、CPUコア数が多いほうが有利なアルゴもあるので、俄然コア数が気になり始めました。

そこでその視点で再度価格表をみると、 13世代の Core i5-1360012世代の Core i7 12700 の価格がかなり近いではありませんか。

ぱっとみの性能も近い。 13世代の i5-13600 (14-コア、20スレッド)と 1つ前の、12世代の i7 12700 (12コア、20スレッド)

うーん、どうしよう。

10分(体感では60分)悩んで、結局この段階ではCPUを決められませんでした

でも、CPUはこの2つに絞り込みました

13世代 i5 13600
12世代 i7 12700

価格はどちらも5万円程度でした


いきなり、CPU選び足踏みしてしまったJunさん、無事、すべてのパーツをそろえられるのでしょうか。

次回は、マザーボードの選定とCPUの決定です!お楽しみに!


navigation

Read more

OpenCV cv2.imwrite で発生する「_img.empty()」エラーと「動画安定化」による解決法

OpenCV cv2.imwrite で発生する「_img.empty()」エラーと「動画安定化」による解決法

こんにちは! 画像処理や動画解析の現場で広く利用されている OpenCV。 しかし実務で動画処理を行っていると、時折以下のようなエラーに遭遇することがあります。 cv2.error: OpenCV(4.11.0) /io/opencv/modules/imgcodecs/src/loadsave.cpp:929: error: (-215:Assertion failed) !_img.empty() in function 'imwrite' このエラーは、cv2.imwrite() に渡された画像が空(None またはサイズ0) の場合に発生します。 一見単純に見える問題ですが、背後には「入力動画の不安定さ」や「並列処理の競合」といった要因が潜んでいることが少なくありません。 本記事では、このエラーの発生原因を掘り下げ、実務で効果のある解決策として 「動画の安定化(正規化)」 を紹介します。 TL;

By Qualiteg プロダクト開発部
発話音声からリアルなリップシンクを生成する技術 第5回(前編):Transformerの実装と実践的な技術選択

発話音声からリアルなリップシンクを生成する技術 第5回(前編):Transformerの実装と実践的な技術選択

こんにちは!リップシンク技術シリーズもいよいよ終盤となりました。 前回(第4回)では、LSTMの学習プロセスと限界について詳しく解説しました。限られたデータでも効果的に学習できるLSTMの強みを理解する一方で、長距離依存の処理に限界があることも明らかになりました。そして、この問題を解決する革新的なアプローチとして、すべての位置の情報を同時に参照できるTransformerのSelf-Attention機構を紹介しました。 第5回の今回は、 Transformerの具体的なネットワーク設計から始め、その実装上の課題を明らかにします。(前編※) そして、LSTMとTransformerの長所を組み合わせたハイブリッドアプローチを紹介し、実際の製品開発における技術選択の指針を示します。最後に、感情表現への拡張という次なる挑戦についても触れていきます。(後編※) ※Transformerの仕組みは複雑であるため、第5回は前編と後編に分けて解説させていただく予定です。 1. Transformerベースのネットワーク設計 1.1 全体アーキテクチャ図 では、さっそく、Tran

By Qualiteg 研究部, Qualiteg コンサルティング
大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第2回 ドメイン環境の構築

大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第2回 ドメイン環境の構築

こんにちは、今回はシリーズ第2回ドメイン環境の構築 - 検証環境の構築手順について解説いたします! 連載の構成 第1章:基本概念の理解 - Active DirectoryとKerberos/NTLM認証の基礎 【★今回です★】第2章:ドメイン環境の構築 - 検証環境の構築手順 第3章:クライアントとサーバーのドメイン参加 - ドメイン参加の詳細手順 第4章:プロキシサーバーと統合Windows認証 第5章:ブラウザ設定と認証 - 各ブラウザでの設定方法 第6章:トラブルシューティング - よくある問題と解決方法 第7章:セキュリティとベストプラクティス - 本番環境での考慮事項 第8章:実践的な構成例 - AIセキュリティツールとの統合事例 第2章:ドメイン環境の構築 2.1 ドメイン名の設計 2.1.1 ドメイン名の命名規則 Active Directoryを構築する際、

By Qualiteg コンサルティング
AIがよく間違える「クロージャ問題」の本質と対策

AIがよく間違える「クロージャ問題」の本質と対策

こんにちは! 本日は「クロージャ問題」に関する話題となります。 Pythonでループ内に関数を定義したことはありますか? もしあるなら、あれれ?な挙動に遭遇したことがあるかもしれません。 本稿では、Pythonプログラマーなら一度は経験する「クロージャ問題」について、初心者にもわかりやすく解説してみたいとおもいます クロージャとは何か? そもそも ”クロージャ” とは何でしょうか。 クロージャ(closure)とは、関数が自分の定義されたスコープの変数を覚えて持ち運ぶ仕組み のことです。 もう少し分解すると、次の2つがポイントとなります 1. 内側の関数が、外側の関数の変数を使える 2. 外側の関数が終了しても、その変数は生き続ける 普通の関数とクロージャ―を使った関数を比較してみましょう 普通の関数との比較 まずは普通の関数から、 def add(x, y): return x + y print(add(3, 5)) # 8 print(add(3, 7)

By Qualiteg プロダクト開発部