QNAP TS-673にGPGPUを追加

QNAP TS-673にはGPUが搭載されていません。
NASの基本機能としてはGPUは必要ありませんが、同じQNAPでもTVSシリーズはCPUに統合されたGPUを持っており、画面への出力やトランスコード支援機能などを標準で備えています。

では、GPU機能を持たないTS-x73シリーズで同じことが実現できないのかというと、GPUを追加することで実現ができます。
TS-x73シリーズは空きPCIeスロットを2つ持っており、そこにGPUを刺せば普通のPCと同じようにGPUを追加可能です。

追加する際には少しだけ注意が必要です。
まず4ベイのTS-473では筐体サイズの関係でPCIeスロットがロープロファイルのみ対応となっています。
(トランスコード支援が可能なロープロファイルで1スロットのGPUは存在するのか??)
6ベイのTS-673、8ベイのTS-873はフルサイズのカードが刺さりますので問題なしです。

そして3機種共通ですが2スロット占有タイプのGPUを刺すと、PCIeスロットを2つ塞いでしまうので他のカードが刺せなくなります。
私は10Gネットワーク用にMellanox ConnectX®-3 Pro(MCX312B-XCCT)を使用していますので、必然的に1スロットのGPUを探すことになりました。

最初に候補に上がったのがGT 1030(GTXではなくGTなのです)でしたが、GT 1030だとトランスコード支援機能に対応してないようです。
QNAPの対応機器一覧でGT 1030にはHD Station / Linux Station / Container StationしかなくHardware Transcodingの文字がありません。
次に候補に上がったのがELSA GTX 1650でしたが、現時点ではQNAPのNVIDIA GPU Driverが正式対応していません。
※バージョン的には現在のQNAPのバージョン3.0.5がNVIDIA driver version 418.56を含む形なので、次のバージョンがリリースされれば、GTX 1650をサポートしている418.74以降を含む可能性が高いと思われます。
そして少ない1スロットGPUで、且つトランスコードが可能なものを探したところELSA GTX 1050 Tiが候補に上がりました。

しかし既に販売終了品なので程度の良い中古を購入することにしました。
GTX 1650が正式サポートされれば新品を買えるんですけどね。

ELSA GeForce GTX 1050 Ti 4GB SP

貴重な1スロットタイプのGPUです。

下の写真の赤枠の部分ですが、材質はなんとプラスチック製です。
最初に写真を見た時は金属で放熱してくれるのだろうと思っていましたが、全く放熱には関係しません。
ただのダミーで見た目だけです!

そしてTS-673のPCIeスロットに刺す際に、どちらのカードを上にしようかちょっと悩みました。

Mellanox ConnectX®-3 Proはファンを搭載しておらず、ヒートシンクのみで冷やすタイプです。
ですので、GPUの上に置くとカード間のスペースが殆どない状態で空気の対流が少なく、更にGPUの背面の熱が直接来るので、冷えないどころかどんどん温度上昇しそうな気が。
逆にGPUを上にしてもMellanox ConnectX®-3 Proはロープロファイルサイズなので、GPUのファンを遮るのはほんのちょっとです。

ということで、Mellanox ConnectX®-3 Proを下側に、ELSA GeForce GTX 1050 Ti 4GB SPを上側に刺すことにしました。

カード間のクリアランスは下の写真の通りほんの少ししか開いてません。

TS-673の電源コネクタ部分との干渉もギリギリでした。
端が少し斜めに作られてなかったら干渉していたと思われます。
(この部分はプラ製なので最悪切ればいいだけですが)

QNAPのNVidiaドライバを入れて、ハードウェア項目でトランスコードを行えるように設定してあげれば、しっかりとトランスコードでGPUが使用されるのを確認しました。

尚、GPUとモニターを接続していれば、起動時には起動画面が、起動後はコンソール画面がモニターに表示されます。
マウスやキーボードを繋げば、普通のLinux機のようにコンソールにログインして使用することも可能です。

\楽天ポイント4倍セール!/
楽天市場

QNAP TS-673にSSDキャッシュを追加

QNAP TS-673は本体にSATA 6Gb/s M.2 SSDのスロットを2つ持っています。
NVMeではなくSATAのSSDです。

当初は拡張カードを追加してNVMeのSSDでキャッシュを作ろうと思っていました。
しかし折角専用のスロットを搭載しているので、SATAでSSDキャッシュを作成することにしました。

今回使用したのはWesternDigital製 WD REDシリーズ NASシステム向けのM.2 SSDです。

