Posts

PCの構成

変更点

ファイルサーバーのデータ保護をファイルシステムの堅牢性から検討した結果、ファイルサーバーをTrueNAS Communityで再構築しました。必要性や安全性を検討した結果、リードキャッシュ用のSSDは不要だとの結論に至り、SSDをメインPCに移設しました。

1. メインPC

ItemDescription
OSWindows 11 Pro 25H2
CPUAMD Ryzen 9 9950X3D
M/BASUS ROG STRIX X870E-E GAMING WIFI (AMD X870E)
RAMCorsair CMH64GX5M2B6000Z30 (DDR5-6000 32GB*2)
GPUASUS TUF-Gaming RX 9070 XT OC 16GB (RADEON RX 9070XT)
NVMeWD BLACK SN850X 2TB (WDS200T2X0E-EC)
NVMeWD BLACK SN850X 2TB (WDS200T2X0E-EC)
NVMeWD BLACK SN850X 2TB (WDS200T2X0E)
NVMeWD BLACK SN750 2TB (WDS200T3X0C-EC)
SATA SSDWD BLUE 2TB
SATA SSDWD BLUE 2TB
SATA SSDWD BLUE 1TB
SATA SSDWD BLUE 1TB
USB FANCorsair iCUE LINK
USB AudioTASCAM SREIES 102i
USB CAMELGATO FACE CAM
USB DECKELGATO STREAM DECK Mk.2
USB DECKXencelabs Quick Keys
UsesAI Image Generating / Image Editing / Photo Editing / Video Editing / Music Player / Programing / Gaming / Data Storages (Original)

2. サブPC1

ItemDescription
OSWindows 11 Pro 25H2
CPUAMD Ryzen 7 5800X
M/BASUS ROG STRIX B550-A GAMING (AMD B550)
RAMCorsair CMW16GX4M2D3600C18 (DDR4-3600CL18 8GB*4)
GPUASUS ROG-STRIX-RX5700XT-O8G-GAMING (RADEON RX 5700XT)
NVMeWD BLACK SN850X 1TB (WDS100T2X0E-EC)
NIC2RealTek PCIe 1GbE
Uses-

3. サブPC2

ItemDescription
OSWindows 11 Pro 25H2
CPUAMD Ryzen 7 1700
M/BGigabyte GA-AX370 Gaming K7 (AMD X370)
RAMCorsair CMK16GX4M2A2666C16R (DDR4-2666CL16 8GB*2)
RAMCorsair CMK16GX4M2A2666C16 (DDR4-2666CL16 8GB*2)
GPUGigabyte GV-N1060AORUS-6GD Rev2 (GEFORCE GTX 1060 6GB)
NVMeWD BLACK 512GB (WDS512G1X0C)
Uses-

4. ファイルサーバー

ItemDescription
OSTrueNAS Community
CPUAMD Ryzen 7 3700X
M/BASUS ROG STRIX X570-F GAMING (AMD X570)
RAMG.SKILL F4-3600C18D-16GTZN 16GB x2 (DDR4-3600CL18 8GB*4)
GPUGigabyteGV-N1050OC-4GL (GeForce GTX 1050Ti 4GB)
NVMeWD BLACK SN750 250GB (WDS250G3X0C-EC)
SATA HDD東芝 3.5" HDD 4TB (MN08ADA400E /JP)
SATA HDD東芝 3.5" HDD 4TB (MN08ADA400E /JP)
SATA HDD東芝 3.5" HDD 6TB (HDWG760UZSVA)
SATA HDD東芝 3.5" HDD 6TB (HDWG760UZSVA)
NIC2RealTek PCIe 5GbE
UsesData Backup

X870EのUSB4のドライバー問題と一時的な対処法

不具合の発見

デバイスマネージャーのデバイスの一覧に「!」が付いた「PCI Express 下位スイッチポート」が2つ表示されているのに気が付きました。 不具合の起きている環境は以下の通りです。

不具合の起きているPC環境

ItemDescription
OSWindows 11 Pro 25H2
CPUAMD Ryzen 9 9950X3D
M/BASUS ROG STRIX X870E-E GAMING WIFI (AMD X870E)
RAMCorsair CMH64GX5M2B6000Z30 (DDR5-6000 32GB*2)
GPUASUS TUF-Gaming RX 9070 XT OC 16GB (RADEON RX 9070XT)
NVMeWD BLACK SN850X 2TB (WDS200T2X0E-EC)
NVMeWD BLACK SN850X 2TB (WDS200T2X0E-EC)
NVMeWD BLACK SN850X 2TB (WDS200T2X0E)
NVMeWD BLACK SN750 2TB (WDS200T3X0C-EC)
SATA SSDWD BLUE 2TB
SATA SSDWD BLUE 2TB
USB FANCorsair iCUE LINK
USB AudioTASCAM SREIES 102i
USB CAMELGATO FACE CAM
USB DECKELGATO STREAM DECK Mk.2
USB DECKXencelabs Quick Keys

