🖥️

CATIA×RDP問題、Sunshine/Moonlightで突破を試みた話

に公開

動機

CATIAをインストールしてるPCにリモートデスクトップ(以下RDP)接続すると、とにかく重い。
転職で今の会社に入ってCATIAを触るようになったけど、なんか重い。
でも不思議と実端末で触るとヌルヌル動く。
リモートデスクトップだから紙芝居なのかなって思ってました。

一般ご自宅サーバーを組み始めた

逸般の誤家庭シリーズを見てたら、自分も始めたくなった。
とりあえずProxmox入れてみた。
仮想マシンで色々あそびたいなー。GUIをリモートで接続してかっこいい事したいなー。って。

まぁそれで今話題のClaudeさんに色々尋ねてみたのが事の始まり。

自分「Ubuntuだと早いリモートデスクトップないかなー?RDPかくかくするんだよねー」
Claude「全然ありますよ!GPUで処理して爆速なやつ!」

GPUで爆速なら会社のCATIAもそれ入れればいいのでは…?

自分「会社のCATIA、RDPだとカクカクなんだよねー。改善したいー。」
Claude「RDPだとGPU使わずに描画するんで重いんですよねー。」

自分「!?!?!?」

現象の解説

RDPで端末に接続

RDPで端末に接続すると、どうもRDP用のディスプレイデバイスが接続されたことになるらしい。
どうもこいつが原因らしく、ディスプレイがGPUではないほかの何かに接続されていると
OSが認識 -> フォールバックでCATIA描画しているOpenGLがCPUで走り出すのが原因らしい。
要するにグラボを指してないマシンでCATIAを動かしてる事になる。(そりゃ重いわ)

試したこと

自分の管理下にあるマシンでSunshine + Moonlight

さすがにCATIAは個人で買えないので手元のWindows機にSunshineを導入、Moonlightで接続、
Blenderを動作させてRDP接続時と比較しました。

結果的にはSunshine + Moonlightでヌルヌルになりました。

ライセンス的にも問題なく導入できそう…でしたが。

アカウント切り替え

ここで問題が発生しました。
リモートを切断してもWindowsのログイン状態が維持されてしまってるのです。
なので、ログアウト忘れていると他人のアカウントに勝手に侵入できてしまう。
会社的にそれを導入はきついだろうと…。

接続失敗問題

セッション接続時、切断時にログアウトするようにスクリプトを組んで入れましたが
どーもこいつがアカウント変更時に悪さをするようでサービス再起動しないと
接続できない現象が発生してしまいました…。

今後の展望

Sunshine + Moonlightで改善されるかの実験

会社の情シスに許可を取って、Sunshineを使えばCATIAがヌルヌルになるのか
検証だけはしてみたいなーと思ってます。

NoMachineをProxmoxのマシンに導入

どうもこういう用途に特化したゲーム向けではないものにNoMachineというのがあるらしい。
よくある個人利用はタダ、でも商用利用はお金取るよってタイプらしいので
先ずは、どこのご家庭にもあるホームサーバーでどんなもんか触ってみたいと思います。
金額的には10台で年間7万とかそんなもんらしい(Claude調べ)ので
CATIAの保守契約結んでる会社さんならちょこっとした金額だと思います。

(それでリモート作業時のCATIA操作感爆上がりなら安いもんだ…と自分は思ってます。経営者はどうかしらないけど。)

総括

CATIAをRDP接続でやるとGPUをドブに捨てて作業してるようなもん、らしいです。
まぁそれはSunshineの実証が完了したら報告してみようと思います。

以上、初投稿では何も解決しなかった、という話でした。

Discussion