WESTERN DIGITAL WDS500G1R0B WD Red SSD 500GB SATA 6Gb/s

これを選んだのは耐久性が高そうなのと、NASで使ってるHDDもWesternDigital製 WD REDシリーズだから、なんとなく揃えてみたくなったためです(笑)

TS-673のM2スロットには温度センサーが付いており、QNAPの説明でもできるだけヒートシンクを付けるべきとのことで、今回は別にヒートシンクを購入し、SSDに取り付けることにしました。
Amazonで2個セットで安いのが売ってたので、それを買って本体に取り付ける前にSSDと合体。

あとは本体のM2スロットに取り付ければ終了です。
※分解などが記載されているマニュアルは以下のURLでダウンロード可能です。
TS-x73 ユーザー ガイド

取り付けるだけではキャッシュとして動作しませんので、「ストレージ&スナップショット」の「キャッシュ加速」にて、RAID1でSSDキャッシュとして設定します。
ちなみにRAID0では読み取り専用のキャッシュしか作成できませんので、必ずペアで冗長なRAID構成にする必要があります。

SSDキャッシュありとなしでベンチマークを計測してみました。

SSDキャッシュなし

SSDキャッシュあり

大きく変わるのはRAND4K Q32T16のWriteくらいで、あとは誤差範囲だと思います。
シーケンシャルの速度が上がらないのは予め分かっていました。
なぜかということ、SSDキャッシュ作成の際のキャッシュモード選択にて、ランダムI/Oのタイプを選択したからです。
これには色々と理由がありますが、長くなるので省きます。

シーケンシャルのReadがなぜか遅いな~と思ってたのですが、設定を再確認したらジャンボフレームを設定するのを忘れてました…
ということで、ジャンボフレームを設定して再計測。

ジャンボフレームON&SSDキャッシュなし

ジャンボフレームON&SSDキャッシュあり

しっかり速度がでるようになりました。
ジャンボフレームをONにしてもRAND4K Q32T16のWriteは変わらずSSDキャッシュの恩恵を受けているようです。

エクスプローラー経由での大きなファイルのコピー処理でもしっかりと速度がでています。

PCからTS-673へコピー

TS-673からPCへコピー

\楽天ポイント4倍セール!/
楽天市場

QNAP NASとLinux(Debian Buster)を1台のUPSに連動させる

基本的な内容はSynologyのNASと変わりません。
今回は相違点のみ書きますので、詳しくは以前のSynologyの記事を参考にしてください。

Synology NASとLinux(Debian Buster)を1台のUPSに連動させる その1
Synology NASとLinux(Debian Buster)を1台のUPSに連動させる その2

QNAP TS-673に繋いだUPS情報のネットワーク共有設定をします。

IPアドレスには連動させたいPCのIPを指定して、TS-673にUPS情報を取得しにくるのを許可します。

TS-673のupsmon.confは以下の場所にありました。
/etc/default_config/ups/upsmon.conf

upsmon.confの中身を覗くと
MONITOR qnapups@localhost 1 admin 123456 masterという記述がありました。

ユーザー名:admin
パスワード:123456
で接続すればOKです。

ちなみに@前の文字もupsではなくqnapupsになっているので、NASのIPを192.168.1.100と仮定すると、Debian側の/etc/nut/upsmon.confの接続部分の記述は以下のように書く必要があります。

MONITOR qnapups@192.168.1.100 1 admin 123456 slave

これで無事にQNAPのNASともUPS情報のネットワーク連携ができました。

QNAP TS-673に10Gのネットワークカードを追加

QNAP TS-673の互換性一覧ページでネットワークカードの互換性を調べたところ、Synology DS1618+で使用しているMellanox ConnectX®-3 Pro(MCX312B-XCCT)も使用可能でした。
但し、QNAP TS-673のPCIeスロットのブラケットはフルハイトなので、ロープロファイルのブラケットからの交換が必要でした。

取り付けもカバーを外すだけではなく、電源まで外さないと取り付けられないという設計の悪さ。
まあ何度も付け外しするものでもないので、面倒なのは最初だけではありますが、もう少し何とかならなかったのかとは思いました。
※分解などが記載されているマニュアルは以下のURLでダウンロード可能です。
TS-x73 ユーザー ガイド

QNAP TS-673のメモリ交換

QNAP TS-673を購入する時にメモリの規格などを事前に調査しました。
QNAPのページには以下のように書かれていました。
システムメモリ 4 GB SO-DIMM DDR4(2 x 2 GB)
最大メモリ 64 GB(4 x 16 GB)

