PCI Expressの仕様書が読みたい

ちょっとした興味が湧いてPCI Expressのことを調べている。PCI Express設計の基礎と応用(畑山 仁)は今読んでる本で、やりたいことへの足がかりになればいいなと思ってる。。
並行してPCI Expressの仕様書が読みたく、ネットをしばし彷徨ってみた。以下、自身のメモ。

・ PCI Express®Base Specification Revision 3.0(November 10, 2010)
https://git.sijman.nl/_/ros/media/branch/master/documentation/PCI_Express_Base_3.0.pdf
・ PCI Express®Base Specification Revision 2.0(December 20, 2006)
https://www.cl.cam.ac.uk/~djm202/pdf/specifications/pcie/PCI_Express_Base_Rev_2.0_20Dec06a.pdf
・ PCI Express®Base Specification Revision 4.0 Version 0.3(February 19, 2014)
https://astralvx.com/storage/2020/11/PCI_Express_Base_4.0_Rev0.3_February19-2014.pdf

・ PCI Express 5.0 Update:Keys to Addressing an Evolving Specification
https://www.tek.com.cn/-/media/china-marketing-documents/pcie/pci-express-5-update-keys-to-addressing-an-evolving-specification.pdf



Jupyterlabの起動に失敗する(2022/4/17起動した)

webスクレイピングがしたくてPythonの勉強を始めることにした。
実行環境はjupyter labと呼ばれるソフトがwindowsでも使えるクロスプラットフォーム仕様だと知り、さっそく環境を整え始めてみたところ下記のようなエラーが登場。。

Jupyter Server Initialization Failed
Error; Jupyter Server process terminated before the initialization completed

起動直後に”Jupyter Server Initialization Failed”なんていう画面が出る羽目に…。

Change environmentを触っても改善できないし、なんでだ??


(2022/4/17追記) 結局原因は分からず、Jupyterlabの再インストールで解決したという全くもって間抜けな幕引きとなった。
当初、エラーの原因は”nativeWindowsOpen”なる関数の値かと思っていたが、調べてみると単にNot recommendedを警告してるに過ぎないことがわかった。
The default of nativeWindowOpen is deprecated and will be changing from false to true in Electron 15.

このあとに“Jupyter Server initialization message: Traceback (most recent call last)~”ってのが続き、最終的には”ImportError: DLL load failed while importing _ssl”として、DLLのインポートがうまくできなかったと表示される。画像の通り、肝心のDLL名あるいはその内容は文字化けしている。日本語環境由来のエラー?


でもローカルユーザ名はアルファベットにしているしなんでだろう…。あるとすれば、ユーザ名Public(パブリック)を2バイト文字で認識して読み込んでいるため、ファイルパスが読み取れていない?

…うーんよくわからん、、DLLも手動で入れたくない、、
ということでクリーンインストールに至り、結果として無事にJupyterが起動してしまった。。(インストール先はgeneralな場所じゃなくて、2バイト文字が含まれないpersonalな場所)

以下参照先、
Jupyter Server Initialization Failed · Issue #381 · jupyterlab/jupyterlab-desktop · GitHub
[Bug]: Webview is causing the warning “default of nativeWindowOpen is deprecated” · Issue #31784 · electron/electron · GitHub
「Electron 14」が正式公開 ~次のバージョンからリリース間隔は12週間→8週間に – 窓の杜

ThinkPad X1 Carbon用にインナーケースを購入

Thinkpad X1 Carbon Gen 9thの持ち運び用にインナーケースをポチった。
予算2,000円弱、14インチケースで良さげなものがないか密林を散策していたことろ、NIDOOなるメーカのインナーバッグを発見した。購入時は1,700円だった。


配色はダークグレー、サイズは14インチを選択。派手な装飾や余計なポケットがなく、落ち着いた感じ。


収納具合はピッタリではなく、隅っこにパソコンの角を合わせるとそれぞれ親指1関節分くらいの余裕がある。ただし、この余裕に対して純正45WのACアダプタは入らない。15.6インチなら入りそうだけど、スマートじゃないなあ。本体をバッグにフィットさせたい場合は一回り小さい13-13.3インチでも良さそう。
表面ポケットは薄く、収納できるものは限られる。メモやボールペンくらいか…。
 内部は毛布になっていて柔らかく、色味はAmazon記載の写真と同じだと思う。(たまにAmazon掲載写真は嘘があるから…)


