急遽テレワーク導入!の顛末記

「Web会議は参加人数が多いほどPCの負担が大きいのは本当か? ツールごとに通信量やCPU/GPU負荷を調べてみた」

――急遽テレワークを導入した中小企業の顛末記(153)

ミーティングへの参加人数が増えた際の、CPUやGPUの使用率は?

 先日はWeb会議を行った際の通信量を、ツールごとに計測してみた(関連記事参照)。ただ、この時は1対1の会議における計測だったため、複数人が参加する会議では結果が変わる可能性がある。

……この記事を書いている時点で、新型コロナが5類に移行されて89日が過ぎた。

 私が勤めている新宿にある中小企業では現在、各スタッフが可能な範囲でリモートによる業務を行っている。その中で、今回はWeb会議の参加人数が増えると、通信量に変化は出るのか? さらには、CPUやGPUの使用率にも違いが出るかをチェックしてみた。

【今回のハイライト】
デスクトップPCで会議を主催して…
参加するPCを1台ずつ増やしていく
PCの台数で通信量は変わるか?

7月31日(月):Zoomの通信量は参加人数による影響を受けない?

 今回は複数台のPCを使ってテストを行うということで、以下の4台のPCを用意した。これらのPCを使って、ビデオ会議における通信量をチェックしていきたいと思う。

昨年末に組み立てた自作PC。第12世代インテル Core プロセッサーを使用
こちらも昨年の下旬に購入した富士通のノートPC「LIFEBOOK WU-X/G2」
会社から支給されたASUSのノートPC「X545F」
余りもののパーツを組み合わせて作った自作PC。CPUは10年前のもの
  • 1st PC(自作デスクトップ)
    CPU:Core i7-12700F(2.10GHz)
    GPU:NVIDIA GeForce RTX 3070Ti
    ネット接続:有線LAN
  • 2nd PC(ノートPC)
    CPU:Core i7-1255U(2.6GHz)
    GPU:インテル Iris Xe グラフィックス(CPU内蔵)
    ネット接続:無線LAN
  • 3rd PC(ノートPC)
    CPU:Core i7-10510U(1.8GHz)
    GPU:インテル Core UHD グラフィックス(CPU内蔵)
    ネット接続:無線LAN
  • 4th PC(自作デスクトップ)
    CPU:Core i7-3770K(3.5GHz)
    GPU:NVIDIA GeForce GTX 1060
    ネット接続:有線LAN

 このうち、1st PCは昨年末に自作、2nd PCは昨年末に購入したものなので、どちらもそれなりに新しいパーツ構成になっている。3rd PCは新型コロナウイルスの感染が始まったばかりの頃に、会社から支給されたもの。余りもののパーツを組み合わせた4th PCは、10年前のCPUを搭載していたりするが……、割と問題なく動いていたりする。

 なお、テスト環境は以前の計測と同様で、1st PCでミーティングを作成。条件をなるべくそろえるために、カメラ映像&マイク音声として“Web会議の録画データ”を配信する。一方、2nd~4thのPCでは、この録画データの映像を表示したモニターをカメラで映すとともに、同映像の音声をマイクで収音した。

 この環境で、まずはZoomのビデオ会議における通信量を計測したところ、以下のような結果となった。

Zoom 1st PC 10分間のデータ量
  • PC2台接続時:147MB(上り73MB/下り74MB)
  • PC3台接続時:140MB(上り75MB/下り65MB)
  • PC4台接続時:145MB(上り59MB/下り86MB)
Zoom 2nd PC 10分間のデータ量
  • PC2台接続時:152MB(上り75MB/下り76MB)
  • PC3台接続時:101MB(上り31MB/下り70MB)
  • PC4台接続時:129MB(上り45MB/下り85MB)

 ホスト側の1st PCの通信量は比較的に安定していたものの、ゲスト側の2nd PCの通信量にややバラツキが出た。一方、3rd/4th PCは120MB台で安定しており、全体的にみると“各PCでの通信量は参加人数が増えても大きく変化しないが、参加者が3人以上だとホストPC以外の通信量が微減する”傾向にあるようだ。

通信量の計測には、以前の記事と同じように「NetWorx」を使用。1st PCでは10分間で140MB台の通信が行われた

 一方、タスクマネージャーでのグラフの安定時における、CPUとGPUの使用率は以下の通り。

Zoom 1st PC CPU/GPUの使用率
  • PC2台接続時:CPU使用率13~14% GPU使用率 3D/37~39%、Video Decode/3%
  • PC3台接続時:CPU使用率12~13% GPU使用率 3D/35~36%、Video Decode/3%
  • PC4台接続時:CPU使用率12~14% GPU使用率 3D/39~40%、Video Decode/1%