問題解決を試みる

「!」が付いた「PCI Express 下位スイッチポート」はWindows 11 Pro起動時にUSB4(Thunderbolt3互換)のディスプレイを読み込むときに、ASMediaのUSB4チップに内包されているPCI Expressスイッチドライバーのロードに問題が起きているようです。 Windows 11 Proが起動してしまえば、デバイスマネージャにその読み込みに失敗した「!」が付いた「PCI Express 下位スイッチポート」として残骸が残ります。これはデバイスマネージャー上で右クリックして「デバイスのアンインストール」を実行すれば解決します。 それから、そのすぐ下に「不明なデバイス」があるのに気が付きます。

ComfyUIをRADEON RX9070XT(ROCm7.14)とWindows11Pro 25H2の環境で動かす

1.始めに

2026/07/16にAMDからROCm7.14がリリースされました。また2026/06/29にAMD RadeonのドライバースイートであるAMD Software: Adrenaline Edition 26.6.4 (WHQL Recommended)も公開されました。 既にROCm7.2.1での環境を作っていますが、Pythonのvenvを使うようにAMDの文書が変更されているので、ROCm7.2.1とROCm7.14の環境を共存させてみます。

PCの構成

はじめに

LAN内のPCをWindows 11 Pro 25H2 にすべて移行しました。Debian13 や TrueNAS Core を入れてみたりしましたが、FreeBSD系は管理コストが意外に高くつく、つまり面倒くさいし、Linuxカーネルは最近のセキュリティー問題からWindowsよりかなり危険なことが分かったので、それらを鑑みて、すべてWindows 11 Pro 25H2 にしました。リモートデスクトップを使えばメインPCからすべてGUIで操作できるので、これで良いでしょう。

Windows11でDolbyAtmosを楽しむ

1.始めに

DENON AVR-X1800HでAudysseyで各スピーカーを測定して、測定結果のグラフを見たら、リアチャンネルに使用しているTannoy Mercury mc1の補正値がやたら高音域を持ち上げているのをみて、30年近く前に買ったスピーカーのツィーターが寿命を迎えていることを悟りました。

2.代替品

補助的なチャンネルなので安価なスピーカーで構わないのですが、特性はフラットな方が良いこと、Windows11もドライバーもAVアンプもDolby AtmosとDTS:Xに対応しているので、せっかくならフロントハイトスピーカーを導入してみたいと思いました。そこでSonyのSS-CSEM2を購入しました。

仕様

項目仕様
品名SS-CSEM2
使用ユニット フルレンジ100 mm コーン型 x 1
形式アコースティックサスペンション型 フルレンジスピーカーシステム
インピーダンス6Ω
最大入力100W
出力音圧レベル86dB(2.83V/1m)
再生周波数帯域70-32,000Hz(ドルビーアトモス対応)
外形寸法(幅×高さ×奥行mm)約178×146×190 mm(グリルネットを含む)
質量約2.8Kg(1台/グリルネットを含む)

3.セットアップ

  1. 固定

Windows11で7.1chオーディオを楽しむ

はじめに

AVアンプDENON AVC-4320のデジタル系統が壊れて、サウンドエフェクト、光入力、LAN端子が使えなくなりました。 発売は2005年11月ということで、20年以上経過しているのですね。 購入したのは2006年の秋だったと思います。 GH-GDBFを購入してローンがあるのに更にローンを重ねた記憶があるし、AVC-4320が型落ちしたので特価の168,000円で売られているのを買ったのでそれ位だと思います。 AVC-4320は、アナログ7.1ch入力、出力があり外部のサラウンドプロセッサに接続する事も想定していたような設計です。 ここにメインPCのアナログ7.1ch出力の3.5mmジャックからRCAピンジャックに変換する2mのケーブルを4本接続していました。 さらにS/PDIFから光デジタルケーブルを接続していました。 現在の同クラスのDENONのAVアンプはAVR-X4800Hで定価は313,500円で、サラリーマンを辞めているので買えません。 ですが、壊れたAVアンプの代替が必要なので、DENON AVR-X1800H(定価110,000円)を66,489円で購入しました。 目的はメインPCとHDMI 2.1で接続して7.1chオーディオを実現する事なのでこの機種で十分です。

Windows11で記憶域プールに再挑戦

始めに

ファイルサーバーをWindows 11 Pro 25H2 に移行したことにより、ストレージ構成を記憶域プールとReFSとSATA SSDを使って、高速且つ安全に運用する事にしました。