ファスナーはアルミ製と思われ、厚みは3mmくらいで小さすぎず大きすぎない。また、表面のプレートとともに光沢が少ない仕上がりになっている。
あからさまな安っぽさは見えず、メーカさんは頑張ってると思う。

ThinkPad X1 Carbon Gen9(2021)の購入レビュー

ことの経緯

大学時代から使っているLet’s noteがそろそろ限界らしい。

Windows10を導入してからというものの、ドライバの相性に問題があるせいか輝度調整や無線LANがうまく機能しなくなり始めてしまった。加えて、最近のリッチなwebコンテンツに対して性能不足している感が否めず、ソフト・ハードの両面で辛くなってきた状況だ。

2021年時点での後継機はSVシリーズだが、身近な人がThinkpadを使っていることもあり気になり始めてきた。そこで、どんなものかと試しに導入してみることにした。

Panasonic CF-SX2

Panasonic CF-SX2。2013年に購入して以降今日まで整備しながら使ってきた。メモリ16GBとSSD1TBまで拡張し、キーボードや天板の改装を行ってきた相棒…。バッテリー持ちやファンノイズ、ドライバ相性問題を無視すればまだまだ現役で使える。

仕様

Lenovoが2021年モデルとして発表した最新のThinkPad X1 Carbon gen 9。前世代Gen8とは、性能はともかく、画面サイズや両サイドのコネクタ形状(汎用性がない前世代の有線LAN用端子が消えてすっきりした)などが刷新されている。ThinkPad X13 Gen2とも悩んだけども、会社で使われているモバイルPCがThinkPad X280やX13(無印)なのでやめた。コスパやディスプレイの選択肢が良さげだが外でPC広げているときに勘違いされたくない…。

注文仕様は下記の通り。

CPU Intel Core i5-1135G7 (2.40GHz, 8MB)
OS Windows 10 Home 64bit
RAM 16GB LPDDR4X 4266MHz
SSD 256GB (M.2 2280, PCIe-NVMe) OPAL対応
LCD 14.0型WUXGA液晶(1920×1200) IPS、光沢なし、400nit、マルチタッチ非対応、狭額縁、100%sRGB、ブルーライト軽減パネル
GPU Intel Iris Xe Graphics
内蔵カメラ 720p HDカメラ(マイクロフォン付)
天板 ブラック・ペイント・カーボン
WLAN Intel Wi-Fi 6 AX201 + Bluetooth
WWAN Quectel EM120R-GL 4G LTE CAT12
指紋センサー 指紋センサー
キーボード USキーボード(バックライト、指紋センサー)ブラック WWAN対応
Athena認定 Evo Platform認証
バッテリー 4セル リチウムイオンバッテリー (57Wh)
電源アダプター 45W ACアダプター (2ピン)(USB Type-C)
標準保証  1年間 引き取り修理
  • CPUはvProである必要はなく、またi7とi5はキャッシュメモリーの差異しかなく、肝心のコア数やクロック、グラフィック性能はコストに見合った効果ないためi5にする。それでも4コア/8スレッドが使えるのだから良い世の中になったと思う。
  • メモリー8GBでは絶対足りないので16GBにする(Thinkpad x1 carbonはメモリーが表面実装のため後から増設できない。変な妥協は不要)。出先でPhotoshopやIllustratorを立ち上げることもあると思われるが、処理のメインは自宅デスクトップのため16GBで十分。大学入学後にパソコン必要になる人も、経験的に理系だったら16GBあれば十二分だと思う。
  • 注文時のSSDはなくてもいいと思っていたが、外せないようなので最低限の256GBをチョイス。
    素性不明なSSDは使いたくないし、そもそも選択できるSSDは容量に対して割高なので後日交換するつもり。今のパソコンは1TBを使っているから、PCI-Express Gen4仕様の500GBか1TBを使いたいところ。
    他にどうしようか考えてる人もいるだろうから下表にまとめる。
  • 画面サイズはアンチグレア2kがよかったものの、そんな選択肢ないのでおとなしくフルHDを選択する。プライバシフィルターはいらん機能だと思う…。後付でフィルタ取り付ければ、平時も見やすい。
  • SSDの2枚挿しを将来に見据え、コネクタを確実に確保するためLTEを追加した。(…といってもX1 CarbonはLTEなしでもマザーボードにコネクタついているのね。8000円くらいで済むし、アンテナ代だと思うことにした…。なおLTEは使わない模様…。)
  • キーボードは見た目すっきりのためUSキーボードを導入することにした。バックライト付きで+1100円也。

 