Zoom 2nd PC CPU/GPUの使用率
  • PC2台接続時:CPU使用率10~14% GPU使用率 3D/9~10%、Video Decode/2%
  • PC3台接続時:CPU使用率9~10% GPU使用率 3D/11~12%、Video Decode/0~1%
  • PC4台接続時:CPU使用率10~12% GPU使用率 3D/8~9%、Video Decode/3%

 CPUの使用率についてはPCの台数に関係なく、1st PCは13%前後、2nd PCは10%前後で推移。GPU(3D)の使用率は1st PCは30%台後半、2nd PCは10%前後で推移していた。どうやらGPUについては、物理的なグラフィックボードを搭載しているデスクトップPCの方が、使用率が高い傾向にあるようだ。GPUのVideo Decodeも数%使用されており、映像の出力にもGPUが使われているものと思われる。

1st PCにおいてのGPUの使用率。3Dが30%台後半で使用されている

 ただ、会議に参加する人数が4人まで増えても、CPUやGPUへの負荷はそれほど変わらなかった。一般的にビデオ会議では参加人数が増えるほど、PCの負荷が増えると言われているが……、このレベルの人数増であれば、あまり気にしなくて良いらしい。

8月1日(火):Google MeetはPC間での通信量を揃えようとする傾向アリ

 昨日と同じ環境で、今度はGoogle Meetの通信量を計測したところ、以下のような結果となった。

Google Meet 1st PC 10分間のデータ量
  • PC2台接続時:169MB(上り42MB/下り127MB)
  • PC3台接続時:132MB(上り51MB/下り81MB)
  • PC4台接続時:172MB(上り52MB/下り120MB)
Google Meet 2nd PC 10分間のデータ量
  • PC2台接続時:166MB(上り125MB/下り41MB)
  • PC3台接続時:132MB(上り53MB/下り79MB)
  • PC4台接続時:173MB(上り54MB/下り119MB)

 PCの接続台数を変えると、各ミーティングで通信量に変化が現れた。その中で、同じミーティングにおける各PCの通信量は、3rd/4th PCを含めた全PCでほぼ横並びという結果に。Zoomは“各PCの通信量がほぼ一定”だったが、Google Meetでは“同一ミーティングにおける全PCの通信量を均等化”する傾向にあり、ミーティングごとに各PCの通信量が増減したようだ。

 なお、このテストでは「送信時/受信時の解像度」の設定を「自動」にしていたが、PCを2台接続した時の通信量が、以前に行ったテストの2倍以上になっていた。どうやら、通信環境などに何らかの変化があったせいか、より高解像度なビデオ映像が送受信されているらしい。

接続台数を増やすと通信量が増減するが、同じミーティングに参加している各PCの通信量はほぼ同じという結果に

 そして、CPUとGPUの使用率については……。

Google Meet 1st PC CPU/GPUの使用率
  • PC2台接続時:CPU使用率10~11% GPU使用率 3D/33~35%、Video Decode/3~4%
  • PC3台接続時:CPU使用率11~12% GPU使用率 3D/32~33%
  • PC4台接続時:CPU使用率12~13% GPU使用率 3D/30~32%
Google Meet 2nd PC CPU/GPUの使用率
  • PC2台接続時:CPU使用率15~19% GPU使用率 3D/9~10%、Video Decode/2%
  • PC3台接続時:CPU使用率19~21% GPU使用率 3D/34~56%
  • PC4台接続時:CPU使用率21~23% GPU使用率 3D/22~53%

 接続しているPCの台数が増えるほど、CPUの使用率が微増するという結果に。特に、グラフィックボードを搭載していないノートPCでは、CPU内蔵GPUの使用率がZoomと比べてかなり高かった。ただ、3rd PCではGPU(3D)の負荷がどのミーティングでも10%台だったので、もしかするとPCのスペックに合わせて、映像の処理方法を変えているのかもしれない。

 また、1st=2nd PCが一対一で会議をした時だけ、両PCでVideo DecodeにGPUが使用されていた。ビデオ会議ではPCの台数が増えるごとに、画質が劣化する傾向にあるので、一番高画質な映像がやり取りされるPC2台の会議では、映像表示にGPUが必要だったのかもしれない。

2nd PCのGPUの使用率。ビデオ会議中はグラフがかなり上下していた

8月2日(水):Google Meetの通信量を制限すると、PCへの負荷も軽減!

 昨日のGoogle Meetにおいての計測では、「送信時/受信時の解像度」の設定を「自動」にしていたが、これを「標準解像度(360P)」や「低解像度(180P)」にすると、通信量やPCへの負荷はどう変わるのか? 気になったので、こちらもテストしてみたところ、以下のような結果となった。

Google Meet(180P)10分間のデータ量
  • 1st PC:40MB(上り19MB/下り21MB)
  • 2nd PC:39MB(上り19MB/下り21MB)
Google Meet(360P)10分間のデータ量
  • 1st PC:81MB(上り40MB/下り41MB)
  • 2nd PC:81MB(上り40MB/下り41MB)