SATA SSDはストレージとして使うよりも記憶域プールでジャーナルで使う事により、ライトバックキャッシュとしてHDDへの書き込みのバッファにすることで、ファイルの書き込み速度を向上できることは分かっていました。ただ、かつて挑戦したときはWindowsクライアントOSでの構成の仕方が分かりづらかった事もあって断念していました。AIの普及により手順の確認が容易になったことで、改めて記憶域プールにジャーナルとして組み込むことにしました。

HDDは3TBが2台、4TBが2台ですが、これを一つのプールに入れて、ミラーで構成することで連続した一つのドライブとして利用できます。

iSCSI(SAN)への変更

iSCSI(SAN)への変更

変更前

変更前の特徴

  1. NASを構築し、データバックアップを行う

    • RYZEN 7 3700X & X570 & 332GB RAM & GeForce 1050TiのPCに、TrueNAS Communityを入れ、SMBサービスを使ってファイル共有を行い、SMB3のマルチチャネルで2Gbpsの通信速度を確保。
    • ROBOCOPYコマンドでオプションに/mirを指定しMainPCのデータを正として、TrueNASのバックアップを副として運用。
    • ROBOSOPYのオプションの/MT:4を使い2GBpsの帯域を使い切るように調整。
    • HDDによるRAID1構成のため、初期の書き込みではHDDの速度が上限となるが、2度目以降はNVMe SSDをストレージプールに追加しL2ARCによる高速化を図っている。

変更前のネットワーク構成図

graph TD
        
    subgraph "Switch"
        NIC_SW[1GbE]
    end

    subgraph "Main PC (Ryzen 9 9950X3D / Radeon RX9070XT)"
        OS_MainPC[Windows 11 Pro]
        NIC_MainPC_1[5GbE (SMB MulchiChannel)]
        NIC_MainPC_2[1GbE (SMB MulchiChannel)]
        OS_MainPC <--> NIC_MainPC_1
        OS_MainPC <--> NIC_MainPC_2
    end

    subgraph "TrueNAS Community (Ryzen 7 3700X)"
        OS_TrueNAS[TrueNAS Community / ZFS]
        Storage1[HDD 4TBx2 / NVMe / RAID1]
        Storage2[HDD 3TBx2 / NVMe / RAID1]
        DataSet1[DataSet]
        DataSet2[DataSet]
        NIC_TrueNAS_1[2.5GbE (SMB MulchiChannel)]
        NIC_TrueNAS_2[1bE (SMB MulchiChannel)]
        OS_TrueNAS <--> Storage1 <--> DataSet1
        OS_TrueNAS <--> Storage2 <--> DataSet2
        OS_TrueNAS <--> NIC_TrueNAS_1
        OS_TrueNAS <--> NIC_TrueNAS_2
    end

    NIC_SW <==> NIC_MainPC_2
    NIC_SW <==> NIC_TrueNAS_2
    NIC_SW <==> NIC_MainPC_1
    NIC_SW <==> NIC_TrueNAS_1

変更後

変更後の特徴

  1. SANを構築し、データバックアップを行う

Rust勉強開始

五十の手習い

ゲームをしなくなって、AIと対話する機会が増えたら、PCで何かやりたい欲が湧いてきて、言語の勉強を始めることにしました。

十五年前にVisual C#は独学で、iOS風の時計を作ったあと、介護施設に就職して、帳票を組み版でフルスクラッチしたプリンタ制御を組み込んだ介護サービス提供システムの開発をするところまで突き進んだので、今更C#をしてもしょうがないかな。

また、Pythonのようなインタープリターを極めたところで、インタープリターは実行コストが重いけど、有志が作成した豊富なライブラリがあるのが魅力だけど、ライブラリを使うと依存関係が複雑になるだけですし、Pythonのバージョンに後方互換性がないのでバージョン管理が煩雑で好きじゃ無いです。

MicrosoftのWindowsの基幹が、Rustに置き換わっているということもあってRustを勉強することにしました。

Rustが凄い

Rustが凄いのはメモリを安全に制御するだけじゃ無くて、Microsoftからwindows-rsとういうWin32APIを直接叩けるクリート(Crate:木箱)というライブラリが用意されていることです。

メモリを安全に制御していなければコンパイルできないので、コンパイル出来ると言うことは安全にWin32APIを直接叩いて、高速な処理を実現できると言うことです。ユーザーモードのドライバすら叩ける、DirectXやWASAPIを叩ける。MS C/C++とMSVCランタイムライブラリでしか実現できなかった技術を最新のRustをでは過去のOSの資産からこれから先のOSの資産を含めて直接実行できるわけです。