さて、次の大きなトピックはSSDだ。Thinkpadと相性のいいSSDってなんだろうとなるわけだが…。
まず当然としてSATAではなく、M.2(type2280)を選ぶ必要がある。あとはチップがQLCを選ぶのが得策。QLCは安いけど、速度は遅いわ寿命は短いわでおすすめしない。TLC交換先のSSDは下表を候補として考えている。

  メーカ 容量(GB) 型式 備考
Samsung 1000 980 PRO MZ-V8P1T0B/IT PCI-e: Gen 4
W/R(MB/s): 7,000/5,000
TBW(TB): 600
片面実装

WesternDegital 1000 WDS100T1X0E-00AFY0

PCI-e: Gen 4
W/R(MB/s): 7,000/5,300
TBW(TB): 600

Samsung 1000 970 EVO Plus MZ-V7S1T0B/EC

コスパよし
PCI-e: Gen 3
W/R(MB/s): 3,500/3,200
TBW(TB): 300
片面実装

Samsung 500 970 EVO Plus MZ-V7S500B/EC

採用実績がある、コスパよし
PCI-e: Gen 3
W/R(MB/s): 3,500/3,200
TBW(TB): 300
片面実装

?? CFD 1000 PG4VNZ CSSD-M2M1TPG4VNZ

PCI-e: Gen 4
W/R(MB/s): 7,000/5,500
TBW(TB): 700
安いし早いし本当かよと思ってしまう…

?? CFD 1000 PG3VNF CSSD-M2B1TPG3VNF

PCI-e: Gen 4
W/R(MB/s): 5,000/4,400
TBW(TB): 1800???
TBW1800はダークホースすぎる…私が知らんだけなのか、実は隠れた良スペSSD??

見事にサムスンだらけでわろた。
しかしCFDやADATAを選ぶわけにも行かず…、あれらは採用している部品の品質(管理や広告含め)が酷すぎる気がする。少なくとも友人には勧めない。コスパよく幸福度を高めたいPCヲタクとしてはサムスンの980 PRO MZ-V8P1T0B/ITか、ウェスタンデジタルのWDS100T1X0E-00AFY0にする予定。悪く言えば安定しすぎてつまらない選定だけど、ノートPCだし安くない買い物だし冒険はちょっとね…。

…が、ぶっちゃけGen3の970 EVO Plusでいいと思う。コストに対して体感できる速度や、発熱を考慮すると前世代のSSDで十分。ノートパソコンに求められるのは低消費電力と低発熱であることも考慮して。
あとは採用のコントローラ品質もEVO Plusのほうがいいからだ。結局、スペックに踊らされてたけど970 EVO Plusの1TBでいい気がしてきた。

発送来歴

注文~発送までのリードタイムは3~4週間と書いてあったけど、注文当初に提示されたタイムラインは下記の通り…。

7月頭!?ずいぶん時間かかるのなあ…。世界的な半導体不足、とは聞くもののパソコン市場も大変だなあと思っていた。その後、出荷時期が7/22→6/2→4/25を経て4/22発送となった。

  

結局着弾したのは4/28だった。3~4週間からは特別長くなるわけでもなく、短くなるわけでもなかった。

 

外観レビュー


さすが海外メーカのパソコン!と言わんばかりの簡易包装。ACアダプタに至ってはフィルムや袋は使われず、箱に入っているだけのフラストレーション・フリー・パッケージだった。
内容物は本体とACアダプタ、簡易な取説、保証書など。国内メーカみたく余計なCDや説明書、保証書がなくてあっさりしてる。