そしてTS-673が採用しているSoCは
AMD RシリーズRX-421NDクアッドコア2.1 GHzプロセッサー(ターボコア3.4 GHz)

AMDのサイトでAMD Rシリーズを見てみると以下のように書かれています。
AMD’s first embedded processor with dual-channel 64-bit DDR4 or DDR3 with Error-Correction Code (ECC), with speeds up to DDR4-2400 and DDR3-2133, and support for 1.2V DDR4 and 1.5V/1.35V DDR3

SoCとしてはECCメモリをサポートしていると。
QNAPの製品でECCメモリをサポートしているのは、基本的に高価なモデルしかありませんが、ミドルレンジの製品で動くとなるとECCメモリ信者には朗報です。
(SynologyはAtomなどのミドルレンジモデルでも結構対応してたりします)

ただ正直なところ、この情報だけでECCメモリを買う勇気などなく、普通ならNon-ECCのメモリを買うところですが
Synology DS1618+のメモリを32Gに増設に書いているように、既にDDR4-2400のECCメモリを所持しているわけです。

ということで、購入せずともただで試せますので、実際にTS-673でECCメモリが動くのかを試してみました。
※分解などが記載されているマニュアルは以下のURLでダウンロード可能です。
TS-x73 ユーザー ガイド

標準で搭載されているメモリを取り外して

ECCメモリへ載せ替えるだけです。
簡単です、5分で終わります。

果たして起動するのか…

普通に起動しました!

リソースモニターでも32GのECCメモリを認識しています。

SSHでログインして「dmidecode」コマンドを使用してメモリ情報を見てみます。

[~] # dmidecode --type memory
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 3.0 present.

Handle 0x0051, DMI type 16, 23 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: Multi-bit ECC
        Maximum Capacity: 32 GB
        Error Information Handle: Not Provided
        Number Of Devices: 4

Handle 0x0053, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0051
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: No Module Installed
        Form Factor: SODIMM
        Set: None
        Locator: DIMM 0
        Bank Locator: CHANNEL A
        Type: DDR4
        Type Detail: None
        Speed: Unknown
        Manufacturer: A1_Manufacturer0
        Serial Number: A1_SerialNum0
        Asset Tag: A1_AssetTagNum0
        Part Number: A1_PartNum0
        Rank: Unknown
        Configured Clock Speed: Unknown
        Minimum Voltage: Unknown
        Maximum Voltage: Unknown
        Configured Voltage: Unknown

Handle 0x0054, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0051
        Error Information Handle: Not Provided
        Total Width: 72 bits
        Data Width: 64 bits
        Size: 16384 MB
        Form Factor: SODIMM
        Set: None
        Locator: DIMM 1
        Bank Locator: CHANNEL A
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2400 MT/s
        Manufacturer: Transcend
        Serial Number: 00000001
        Asset Tag: A1_AssetTagNum1
        Part Number: TS2GSH72V4B
        Rank: 2
        Configured Clock Speed: 1866 MT/s
        Minimum Voltage: 1.25 V
        Maximum Voltage: 1.35 V
        Configured Voltage: 1.35 V

Handle 0x0055, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0051
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: No Module Installed
        Form Factor: SODIMM
        Set: None
        Locator: DIMM 0
        Bank Locator: CHANNEL B
        Type: DDR4
        Type Detail: None
        Speed: Unknown
        Manufacturer: A1_Manufacturer2
        Serial Number: A1_SerialNum2
        Asset Tag: A1_AssetTagNum2
        Part Number: A1_PartNum2
        Rank: Unknown
        Configured Clock Speed: Unknown
        Minimum Voltage: Unknown
        Maximum Voltage: Unknown
        Configured Voltage: Unknown

Handle 0x0056, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0051
        Error Information Handle: Not Provided
        Total Width: 72 bits
        Data Width: 64 bits
        Size: 16384 MB
        Form Factor: SODIMM
        Set: None
        Locator: DIMM 1
        Bank Locator: CHANNEL B
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2400 MT/s
        Manufacturer: Transcend
        Serial Number: 00000100
        Asset Tag: A1_AssetTagNum3
        Part Number: TS2GSH72V4B
        Rank: 2
        Configured Clock Speed: 1866 MT/s
        Minimum Voltage: 1.5 V
        Maximum Voltage: 1.5 V
        Configured Voltage: 1.5 V

Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Multi-bit ECC