Google Meet(180P)CPU/GPUの使用率
  • 1st PC:CPU使用率9~10% GPU使用率 3D/29~31%、Video Decode/1%
  • 2nd PC:CPU使用率10~11% GPU使用率 3D/8~9%、Video Decode/2%
Google Meet(360P)CPU/GPUの使用率
  • 1st PC:CPU使用率10~11% GPU使用率 3D/29~32%、Video Decode/1~2%
  • 2nd PC:CPU使用率10~12% GPU使用率 3D/8~9%、Video Decode/2%
2nd PCでは「送信時/受信時の解像度」の設定を行うことで、PCへの負荷を大幅に減らすことができた

 昨日の計測では以前のテストよりも通信量が増えていたが、「送信時/受信時の解像度」の設定で制限をかけることで、以前のテストと同じレベルまで通信量を抑えることができた。さらに、注目なのがPCへの負荷で、CPUとGPUのどちらも使用率が下がっている。特に、グラフィックボードを搭載していないノートPCでは、GPUの使用率を大きく下げることができたので、バッテリー残量の消耗も抑えられそうだ。

8月3日(木):TeamsではPCによって通信量がバラバラという結果に…

 最後にMicrosoft Teamsについても、これまでと同じ環境で通信量などの計測を行ってみた。

Microsoft Teams 1st PC 10分間のデータ量
  • PC2台接続時:323MB(上り147MB/下り176MB)
  • PC3台接続時:404MB(上り227MB/下り177MB)
  • PC4台接続時:399MB(上り148MB/下り251MB)
Microsoft Teams 2nd PC 10分間のデータ量
  • PC2台接続時:337MB(上り179MB/下り158MB)
  • PC2台接続時:440MB(上り225MB/下り215MB)
  • PC2台接続時:305MB(上り55MB/下り249MB)

 まずは通信量についてだが、どうもMicrosoft Teams では“同じミーティングにおいてもPC間で結果にバラつきが出る”ようだ。気になったので何度もテストをしてみたのだが、3人以上が参加するミーティングでは、計測結果がなかなか収束してこない。PCが2台だけ接続している会議の通信量は比較的にそろった結果になるのだが、それも以前の記事における計測結果から約5割増しになっていた。

 Microsoft Teamsでは標準の「ギャラリー」ビューだと、参加者が増えた時に映像をトリミングして、なるべく多くの人を画面上に表示しようとするが、それが通信量にも影響しているのかもしれない。

Microsoft Teamsでは、そのときどきによって通信量がバラバラという結果に
Microsoft Teams 1st PC CPU/GPUの使用率
  • PC2台接続時:CPU使用率10~11% GPU使用率 3D/30~31%、Video Encode/10~11%
  • PC3台接続時:CPU使用率12% GPU使用率3D/34~35%、Video Encode/20%、Video Decode/7~9%
  • PC4台接続時:CPU使用率12~13% GPU使用率 3D/31~34%、Video Encode/9~10%、Video Decode/4%
Microsoft Teams 2nd PC CPU/GPUの使用率
  • PC2台接続時:CPU使用率11~12% GPU使用率 3D/9~11%、Video Decode/5~6%
  • PC3台接続時:CPU使用率11~12% GPU使用率 3D/8~9%、Video Decode/3~4%
  • PC4台接続時:CPU使用率11~12% GPU使用率 3D/12~14%、Video Decode/6~7%

 一方、CPUとGPUの利用率については、参加するPCの台数が増えても、比較的に同じような結果になった。ただ、グラフィックボードを搭載している1st PCでは、動画のエンコードにもGPUを使っているようで、それだけ電力を消費している可能性が考えられる。

1st PCでは動画のエンコードにもGPUが使用されていた

 以上の計測結果から、ビデオ会議の通信量においては各サービスで以下のような傾向がみられた。

  • Zoom「通信量は120~140MB程度で安定。PCの接続台数が増えても通信量をキープするが、ホストの通信量はちょっと多い」
  • Google Meet「そのときどきの環境に応じて、通信量を制御。ただ、参加している全PCの通信量が均等になるように調整している」
  • Microsoft Teams「人数や環境に合わせて通信量を細かく調整(そのときどきで最もよい映像を配信したい?)」

 なお、今回のテストでは Zoom<Google Meet<Microsoft Teams の順に通信量が多くなったが、以前の記事はGoogle Meetの通信量がZoomを下回っていた。通信量は環境によって変わるので、あくまで参考値として捉えていただければ幸いだ。

 一方、CPUやGPUへの負荷については、Zoom<Microsoft Teams<Google Meet の順に増加傾向にあるようだ。ただ、Google Meetについては、「送信時/受信時の解像度」を制限することで、CPUやGPUへの負荷を減らすことができる。発熱やバッテリー残量が気になる時は、この設定を変更するのもありかもしれない。

とある中小企業に勤める会社員、飛田氏による体当たりレポート「急遽テレワークを導入した中小企業の顛末記」。バックナンバーもぜひお楽しみください。

飛田九十九