ThinkPad X1 Carbon Gen 9th

筐体はマグネシウム合金が使われているためひんやりしている。パームレストも同素材のため高級感あり。また、重量あるため、モニタ開閉時は下を掴まなくて済む。

天板はIBM定番のピーチスキンが採用…?されているのかしっとりする。X61sを使っていたときは筐体全体がピーチスキンだった気がするけど、コストカットの波や最近の嗜好は金属・プラスチックなんだろうか。

キーボードがやや不満あり。押し心地が物足りない?キーストロークが浅いんだろうか。キー自体が不安定でタイピング時に揺れる感覚があり、あまり好みじゃない印象。最近のトレンドといえばそうなんだと思う。
また、SX2も大概だったがこのPCもペチペチ感が顕著な気がする。ThinkPad X1 Carbonって昔からこんな感じだったかなあ…。
自身初のUS仕様にしたこともあり、キーボードは徐々に慣れていこう。

カメラには物理シャッターがついていて、カメラONに気づけなくても醜態さらさなくて済みそう。

今使っているLet’snoteはモノラルスピーカだったので、スピーカーが2門ついていると音質の良さにびびる。実際のところ、zoomで会話してみると相手の声がよく聞こえるのでテレワークに向いている気がする。
また、両サイドの端子類はスッキリしている。
LCD正面左側にUSB Type-C(Thunderbolt4対応)x2、USB 3.2 Gen1(Aタイプ)、HDMI。
右側にヘッドフォン、SIMスロット、USB3.2 Gen1(Aタイプ)、セキュリティキーホールがある。Let’snoteと比べると装備の数で寂しい感はあるが、まとまっていてスマートだと思う。

内装レビュー

内装なんか見てどうすんの?となるかもしれないが、使われている部品や配線の具合、ファンレイアウトが見たくなってしまうオタクゆえ御開帳…

ネジは5点ドメになっており、パームレスト側に引っ掛け溝がある。開腹して交換することを見越した設計になっているのか、アクセスは簡単だった。

ファンノイズは個人的には気にならなかった。というのも今使っているSX2が爆音だから…。
CPU温度は47~48度を推移しており、その間のファンは静かだと思う。50℃超え始めるとファンの音が聞こえてくるが、会議で気になるような感じでもなさそう。神経質な人でなければ問題ない。数字上の計測はthe比較さんでやっており、どんなものかはわかると思う。



アンテナ線は4G/5Gともに配線あるため、NIC交換してすぐに5G化できそう(灰色に見える2線は5G用と思われる)。
ところで、4Gアンテナをよく観察してみると…