ハード情報的にはMulti-bit ECCをサポートしていると。

Total Width: 72 bits
Data Width: 64 bits
Size: 16384 MB

そしてECCの誤検知用メモリ分もしっかりと認識しているようです。
実際にエラーチェックが行われているかまでは確認できませんが、SoCのサポートやこれらの情報からECCメモリとして使えている可能性が非常に高いと思われます。

2020/05/03 追記
SAMSUNG B-dieのECCメモリを更に32G(16Gx2)入手したので、合計でECCメモリ64Gに増設してみました。

システム上で64G全て認識しています。

「dmidecode」コマンドでのメモリ情報も問題なくECCメモリとして認識しているようです。

[~] # dmidecode --type memory
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 3.0 present.

Handle 0x0051, DMI type 16, 23 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: Multi-bit ECC
        Maximum Capacity: 64 GB
        Error Information Handle: Not Provided
        Number Of Devices: 4

Handle 0x0053, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0051
        Error Information Handle: Not Provided
        Total Width: 72 bits
        Data Width: 64 bits
        Size: 16384 MB
        Form Factor: SODIMM
        Set: None
        Locator: DIMM 0
        Bank Locator: CHANNEL A
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2400 MT/s
        Manufacturer: Transcend
        Serial Number: 00000001
        Asset Tag: A1_AssetTagNum0
        Part Number: TS2GSH72V4B
        Rank: 2
        Configured Clock Speed: 1866 MT/s
        Minimum Voltage: 1.5 V
        Maximum Voltage: 1.5 V
        Configured Voltage: 1.5 V

Handle 0x0054, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0051
        Error Information Handle: Not Provided
        Total Width: 72 bits
        Data Width: 64 bits
        Size: 16384 MB
        Form Factor: SODIMM
        Set: None
        Locator: DIMM 1
        Bank Locator: CHANNEL A
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2400 MT/s
        Manufacturer: Samsung
        Serial Number: 2ED60400
        Asset Tag: A1_AssetTagNum1
        Part Number: M474A2K43BB1-CRC
        Rank: 2
        Configured Clock Speed: 1866 MT/s
        Minimum Voltage: 1.5 V
        Maximum Voltage: 1.5 V
        Configured Voltage: 1.5 V

Handle 0x0055, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0051
        Error Information Handle: Not Provided
        Total Width: 72 bits
        Data Width: 64 bits
        Size: 16384 MB
        Form Factor: SODIMM
        Set: None
        Locator: DIMM 0
        Bank Locator: CHANNEL B
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2400 MT/s
        Manufacturer: Transcend
        Serial Number: 00000100
        Asset Tag: A1_AssetTagNum2
        Part Number: TS2GSH72V4B
        Rank: 2
        Configured Clock Speed: 1866 MT/s
        Minimum Voltage: 1.5 V
        Maximum Voltage: 1.5 V
        Configured Voltage: 1.5 V

Handle 0x0056, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0051
        Error Information Handle: Not Provided
        Total Width: 72 bits
        Data Width: 64 bits
        Size: 16384 MB
        Form Factor: SODIMM
        Set: None
        Locator: DIMM 1
        Bank Locator: CHANNEL B
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2400 MT/s
        Manufacturer: Samsung
        Serial Number: 00D60400
        Asset Tag: A1_AssetTagNum3
        Part Number: M474A2K43BB1-CRC
        Rank: 2
        Configured Clock Speed: 1866 MT/s
        Minimum Voltage: 1.5 V
        Maximum Voltage: 1.5 V
        Configured Voltage: 1.5 V
\楽天ポイント4倍セール!/
楽天市場

QNAP TS-673を購入

自宅のNASはSynologyのDS1618+を使用していましたが、QNAPの方がハード的に攻めている感じもあり、同じ6bayのモデル+ミドルレンジのQNAP製品に買い替えることにしました。
買い替えにあたっての一番大きな理由は、10GbE環境でSSDキャッシュを使用したかったからです。
Synologyからも間もなく10GbEとNVMeSSDが同時に使えるコンボカードが発売予定ですが、まあQNAP製品も使って見たかったので、いい機会と思い買い替えることに。

QNAP(キューナップ) TS-673

QNAP TS-673はPCIe Gen 3 x4のスロットを2つ装備しています。
Synology DS1618+はPCIe Gen 3 x8を1スロットです。
使用可能な帯域的には同じなのですが、1スロットでは物理的に1枚しかカードがさせないので…

\楽天ポイント4倍セール!/
楽天市場