えwまじかよ。はんだが溶けきってない笑。形状から見るに手はんだだろうけど、やったの素人だろう…。そのうち不具合でそう。初期不良に該当する?
ちなみにもう片方は…まあ、だいたい大丈夫だった(白目。
上記のインパクトが強すぎるのでこれぐらいだったら許すが、もう少し熱して溶かしたい感はある。

もしかしたらハズレ個体引いたかもしれないが、Lenovoの品質としてはこんなものか。今のところ電波のつかみは問題ないし+そもそもLTEは重要視してない。しかし、将来的にクラックが起きて不具合起こす恐れあるから、再はんだするはめになりそう。
アンテナとしては疑問が残る品質であり、他個体の状況が気になる…。



SSDはKIOXIAのKXG6AZNV256G。R/W(MB/s): 3,050/1,550、PCI-EはGen3、チップは片面実装。わりかしちゃんとしたSSDを採用していました(驚)。▶参考
いずれにせよ容量が少ないため500~1000GBに交換する予定。

交換先のSSDは両面実装のはずだけど大丈夫かな…? 片面実装のため問題なかった。
MB側およびヒートシンクには0.5mm厚の熱伝導シートが使われている通り、両面実装に対応できる隙間はない。そのため片面実装のSSDを採用する必要がある。(参考としてコネクタの高さは2.0mm、ボトムカバーとの距離がかつかつ+ネジ固定式ヒートシンクの高さが決まっているので両面実装のSSDは不可能)

採用パネルは不明。EDIDをもとに読み取り試みたがnullであり、返り値わかんね…。
将来的に2kアンチグレアパネルに交換したいと考えているため、モニタ分解しない限り交換可否が判断できない(当然Lenovo側部品ラインナップにないから、自己責任になる…)。

パネルサイズと駆動形式だけで絞るとCEC PANDA FPDのLM140GF1L01(02)が該当する?
早速データシートを取り寄せたけど、肝心のThinkPad側搭載パネルがわからないから、機械・電気的に適合するのか含めて全然わからない。バラせばわかるが一体何使っているんだろう…。分解する人が現れたら、その情報にあやかろうと思う。
14型のモニタサイズは持ち運び用としてどうなんだろうと思っていたが、本体はかなり軽いので全く苦にならない。
むしろ画面サイズ大きいおかげで資料やPDF化した教科書の閲覧、レポート作成にはめっちゃ向いてると思われる。

結論

出先用のノートパソコンとして十分な性能があり、万が一の部品交換も手軽にできる点で優れると思う。
キーボードには慣れが必要だけど、ガンガン使い倒せると思う。ビジネス用としてタフだと思うし、大学生のパソコンとしては十二分な代物。買ってよかった思えるパソコンだったので、NECとか富士通とか買うくらいならこっちがおすすめだと思う。

CRYORIG Frostbitを導入した

どことなくグランド鎌クロスを彷彿とさせるそれは、CPUではなくM.2 SSD向けパッシブタイプクーラです。

 

参照先 http://www.scythe-sub.sakura.ne.jp/cooler/grand-kamacross.html

 

M.2 SSD向けのクーラの大半はヒートシンク1枚であり、取付箇所は空気の流れが悪そうなマザーボード表面であることが多いです。中にはSSD本体を立てるためのブラケットや機構がある仕様のものもあります。

今回のこれ(Frotsbitのクーラ)は立てるタイプであり、放熱フィンはヒートパイプの先に取り付いているタイプです。ファンレスですが、CPUやGPUのファンからの空気を取り込みやすいいので、直付けよりかは熱を逃がせる仕様です。
M.2タイプのSSDは熱を持つというイメージがあるので、せっかくならこれにしようとAmazonでポチりました。

冒頭写真からパッケージを開けたところ、入れ子構造になっており、正面にヒートシンクと金具が見えてきます。

 


付属品はグリスや熱伝導シート、取り付けネジでした。などが現れました。グリスはヒートパイプとSSDの間に塗るためのもので、中華製の怪しいやつではなくそこそこ使えるタイプでした。(NoctuaのCPUクーラに付属していたやつです)
…グリスはお気に入りがあるのでそれを使います。

気になるヒートパイプの外形はだいたいΦ5mmです。(肉厚0.5mmくらい?思っていたよりも小さい印象。)
ほんとうにこれ冷えるんかな…(・∀・)

肝心のSSD実装に移りますが、ここにきてミニトラブル。SSDの裏面に熱伝導シートを貼り付けても、SSD固定用のフレームに接触しない=熱がフレームに逃げない…。あるいは内部に空気の流れができるからそれを見越しての設計?ではなぜ熱伝導シートが2枚あるの…?予備?
このフレームとSSDのコントローラの隙間が1mmなので、いい感じの金属板を取り付けたいところ。

ぽちぽちとAmazonで調べてるといい感じのプレートを発見。2枚で1000円弱だった。早速購入して取り付けてみることにした。

幅・長さ・厚みジャストフィットでした。まさかこれ使う前提で設計されてる??これに熱伝導シートを貼り付けて実装。

後はマザーボード本体に取り付けて完成。あまりにもごちゃごちゃしてきたので、エアーフロー改善のため、後日ファンを追加しました。

温度は常用30~40℃くらいで安定。(なお、上記写真Frostbitの隣にあるものは中華製SSDヒートシンク。適当に用意したファンで強制的に冷却している)
フィン面積が大きいため、エアーフローをよくできると一層冷えてくれる感じ。ビジュアル的にもかっこいいのでこれはあり。