JP2017069744A - Communication control device, program, recording medium, and communication control method - Google Patents
Communication control device, program, recording medium, and communication control method Download PDFInfo
- Publication number
- JP2017069744A JP2017069744A JP2015192734A JP2015192734A JP2017069744A JP 2017069744 A JP2017069744 A JP 2017069744A JP 2015192734 A JP2015192734 A JP 2015192734A JP 2015192734 A JP2015192734 A JP 2015192734A JP 2017069744 A JP2017069744 A JP 2017069744A
- Authority
- JP
- Japan
- Prior art keywords
- gpu
- cpu
- unit
- execution
- resource information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、通信制御装置及びプログラム、記録媒体、並びに、通信制御方法に関し、例えば、多地点ビデオ会議サーバに適用し得るものである。 The present invention relates to a communication control device and program, a recording medium, and a communication control method, and can be applied to, for example, a multipoint video conference server.
従来、多地点ビデオ会議サーバは、映像のコーデック処理を含むすべての処理をCPU(Central Processing Unit)で行う構成としていた(特許文献1参照)。その結果、従来の多地点ビデオ会議サーバは、CPUの処理負荷がボトルネックとなり、同時接続数や同時会議開催数が制限される等の問題が内在していた。 Conventionally, a multipoint video conference server has a configuration in which all processing including video codec processing is performed by a CPU (Central Processing Unit) (see Patent Document 1). As a result, the conventional multipoint video conference server has a problem that the processing load of the CPU becomes a bottleneck and the number of simultaneous connections and the number of simultaneous conferences are limited.
昨今、映像出力処理(一例)に用いられるGPU(Graphics Processing Unit)を搭載したCPU(Central Processing Unit)が、リリースされている。このGPUを搭載したCPUは、処理負荷のかかる映像出力処理を、GPUに割り当てる。 Recently, a CPU (Central Processing Unit) equipped with a GPU (Graphics Processing Unit) used for video output processing (an example) has been released. The CPU on which this GPU is mounted assigns a video output process requiring a processing load to the GPU.
しかしながら、多地点ビデオ会議サーバは、接続される端末に関わる映像や音声のコーデック処理(符号化処理、復号処理)、及び映像や音声の合成処理等を実行する。そのため、多地点ビデオ会議サーバにおける処理負荷は、接続する端末に関わる各処理量などに基づいて変動する。よって、多地点ビデオ会議サーバは、他の装置に比べて、CPUとGPUに効率的に処理負荷を分散させる必要性に迫られている。 However, the multipoint video conference server executes video and audio codec processing (encoding processing and decoding processing) related to a connected terminal, video and audio synthesis processing, and the like. Therefore, the processing load in the multipoint video conference server varies based on each processing amount related to the connected terminal. Therefore, the multipoint video conference server is required to efficiently distribute the processing load to the CPU and the GPU as compared with other devices.
そのため、CPUとGPUに効率的に処理負荷を分散できる通信制御装置及び通信制御プログラム、記録媒体、並びに、通信制御方法が望まれている。 Therefore, a communication control device, a communication control program, a recording medium, and a communication control method that can efficiently distribute the processing load between the CPU and the GPU are desired.
第1の本発明は、複数の通信装置に接続され、少なくとも1つのCPUと、少なくとも1つのGPUとを有する通信制御装置であって、(1)第1処理部の実行前における実行前CPUリソース情報と、実行前GPUリソース情報とを確認するリソース情報確認手段と、(2)前記第1処理部の実行後における実行後CPUリソース情報と、実行後GPUリソース情報とを推定するリソース情報推定手段と、(3)前記実行前CPUリソース情報と、前記実行前GPUリソース情報と、前記実行後CPUリソース情報と、前記実行後GPUリソース情報とに基づいて、前記第1処理部の実行を、CPU及びGPUのうち少なくとも1つの処理装置に割り当てる割当手段とを有することを特徴とする。 A first aspect of the present invention is a communication control device that is connected to a plurality of communication devices and has at least one CPU and at least one GPU, and (1) a pre-execution CPU resource before the execution of the first processing unit Resource information confirmation means for confirming information and pre-execution GPU resource information; (2) resource information estimation means for estimating post-execution CPU resource information and post-execution GPU resource information after execution of the first processing unit; And (3) executing the first processing unit based on the pre-execution CPU resource information, the pre-execution GPU resource information, the post-execution CPU resource information, and the post-execution GPU resource information. And assigning means for assigning to at least one processing device among the GPUs.
第2の本発明のプログラムは、複数の通信装置に接続され、少なくとも1つのCPUと、少なくとも1つのGPUとを有するコンピュータを、(1)第1処理部の実行前における実行前CPUリソース情報と、実行前GPUリソース情報とを確認するリソース情報確認手段と、(2)前記第1処理部の実行後における実行後CPUリソース情報と、実行後GPUリソース情報とを推定するリソース情報推定手段と、(3)前記実行前CPUリソース情報と、前記実行前GPUリソース情報と、前記実行後CPUリソース情報と、前記実行後GPUリソース情報とに基づいて、前記第1処理部の実行を、CPU及びGPUのうち少なくとも1つの処理装置に割り当てる割当手段として機能させることを特徴とする。 A program according to a second aspect of the present invention provides a computer connected to a plurality of communication devices and having at least one CPU and at least one GPU. (1) CPU resource information before execution before execution of the first processing unit Resource information confirmation means for confirming pre-execution GPU resource information; (2) resource information estimation means for estimating post-execution CPU resource information after execution of the first processing unit; and post-execution GPU resource information; (3) Based on the pre-execution CPU resource information, the pre-execution GPU resource information, the post-execution CPU resource information, and the post-execution GPU resource information, the execution of the first processing unit is performed by the CPU and the GPU. It is made to function as an allocation means to allocate to at least one processing apparatus.
第3の本発明は、第2の本発明のプログラムを記録したコンピュータ読み取り可能な記録媒体である。 The third aspect of the present invention is a computer-readable recording medium on which the program of the second aspect of the present invention is recorded.
第4の本発明は、複数の通信装置に接続され、少なくとも1つのCPUと、少なくとも1つのGPUとを有する通信制御装置の通信制御方法であって、前記通信制御装置は、(1)第1処理部の実行前における実行前CPUリソース情報と、実行前GPUリソース情報とを確認するリソース情報確認ステップと、(2)前記第1処理部の実行後における実行後CPUリソース情報と、実行後GPUリソース情報とを推定するリソース情報推定ステップと、(3)前記実行前CPUリソース情報と、前記実行前GPUリソース情報と、前記実行後CPUリソース情報と、前記実行後GPUリソース情報とに基づいて、前記第1処理部の実行を、CPU及びGPUのうち少なくとも1つの処理装置に割り当てるアプリケーション割当ステップとを有することを特徴とする。 A fourth aspect of the present invention is a communication control method for a communication control apparatus connected to a plurality of communication apparatuses and having at least one CPU and at least one GPU, the communication control apparatus comprising: (1) first A resource information confirmation step for confirming pre-execution CPU resource information and pre-execution GPU resource information before execution of the processing unit; (2) post-execution CPU resource information after execution of the first processing unit; and post-execution GPU Resource information estimation step for estimating resource information; (3) based on the pre-execution CPU resource information, the pre-execution GPU resource information, the post-execution CPU resource information, and the post-execution GPU resource information; An application allocating step for allocating execution of the first processing unit to at least one processing device of the CPU and the GPU. Characterized in that it.
本発明によれば、CPUとGPUに効率的に処理負荷を分散できる。 According to the present invention, the processing load can be efficiently distributed to the CPU and the GPU.
(A)第1の実施形態
以下、本発明による通信制御装置及びプログラム、記録媒体、並びに、通信制御方法の第1の実施形態を、図面を参照しながら詳述する。
(A) First Embodiment Hereinafter, a first embodiment of a communication control device and program, a recording medium, and a communication control method according to the present invention will be described in detail with reference to the drawings.
(A−1)第1の実施形態の構成
図1は、第1の実施形態に係る会議システムの全体構成を示すブロック図である。
(A-1) Configuration of First Embodiment FIG. 1 is a block diagram showing an overall configuration of a conference system according to the first embodiment.
会議システム1には、会議サーバ10と、4台の会議端末40−1〜40−4が配置されている。
In the
会議サーバ10は、会議端末の接続許可及びアドレス変換機能を有する呼制御部20(ゲートキーパ(以下、「GK」ともいう)20)と、2人以上の参加者による多地点会議において、音声、映像、データを相互交換する機能を担っているメディア処理部30(MCU30)と、主にメディア処理部30の構成(処理)を制御するメディア制御部700とを有している。
The
会議サーバ10においては、仮想的に1又は複数の会議室が設定される。会議サーバ10は、会議端末40−1〜40−4から受信した映像データを合成して、合成した映像データを会議端末40−1〜40−4に送信する。さらに、会議サーバ10は、会議端末40−1〜40−4から受信した音声データを合成して、合成した音声データを会議端末40−1〜40−4に送信する。
In the
この実施形態の説明おいて、会議サーバ10の一例は、次の通りである。会議サーバ10は、4台の会議端末40−1〜40−4により一つの会議室が設定される。会議サーバ10は、会議端末40−1〜40−4から受信した映像データを合成して、合成した映像データを会議端末40−1〜40−4に送信する。さらに、会議サーバ10は、会議端末40−1〜40−4から受信した音声データを合成して、合成した音声データを会議端末40−1〜40−4に送信する。
In the description of this embodiment, an example of the
図1において、会議サーバ10は、映像データと併せて音声データを会議端末40−1〜40−4から受信し、合成し、送信するものとしているが、映像データ、又は音声データのいずれかデータを会議端末40−1〜40−4から受信し、合成し、送信するようにしても良い。
In FIG. 1, the
また、図1において、会議端末40−1〜40−4は、会議サーバ10(メディア処理部30(MCU30))と、H.323準拠の方式で呼を接続するものとして説明するが、呼を接続する方式はH.323に限定されないものである。呼を接続する方式における他の一例は、SIP(Session Initiation Protocol)などがある。 In FIG. 1, the conference terminals 40-1 to 40-4 are described as connecting the conference server 10 (media processing unit 30 (MCU 30)) with a H.323-compliant method. The connection method is H.264. It is not limited to H.323. Another example of a method for connecting calls is SIP (Session Initiation Protocol).
会議端末40−1〜40−4は、上述の通り会議サーバ10に接続する端末であり、既存のビデオ会議システムにおける端末を適用するようにしても良い。なお、配置する会議端末40の数は限定されないものである。
The conference terminals 40-1 to 40-4 are terminals connected to the
なお、メディア処理部30(MCU30)と、メディア制御部700の構成例は、後述される図3、図4を用いて説明される。
Configuration examples of the media processing unit 30 (MCU 30) and the
<会議サーバ10のハードウェア構成例>
図2は、会議サーバ10のハードウェア構成例を示すブロック図である。
<Hardware configuration example of
FIG. 2 is a block diagram illustrating a hardware configuration example of the
図2において、会議サーバ10は、CPU611と、GPU612と、メモリ613(CPU用メモリ613−1、GPU用メモリ613−2)と、インタフェース614と、記憶装置615とを有している。
In FIG. 2, the
CPU611は、少なくとも会議サーバ10の一部の構成を制御する演算処理装置(プロセッサ)である。
The
例えば、CPU611は、メモリ613(CPU用メモリ613−1)に、記憶装置615に記憶されるプログラムをロードする。そして、CPU611は、ロードしたプログラムを実行して、呼制御部20、メディア処理部30(MCU30)(後述)、メディア制御部700(後述)を実現する。
For example, the
なお、CPU611により実現されるメディア処理部30(MCU30)の構成は、全ての構成、又は一部の構成である。CPU611により実現されるメディア処理部30(MCU30)の構成が一部の構成である場合、残りのメディア処理部30(MCU30)の構成は、後述されるGPU612により実現される。
Note that the configuration of the media processing unit 30 (MCU 30) realized by the
GPU612は、会議サーバ10の一部の構成する演算処理装置である。さらに、GPU612は、種々の映像データ、音声データを、映像符号化方式、音声符号化方式に基づいて処理するコーデックエンジンが搭載されている演算処理装置であり、CPU611に比べて複数のタスクを同時に処理することができる演算処理装置である。
The GPU 612 is an arithmetic processing device that constitutes a part of the
例えば、GPU612は、メモリ613(GPU用メモリ613−2)にロードされたプログラムを用いる。ここで、ロードされたプログラムは、記憶装置615に記憶されるプログラムであり、CPU611によって、メモリ613(GPU用メモリ613−2)にロードされたプログラムである。そして、GPU612は、CPU611から命令を受信して、命令に関わるプログラムを実行して後述されるメディア処理部30(MCU30)を実現する。
For example, the GPU 612 uses a program loaded in the memory 613 (GPU memory 613-2). Here, the loaded program is a program stored in the
なお、GPU612により実現されるメディア処理部30(MCU30)の構成は、一部の構成である。残りのメディア処理部30(MCU30)の構成は、上述のCPU611にて実現される。
Note that the configuration of the media processing unit 30 (MCU 30) realized by the
メモリ613(CPU用メモリ613−1、GPU用メモリ613−2)は、演算処理装置が直接アクセスする1次記憶手段である。なお、CPU用メモリ613−1は、CPU611が使用するメモリ領域である。また、GPU用メモリ613−2は、GPU612が使用するメモリ領域である。
The memory 613 (CPU memory 613-1, GPU memory 613-2) is primary storage means directly accessed by the arithmetic processing unit. The CPU memory 613-1 is a memory area used by the
インタフェース614は、会議サーバ10の外部に存在する装置と接続するための接続インタフェースである。インタフェース614は、ネットワーク(図示せず)を介して会議端末40(40−1〜40−4)と接続される。
The
また、インタフェース614は、会議サーバ10内におけるCPU611、GPU612、メモリ613(CPU用メモリ613−1、GPU用メモリ613−2)と接続される。
The
記憶装置615は、CPU611、若しくはGPU612(又はその両方)で実行されるプログラム等を記憶する装置である。記憶装置615は、USBメモリやSSDを一例とするフラッシュメモリ、ハードディスクを一例とする磁気記憶装置等である。さらに、記憶装置615は、このプログラム等が記憶されたCD−ROMやFDを一例とする記憶媒体とその記憶媒体を読み取る記憶媒体読取装置を一対とした記憶装置等である。
The
<メディア処理部30(MCU30)内部の機能的構成例>
図3は、メディア処理部30(MCU30)内部の機能的構成例について示したブロック図である。
<Functional Configuration Example Inside Media Processing Unit 30 (MCU 30)>
FIG. 3 is a block diagram illustrating a functional configuration example inside the media processing unit 30 (MCU 30).
なお、図3においては記載を省略しているが、既存のMCU装置と同様に、データ信号処理装置等を有する構成としても良い。 In addition, although description is abbreviate | omitted in FIG. 3, it is good also as a structure which has a data signal processing apparatus etc. similarly to the existing MCU apparatus.
図3において、メディア処理部30(MCU30)は、映像データ処理部31、音声データ処理部32、データ受信処理部33(33−1〜33−4)、及びデータ送信処理部37(37−1〜37−4)を有する。
In FIG. 3, a media processing unit 30 (MCU 30) includes a video
メディア処理部30(MCU30)の各部(映像データ処理部31、音声データ処理部32、データ受信処理部33、データ送信処理部37)は、メディア制御部700(図1)により、制御される。
Each unit (video
なお、データ受信処理部33、データ送信処理部37は、接続する会議端末40と同数作成される。
Note that the same number of data
ここで、メディア処理部30(MCU30)の各部の処理は、会議サーバ10のハードウェア構成例を示すブロック図(図2)により、実現される。
Here, the processing of each unit of the media processing unit 30 (MCU 30) is realized by a block diagram (FIG. 2) showing an example of a hardware configuration of the
メディア処理部30(MCU30)の各部の処理は、例えば、CPU611、又はGPU612がアクセス可能な記憶装置615に記憶されたメディア処理プログラムにコーディングされている。そして、CPU611、又はGPU612が記憶装置615からメディア処理プログラムを読み出して、コーディングされている処理を実行する。
The processing of each unit of the media processing unit 30 (MCU 30) is coded in, for example, a media processing program stored in the
メディア処理部30(MCU30)の各部の構成例(データ受信処理部33、映像データ処理部31、音声データ処理部32、及びデータ送信処理部37)は、次の通りである。
A configuration example (data
ここで、メディア制御部700(図1)は、呼制御部20(GK20)から、会議端末40(40−1〜40−4)で利用可能な符号化方式とその仕様を受信しているものとする。 Here, the media control unit 700 (FIG. 1) has received from the call control unit 20 (GK20) the encoding schemes usable by the conference terminals 40 (40-1 to 40-4) and their specifications. And
なお、呼制御部20(GK20)は、会議サーバ10と会議端末40−1〜40−4との間で呼が確立するとき、会議端末40(40−1〜40−4)から、利用可能な符号化方式とその仕様を受信するものとする(または、呼制御部20(GK20)は、予め、利用可能な符号化方式とその仕様を記憶しているものとする)。
The call control unit 20 (GK20) can be used from the conference terminal 40 (40-1 to 40-4) when a call is established between the
<データ受信処理部33>
データ受信処理部33(33−1〜33−4)は、メディア制御部700の指示により割り当てられたCPU611により、データ受信処理を行う機能を有する。
<Data
The data reception processing unit 33 (33-1 to 33-4) has a function of performing data reception processing by the
データ受信処理部33(33−1〜33−4)は、会議端末40(40−1〜40−4)から映像データ(符号化済)と音声データ(符号化済)を受信する。 The data reception processing unit 33 (33-1 to 33-4) receives video data (encoded) and audio data (encoded) from the conference terminals 40 (40-1 to 40-4).
データ受信処理部33(33−1〜33−4)は、映像データ処理部31に、受信した映像データ(符号化済)を送信し、音声データ処理部32に、受信した音声データ(符号化済)を送信する。
The data reception processing unit 33 (33-1 to 33-4) transmits the received video data (encoded) to the video
<映像データ処理部31>
映像データ処理部31は、メディア制御部700(図1)の指示により割り当てられたCPU611若しくはGPU612(又は、その両方)により、映像処理(映像復号、映像合成、映像符号化)を行う機能を有する。
<Video
The video
映像データ処理部31は、映像データ復号部34a(34a−1〜34a−4)、映像データ合成部35a(35a−1〜35a−4)、及び映像データ符号化部36a(36a−1〜36a−4)を有する。なお、映像データ復号部34a、映像データ合成部35a、映像データ符号化部36aは、接続する会議端末数と同数作成される。
The video
また、複数の映像データ合成部35aにおいて、映像データ合成部35aの入力される映像データと出力される映像データが同じである場合、複数の映像データ合成部35aは、1つの映像データ合成部35aで処理してもよい(なお、各映像データ合成部35aと各映像データ符号化部36aとの接続は、メディア制御部700(図1)からの指示により、動的に変更可能である)。
In addition, in the plurality of video
また、映像データ符号化部36aは、会議室に対して1つ以上任意の数で作成される。映像データ符号化部36aは、メディア制御部700の指示により、新たに作成されること、及び消去されることができるものとする。映像データ符号化部36aとデータ送信処理部37の接続関係は、会議中であっても、メディア制御部700の指示により、動的に変化させることができるものとする。
In addition, one or more video
また、複数の映像データ符号化部36aにおいて、映像データ符号化部36aに入力される映像データと出力される映像データが同じである場合、複数の映像データ符号化部36aは、1つの映像データ符号化部36aで処理してもよい(なお、各映像データ符号化部36aと各データ送信処理部37との接続は、メディア制御部700(図1)からの指示により、動的に変更可能である)。
In addition, in the plurality of video
ここで、映像データ処理部31の各部(映像データ復号部34a、映像データ合成部35a、映像データ符号化部36a)の構成は、次の通りである。
Here, the configuration of each unit (video data decoding unit 34a, video
<<映像データ復号部34a>>
映像データ復号部34a(34a−1〜34a−4)は、データ受信処理部33(33−1〜33−4)から、映像データ(符号化済)を受信して、受信した映像データ(符号化済)を復号する。映像データ復号部34a(34a−1〜34a−4)は、映像データ合成部35a(35a−1〜35a−4)に、復号した映像データを送信する。
<< Video Data Decoding Unit 34a >>
The video data decoding unit 34a (34a-1 to 34a-4) receives video data (encoded) from the data reception processing unit 33 (33-1 to 33-4), and receives the received video data (code Decrypted). The video data decoding unit 34a (34a-1 to 34a-4) transmits the decoded video data to the video
ここで、映像データ復号部34a(34a−1〜34a−4)は、映像データ(符号化済)を復号処理する際、後述されるメディア制御部700により設定された符号化方式であり、会議端末40(40−1〜40−4)にて用いられた符号化方式に基づいて、復号処理を行う。
Here, the video data decoding unit 34a (34a-1 to 34a-4) is an encoding method set by the
なお、会議端末40において、資料共有(PC画面や特定のアプリウインドウ)などが行われている場合、映像データ復号部34a(34a−1〜34a−4)は、上述の処理と並行して、データ受信処理部33(33−1〜33−4)から、映像データ(資料共有)(符号化済)を受信して、受信した映像データ(資料共有)(符号化済)を復号する。映像データ復号部34a(34a−1〜34a−4)は、映像データ合成部35a(35a−1〜35a−4)に、復号した映像データ(資料共有)を送信する。
In the conference terminal 40, when document sharing (PC screen or specific application window) or the like is performed, the video data decoding unit 34a (34a-1 to 34a-4) performs the above processing in parallel. Video data (material sharing) (encoded) is received from the data reception processing unit 33 (33-1 to 33-4), and the received video data (material sharing) (encoded) is decoded. The video data decoding unit 34a (34a-1 to 34a-4) transmits the decoded video data (material sharing) to the video
<<映像データ合成部35a>>
映像データ合成部35a(35a−1〜35a−4)は、映像データ復号部34a(34a−1〜34a−4)から、映像データ(復号済)を受信して、受信した映像データ(復号済)を合成する。映像データ合成部35a(35a−1〜35a−4)は、合成された映像データを、映像データ符号化部36a(36a−1〜36a−4)にする。
<< Video
The video
ここで、映像データ合成部35aは、合成処理を行う際、映像データ(合成済)の送信先となる会議端末40(40−1〜40−4)に関わる映像データ(復号済)を除いて合成する。
Here, the video
例えば、映像データ合成部35aは、会議端末40−1に関わる合成処理を行う際、映像データ復号部34a−1から受信した映像データ(復号済)を除いて、映像データ復号部34a−2〜34a−4から受信した映像データ(復号済)を合成する。
For example, when the video
なおここで、映像データ合成部35aは、合成処理を行う際、全ての会議端末40(40−1〜40−4)に関わる映像データ(復号済)を合成してもよい。
Here, the video
<<映像データ符号化部36a>>
映像データ符号化部36a(36a−1〜36a−4)は、映像データ合成部35a(35a−1〜35a−4)から、映像データ(合成済)を受信して、受信した映像データ(合成済)を符号化する。
<< Video
The video
映像データ符号化部36a(36a−1〜36a−4)は、会議端末40(40−1〜40−4)に、符号化した映像データを送信する。
The video
なお、映像データ符号化部36a(36a−1〜36a−4)は、映像データ(合成済)を符号化処理する際、後述されるメディア制御部700により設定された符号化方式であり、会議端末40(40−1〜40−4)にて用いられた符号化方式に基づいて、符号化処理を行う。
Note that the video
<音声データ処理部32>
音声データ処理部32は、メディア制御部700の指示により割り当てられたCPU611若しくはGPU612(又は、その両方)により、音声処理(音声復号、音声合成、音声符号化)を行う機能を有する。
<Audio
The voice
音声データ処理部32は、音声データ復号部34b(34b−1〜34b−4)、音声データ合成部35b(35b−1〜35b−4)、及び音声データ符号化部36b(36b−1〜36b−4)を有する。なお、音声データ復号部34b、音声データ合成部35b、音声データ符号化部36bは、接続する会議端末数と同数作成される。
The audio
また、複数の音声データ合成部35bにおいて、音声データ合成部35bの入力される音声データと出力される音声データが同じである場合、複数の音声データ合成部35bは、1つの音声データ合成部35bで処理してもよい(なお、各音声データ合成部35bと各音声データ符号化部36bとの接続は、メディア制御部700(図1)からの指示により、動的に変更可能である)。
In addition, in the plurality of sound data synthesizers 35b, when the sound data input to the sound data synthesizer 35b is the same as the sound data to be output, the plurality of sound data synthesizers 35b is one sound data synthesizer 35b. (The connection between each audio data synthesis unit 35b and each audio
また、音声データ符号化部36bは、会議室に対して1つ以上任意の数で作成される。音声データ符号化部36bは、メディア制御部700の指示により、新たに作成されること、及び消去されることができるものとする。音声データ符号化部36bとデータ送信処理部37の接続関係は、会議中であっても、メディア制御部700の指示により、動的に変化させることができるものとする。
In addition, one or more audio
また、複数の音声データ符号化部36bにおいて、音声データ符号化部36bに入力される音声データと出力される音声データが同じである場合、複数の音声データ符号化部36bは、1つの音声データ符号化部36bで処理してもよい(なお、各音声データ符号化部36bと各データ送信処理部37との接続は、メディア制御部700(図1)からの指示により、動的に変更可能である)。
In addition, in the plurality of audio
ここで、音声データ処理部32の各部(音声データ復号部34b、音声データ合成部35b、音声データ符号化部36b)の構成は、次の通りである。
Here, the configuration of each unit (the audio
<<音声データ復号部34b>>
音声データ復号部34b(34b−1〜34b−4)は、データ受信処理部33(33−1〜33−4)から、音声データ(符号化済)を受信して、受信した音声データ(符号化済)を復号する。音声データ復号部34b(34b−1〜34b−4)は、音声データ合成部35b(35b−1〜35b−4)に、復号した音声データを送信する。
<< Audio
The audio
なお、音声データ復号部34b(34b−1〜34b−4)は、音声データ(符号化済)を復号処理する際、後述されるメディア制御部700により指示された符号化方式であり、会議端末40(40−1〜40−4)にて用いられた符号化方式に基づいて、復号処理を行う。
The audio
<<音声データ合成部35b>>
音声データ合成部35b(35b−1〜35b−4)は、音声データ復号部34b(34b−1〜34b−4)から、音声データ(復号済)を受信して、受信した音声データ(復号済)を合成する。音声データ合成部35b(35b−1〜35b−4)は、合成された音声データを、音声データ符号化部36b(36b−1〜36b−4)にする。
<< Sound Data Synthesizer 35b >>
The voice data synthesis unit 35b (35b-1 to 35b-4) receives the voice data (decoded) from the voice
ここで、音声データ合成部35b(35b−1〜35b−4)は、合成処理を行う際、音声データ(合成済)の送信先となる会議端末40(40−1〜40−4)に関わる音声データ(復号済)を除いて合成する。 Here, the voice data synthesizer 35b (35b-1 to 35b-4) is involved in the conference terminals 40 (40-1 to 40-4) that are the transmission destinations of the voice data (synthesized) when performing the synthesis process. It is synthesized by excluding the voice data (decoded).
例えば、音声データ合成部35b−1は、会議端末40−1に関わる合成処理を行う際、音声データ復号部34b−1から受信した音声データ(復号済)を除いて、音声データ復号部34b−2〜34b−4から受信した音声データ(復号済)を合成する。
For example, the voice data synthesizing unit 35b-1 excludes the voice data (decoded) received from the voice
<<音声データ符号化部36b>>
音声データ符号化部36b(36b−1〜36b−4)は、音声データ合成部35b(35b−1〜35b−4)から、音声データ(合成済)を受信して、受信した音声データ(合成済)を符号化する。
<< Audio
The voice
音声データ符号化部36b(36b−1〜36b−4)は、会議端末40(40−1〜40−4)に、符号化した音声データを送信する。
The audio
なお、音声データ符号化部36b(36b−1〜36b−4)は、音声データ(合成済)を符号化処理する際、後述されるメディア制御部700により指示された符号化方式であり、会議端末40(40−1〜40−4)にて用いられた符号化方式に基づいて、符号化処理を行う。
Note that the audio
<データ送信処理部37>
データ送信処理部37(37−1〜37−4)は、メディア制御部700の指示により割り当てられたCPU611により、データ送信処理を行う機能を有する。
<Data
The data transmission processing unit 37 (37-1 to 37-4) has a function of performing data transmission processing by the
データ送信処理部37(37−1〜37−4)は、映像データ処理部31(映像データ符号化部36a(36a−1〜36a−4))から、映像データ(符号化済)を受信して、受信した映像データ(符号化済)を、会議端末40(40−1〜40−4)に送信する。
The data transmission processing unit 37 (37-1 to 37-4) receives video data (encoded) from the video data processing unit 31 (video
データ送信処理部37(37−1〜37−4)は、音声データ処理部32(音声データ符号化部36b(36b−1〜36b−4))から、音声データ(符号化済)を受信して、受信した音声データ(符号化済)を、会議端末40(40−1〜40−4)に送信する。
The data transmission processing unit 37 (37-1 to 37-4) receives the audio data (encoded) from the audio data processing unit 32 (audio
<メディア制御部700内部の機能的構成例>
図4は、メディア制御部700内部の機能的構成例について示したブロック図である。
<Example of Functional Configuration Inside
FIG. 4 is a block diagram showing an example of a functional configuration inside the
図4において、メディア制御部700は、上限リソース情報取得部310と、使用リソース情報取得部320と、CPU/GPU処理割当候補取得部330と、CPU/GPU処理割当部340と、メディア機能制御部350とを有する。
4, the
ここで、各部の処理は、会議サーバ10のハードウェア構成例を示すブロック図(図2)により、実現される。
Here, the process of each part is implement | achieved by the block diagram (FIG. 2) which shows the hardware structural example of the
各部の処理は、例えば、CPU611がアクセス可能な記憶装置615に記憶された制御プログラムにコーディングされる。そして、CPU611が記憶装置から制御プログラムを読み出して、コーディングされている処理を実行する。
The processing of each unit is coded in a control program stored in the
各部の構成例(上限リソース情報取得部310、使用リソース情報取得部320、CPU/GPU処理割当候補取得部330、CPU/GPU処理割当部340、及びメディア機能制御部350)は、次の通りである。
A configuration example of each unit (upper limit resource
<上限リソース情報取得部310>
上限リソース情報取得部310は、各リソースの上限値を取得するものである。例えば、上限リソース情報取得部310は、CPU611の上限使用率であるCPU上限使用率Cmax、GPU612の上限使用率であるGPU上限使用率Gmax、会議室数の上限数、1会議室における会議端末の上限接続数、会議端末40との間で使用可能な映像符号化方式に関する1つの会議端末におけるGPU使用率及びCPU使用率、会議端末40との間で使用可能な音声符号化方式に関する1つの会議端末におけるGPU使用率とCPU使用率、会議サーバ10における伝送容量の上限値(10Mbps、100Mbps、1Gbpsなど)等の情報を取得する。
<Upper limit resource
The upper limit resource
なお、会議端末40との間で使用可能な映像符号化方式と音声符号化方式の一例は、「<<映像符号化方式と音声符号化方式の一例>>」の項目(後述)で、説明される。 An example of the video encoding method and the audio encoding method that can be used with the conference terminal 40 is described in the item “<< Example of video encoding method and audio encoding method >>” (described later). Is done.
また、映像符号化方式と音声符号化方式に関する1つの会議端末におけるGPU使用率及びCPU使用率の一例は、「<<符号化方式(z)と、1つの会議端末におけるGPU使用率及びCPU使用率の一例>>」の項目(後述)で、説明される。 An example of the GPU usage rate and CPU usage rate in one conference terminal related to the video encoding method and the audio encoding method is “<< encoding method (z), GPU usage rate and CPU usage in one conference terminal” An example of the rate >> ”(described later) will be described.
<使用リソース情報取得部320>
使用リソース情報取得部320は、各リソースの現在使用している値(情報)を取得するものである。例えば、使用リソース情報取得部320は、メモリ613(CPU用メモリ613−1)から、CPU611の現在使用率であるCPU現在使用率C、GPU612の現在使用率であるGPU現在使用率G、現在稼動中の会議室数、各稼動中会議室における現在の会議端末の接続数、各稼動中会議室における現在使用中の映像符号化方式、各稼動中会議室における現在使用中の音声符号化方式、会議サーバ10における現在使用中の伝送容量を取得する。
<Used resource
The used resource
なお、CPU現在使用率Cは、CPU611により、所定の時間間隔、CPUのプログラムの開始時(終了時)などのタイミングに基づいて、メモリ613(CPU用メモリ613−1)に記録されるものとする。
The CPU current usage rate C is recorded by the
また、GPU現在使用率Gは、GPU612により、所定の時間間隔、プログラムの実行時、プログラムの終了時などのタイミングに基づいて、GPU現在使用率Gを、メモリ613(GPU用メモリ613−2)に記録されるものとする。さらに、メモリ613(GPU用メモリ613−2)に記録されるGPU現在使用率Gは、CPU611により、アクセスされ、メモリ613(CPU用メモリ613−1)に記録されるものとする。
Further, the GPU current usage rate G is determined by the
<CPU/GPU処理割当候補取得部330>
CPU/GPU処理割当候補取得部330は、メディア処理部30(MCU30)の構成を、CPU611、若しくはGPU612(又はその両方)に割り当てる割当候補の取得を行う(割当候補の一例は、「<<割当候補と、変更される会議端末に関するGPU使用率及びCPU使用率の一例>>」の項目(後述)で、説明される)。
<CPU / GPU processing allocation
The CPU / GPU process allocation
なお、CPU/GPU処理割当候補取得部330は、例えば、割当候補を、メモリ613(CPU用メモリ613−1)、又は記憶装置615から取得するものとする。
Note that the CPU / GPU processing allocation
<CPU/GPU処理割当部340>
CPU/GPU処理割当部340は、CPU/GPU処理割当候補取得部330で取得された割当候補について、現在のリソース情報等を総合的に考慮して、実際に割当候補の内から一つを選択してメディア処理部30(MCU30)の処理を割り当てるものである。なお、CPU/GPU処理割当部340は、メディア処理部30(MCU30)の処理について、基本的にGPU612に処理を割り当てるのが効率的であるために、GPU現在使用率Gが、GPU上限使用率Gmaxに到達していなければ、優先的にGPU612に処理を割り当てる候補を選択するものとする(詳細については、動作の項で説明する)。
<CPU / GPU
The CPU / GPU
<メディア機能制御部350>
メディア機能制御部350は、メディア処理部30に対して、映像符号化方式のパラメータの指示、又は音声符号化方式のパラメータの設定の指示、動作の制御等を行うものである。
<Media
The media
指示には、符号化方式(映像符号化方式、音声符号化方式)や、符号化方式の仕様(映像符号化方式の仕様、音声符号化方式の仕様)を含む。ここで、映像符号化方式の仕様の一例は、画素数、フレームレート、走査方式、伝送データ量などである。音声符号化方式の仕様の一例は、伝送データ量などである。 The instruction includes a coding scheme (video coding scheme, audio coding scheme) and coding scheme specifications (video coding scheme specifications, audio coding scheme specifications). Here, examples of the specifications of the video encoding method are the number of pixels, the frame rate, the scanning method, the amount of transmission data, and the like. An example of the specification of the speech coding scheme is the amount of transmission data.
<<映像符号化方式と音声符号化方式の一例>>
会議端末40との間で使用可能な符号化方式が符号化方式(z)である場合、映像符号化方式は映像符号化方式(z)であり、音声符号化方式は音声符号化方式(z)であるとする。
<< Examples of video coding system and audio coding system >>
When the encoding scheme that can be used with the conference terminal 40 is the encoding scheme (z), the video encoding scheme is the video encoding scheme (z), and the audio encoding scheme is the audio encoding scheme (z). ).
映像符号化方式(z)は、1種類でも複数の種類でもよい。 The video encoding method (z) may be one type or a plurality of types.
また、映像符号化方式(z)の仕様は、「画素数、フレームレート、走査方式、伝送データ量」などであり、「画素数、フレームレート、走査方式、伝送データ量」は、1種類でも複数の種類でよい。 The specification of the video encoding method (z) is “the number of pixels, the frame rate, the scanning method, the transmission data amount”, etc., and the “number of pixels, the frame rate, the scanning method, the transmission data amount” is one kind. There may be multiple types.
映像符号化方式(z)の一例は、H.265/HEVC、H.264/MPEG−4 AVCなどである(その他の一例は、H.261、MPEG2、MPEG4等である)。 Examples of the video encoding method (z) are H.265 / HEVC, H.264 / MPEG-4 AVC, and the like (other examples are H.261, MPEG2, MPEG4, etc.).
なお、映像符号化方式(z)の仕様の一例は、次のようになる。 An example of the specification of the video encoding method (z) is as follows.
H.265/HEVCの場合、映像符号化方式(z)の仕様の一例は、複数の「画素数、フレームレート、走査方式、伝送データ量」からなり、「3840×2160ドット、60フレーム/秒、プログレッシブ、28Mbps」、「1920×1080ドット、60フレーム/秒、プログレッシブ、15Mbps」、「1920×1080ドット、30フレーム/秒、プログレッシブ、9Mbps」、「1280×720ドット、30フレーム/秒、プログレッシブ、4.5Mbps」などである。 In the case of H.265 / HEVC, an example of the specification of the video encoding method (z) is composed of a plurality of “number of pixels, frame rate, scanning method, transmission data amount”, and “3840 × 2160 dots, 60 frames / second”. , Progressive, 28 Mbps "," 1920 x 1080 dots, 60 frames / second, progressive, 15 Mbps "," 1920 x 1080 dots, 30 frames / second, progressive, 9 Mbps "," 1280 x 720 dots, 30 frames / second, progressive , 4.5 Mbps ".
また、H.264/MPEG−4 AVCの場合、映像符号化方式(z)の仕様の一例は、複数の「画素数、フレームレート、走査方式、伝送データ量」からなり、「1920×1080ドット、60フレーム/秒、プログレッシブ、28Mbps」、「1920×1080ドット、30フレーム/秒、プログレッシブ、15Mbps」、「1280×720ドット、30フレーム/秒、プログレッシブ、9Mbps」、「800×480ドット、30フレーム/秒、プログレッシブ、4.5Mbps」などである。 In the case of H.264 / MPEG-4 AVC, an example of the specification of the video encoding method (z) is composed of a plurality of “number of pixels, frame rate, scanning method, transmission data amount”, and “1920 × 1080 dots”. , 60 frames / second, progressive, 28 Mbps ”,“ 1920 × 1080 dots, 30 frames / second, progressive, 15 Mbps ”,“ 1280 × 720 dots, 30 frames / second, progressive, 9 Mbps ”,“ 800 × 480 dots, 30 ” Frame / second, progressive, 4.5 Mbps ", and the like.
ここで、プロセッサ(GPU/CPU)の使用率は、H.265/HEVCの方が、H.264/MPEG−4 AVCよりも、高くなる。 Here, the usage rate of the processor (GPU / CPU) is higher in H.265 / HEVC than in H.264 / MPEG-4 AVC.
またここで、プロセッサ(GPU/CPU)の使用率は、同じ符号化方式であるならば、映像符号化方式の仕様(画素数、フレームレート、伝送データ量)において数値が大きいほど、高くなる。なお、プロセッサ(GPU/CPU)の使用率は、同じ符号化方式であるならば、映像符号化方式の仕様(走査方式)においてプログレッシブの方がインターレスよりも、高くなる。 Here, the usage rate of the processor (GPU / CPU) increases as the numerical value increases in the specifications of the video encoding method (number of pixels, frame rate, amount of transmission data) if the encoding method is the same. Note that the usage rate of the processor (GPU / CPU) is higher in progressive than in interlaced in the specification of the video coding method (scanning method) if the same coding method is used.
音声符号化方式(z)は、1種類でも複数の種類でよい。 The voice encoding method (z) may be one type or a plurality of types.
また、音声符号化方式(z)の仕様は、「伝送データ量」などであり、「伝送データ量」は、1種類でも複数の種類でよい。 In addition, the specification of the speech encoding method (z) is “transmission data amount” or the like, and the “transmission data amount” may be one type or a plurality of types.
音声符号化方式の一例は、MPEG−4 AAC−LC(ステレオ)、MPEG−4 AAC−LC(モノラル)などである(その他の一例は、G.711、G.722.1、G.729等である)。 An example of the audio coding system is MPEG-4 AAC-LC (stereo), MPEG-4 AAC-LC (monaural), etc. (other examples are G.711, G.722.1, G.729, etc.) Is).
なお、音声符号化方式(z)の仕様の一例は、次のようになる。 An example of the specification of the speech encoding method (z) is as follows.
MPEG−4 AAC−LC(ステレオ)の場合、音声符号化方式(z)の仕様の一例は、複数の「伝送データ量」からなり、「320kbps」、「256kbps」、「192kbps」、「128kbps」などである。 In the case of MPEG-4 AAC-LC (stereo), an example of the specification of the audio coding method (z) is composed of a plurality of “transmission data amounts”, “320 kbps”, “256 kbps”, “192 kbps”, “128 kbps”. Etc.
また、MPEG−4 AAC−LC(モノラル)の場合、音声符号化方式(z)の仕様の一例は、複数の「伝送データ量」からなり、「256kbps」、「192kbps」、「128kbps」、「96kbps」などである。 In the case of MPEG-4 AAC-LC (monaural), an example of the specification of the audio coding method (z) is composed of a plurality of “transmission data amounts”, and “256 kbps”, “192 kbps”, “128 kbps”, “128 kbps”, “ 96 kbps ".
ここで、プロセッサ(GPU/CPU)の使用率は、MPEG−4 AAC−LC(ステレオ)の方が、MPEG−4 AAC−LC(モノラル)よりも、高くなる。 Here, the usage rate of the processor (GPU / CPU) is higher in MPEG-4 AAC-LC (stereo) than in MPEG-4 AAC-LC (mono).
またここで、プロセッサ(GPU/CPU)の使用率は、同じ符号化方式であるならば、音声符号化方式の仕様(伝送データ量)において数値が大きいほど、高くなる。 Here, the use rate of the processor (GPU / CPU) becomes higher as the numerical value is larger in the specification (transmission data amount) of the voice encoding method if the same encoding method is used.
<<符号化方式(z)と、1つの会議端末におけるGPU使用率及びCPU使用率の一例>>
図5は、符号化方式(z)と、1つの会議端末におけるGPU使用率であるGx(z)、及びCPU使用率であるCx(z)の関係の一例を示す図[1000]である。符号化方式(z)[1110(行)]は、次の通りである。
<< Example of encoding method (z), GPU usage rate and CPU usage rate in one conference terminal >>
FIG. 5 is a diagram [1000] illustrating an example of the relationship between the encoding method (z), Gx (z) that is the GPU usage rate in one conference terminal, and Cx (z) that is the CPU usage rate. The encoding method (z) [1110 (row)] is as follows.
符号化方式(z)[1110(行)]の映像符号化方式(z)[1112(行)]は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)を、GPU又はCPUに割り当てる候補であるとする[1030(列)]。 The video encoding method (z) [1112 (row)] of the encoding method (z) [1110 (row)] is a video data processing unit (decoding unit, synthesizing unit, encoding unit) of the media processing unit (MCU) 30. ) Is a candidate to be assigned to the GPU or CPU [1030 (column)].
符号化方式(z)[1110(行)]の音声符号化方式(z)[1114(行)]は、メディア処理部(MCU)30の音声データ処理部(復号部、合成部、符号化部)を、GPU又はCPUに割り当てる候補であるとする[1030(列)]。 The audio encoding method (z) [1114 (row)] of the encoding method (z) [1110 (row)] is an audio data processing unit (decoding unit, synthesizing unit, encoding unit) of the media processing unit (MCU) 30. ) Is a candidate to be assigned to the GPU or CPU [1030 (column)].
また、符号化方式(z)[1110(行)]は、「1つの会議端末におけるGPU使用率」であるgx(z)において、h(z)、i(z)、j(z)、k(z)、l(z)、m(z)の和となる[1040(列)の1042(列)]。なお、h(z)、i(z)、j(z)、k(z)、l(z)、m(z)は、符号化方式(z)に関する1つの会議端末において、映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部に対応するGPU使用率である。 Also, the encoding method (z) [1110 (row)] is h (z), i (z), j (z), k in gx (z) which is “GPU usage rate in one conference terminal”. The sum of (z), l (z), and m (z) [1042 (column) 1042 (column)]. Note that h (z), i (z), j (z), k (z), l (z), and m (z) are video data processing units in one conference terminal related to the encoding method (z). Are the GPU usage rates corresponding to the decoding unit, the synthesizing unit, the encoding unit, and the decoding unit, the synthesizing unit, and the encoding unit of the audio data processing unit.
符号化方式(z)[1110(行)]は、「1つの会議端末におけるCPU使用率」であるcx(z)において、r(z)、s(z)、t(z)、u(z)、v(z)、w(z)の和となる[1040(列)の1042(列)]。なお、r(z)、s(z)、t(z)、u(z)、v(z)、w(z)は、符号化方式(z)に関する1つの会議端末において、映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部に対応するCPU使用率である。 The encoding method (z) [1110 (line)] is the r (z), s (z), t (z), u (z) in cx (z) which is “CPU usage rate in one conference terminal”. ), V (z), and w (z) [1040 (column) 1042 (column)]. Note that r (z), s (z), t (z), u (z), v (z), and w (z) are video data processing units in one conference terminal related to the encoding method (z). Are the CPU usage rates corresponding to the decoding unit, the synthesizing unit, the encoding unit, and the decoding unit, the synthesizing unit, and the encoding unit of the audio data processing unit.
ここで、符号化方式(z)[1110(行)]の映像符号化方式(z)[1112(行)]は、「符号化方式(z)の仕様」として、画素数「a1(z)×a2(z)[ビット]」、フレームレート「b(z)[フレーム/秒]」、走査方式「d(z)」、伝送データ量「e(z)[Mbps]」を有する[1020(列)]。 Here, the video encoding method (z) [1112 (row)] of the encoding method (z) [1110 (row)] has the number of pixels “a1 (z)” as the “specification of the encoding method (z)”. × 1020 (having a2 (z) [bit] ", frame rate" b (z) [frame / second] ", scanning method" d (z) ", and transmission data amount" e (z) [Mbps] " Column)].
符号化方式(z)[1110(行)]の音声符号化方式(z)[1114(行)]は、「符号化方式(z)の仕様」として、伝送データ量「f(z)[Mbps]」を有する[1020(列)]。 The speech encoding method (z) [1114 (row)] of the encoding method (z) [1110 (row)] is a transmission data amount “f (z) [Mbps] as“ specification of the encoding method (z) ”. ] ”[1020 (column)].
なお、映像符号化方式(z)[1112(行)]の一例は、上述の「<<映像符号化方式と音声符号化方式の一例>>」の項目で示される、H.265/HEVC、H.264/MPEG−4 AVCなどである。 An example of the video encoding method (z) [1112 (line)] is H.265 / HEVC, which is indicated by the above item “<< Example of video encoding method and audio encoding method” >> H.264 / MPEG-4 AVC.
また、映像符号化方式(z)[1112(行)]における「符号化方式(z)の仕様[1020(列)]」の一例は、上述の「<<映像符号化方式と音声符号化方式の一例>>」の項目で示される、H.265/HEVCにおける1つの「画素数、フレームレート、走査方式、伝送データ量」や、H.264/MPEG−4 AVCにおける1つの「画素数、フレームレート、走査方式、伝送データ量」である。 An example of the “encoding method (z) specification [1020 (column)]” in the video coding method (z) [1112 (row)] is the above-mentioned “<< video coding method and audio coding method. One example of >>>, one “number of pixels, frame rate, scanning method, amount of transmission data” in H.265 / HEVC, and one “number of pixels,” in H.264 / MPEG-4 AVC, Frame rate, scanning method, transmission data amount ".
なお、音声符号化方式(z)[1114(行)]の一例は、上述の「<<映像符号化方式と音声符号化方式の一例>>」の項目で示される、MPEG−4 AAC−LC(ステレオ)、MPEG−4 AAC−LC(モノラル)などである。 An example of the audio encoding method (z) [1114 (line)] is MPEG-4 AAC-LC indicated by the above item “<< Example of video encoding method and audio encoding method >>”. (Stereo), MPEG-4 AAC-LC (monaural), and the like.
また、音声符号化方式(z)[1114(行)]における「符号化方式(z)の仕様[1020(列)]」の一例は、上述の「<<映像符号化方式と音声符号化方式の一例>>」の項目で示される、MPEG−4 AAC−LC(ステレオ)における1つの「伝送データ量」や、MPEG−4 AAC−LC(モノラル)の1つにおける「伝送データ量」である。 An example of the “encoding method (z) specification [1020 (column)]” in the audio encoding method (z) [1114 (row)] is the above-mentioned “<< video encoding method and audio encoding method. One example of “transmission data amount” in MPEG-4 AAC-LC (stereo) and “transmission data amount” in one of MPEG-4 AAC-LC (monaural), which are indicated by the item “Example of >>>” .
<<割当候補と、変更される会議端末に関するGPU使用率及びCPU使用率の一例>>
図6は、CPU/GPU処理割当候補取得部が取得する割当候補(割当候補(1)〜(4))を示す説明図である。さらに、図6は、割当候補と、変更される会議端末に関するGPU使用率及びCPU使用率の一例を示す図[2000]である。
<< Example of allocation candidate and GPU usage rate and CPU usage rate for conference terminal to be changed >>
FIG. 6 is an explanatory diagram showing allocation candidates (allocation candidates (1) to (4)) acquired by the CPU / GPU process allocation candidate acquisition unit. Furthermore, FIG. 6 is a diagram [2000] illustrating an example of an allocation candidate, a GPU usage rate and a CPU usage rate regarding the conference terminal to be changed.
割当候補(p)[2010(列)]は、4つであるものとし、割当候補(1)[2110(行)]、割当候補(2)[2120(行)]、割当候補(3)[2130(行)]、割当候補(4)[2140(行)]は、次の通りである。 Assume that there are four allocation candidates (p) [2010 (columns)], allocation candidates (1) [2110 (rows)], allocation candidates (2) [2120 (rows)], and allocation candidates (3) [ 2130 (row)] and allocation candidate (4) [2140 (row)] are as follows.
割当候補(1)[2110(行)]は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[2020(列)]を、GPU[2030(列)]に割り当てる候補であり、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)を、GPU[2030(列)]に割り当てる候補であるとする。 The allocation candidate (1) [2110 (row)] is the video data processing unit (decoding unit, synthesizing unit, encoding unit) [2020 (column)] of the media processing unit (MCU) 30 and GPU [2030 (column). , And the video data processing unit (decoding unit, synthesizing unit, encoding unit) of the media processing unit (MCU) 30 is a candidate to be allocated to GPU [2030 (column)].
割当候補(2)は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[2020(列)]を、GPU[2030(列)]に割り当てる候補であり、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[2020(列)]を、CPU[2030(列)]に割り当てる候補であるとする。 The allocation candidate (2) is a candidate for allocating the video data processing unit (decoding unit, synthesizing unit, encoding unit) [2020 (column)] of the media processing unit (MCU) 30 to the GPU [2030 (column)]. The video data processing unit (decoding unit, synthesizing unit, encoding unit) [2020 (column)] of the media processing unit (MCU) 30 is a candidate to be assigned to the CPU [2030 (column)].
割当候補(3)は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[2020(列)]を、CPU[2030(列)]に割り当てる候補であり、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[2020(列)]を、GPU[2030(列)]に割り当てる候補であるとする。 The allocation candidate (3) is a candidate for allocating the video data processing unit (decoding unit, synthesizing unit, encoding unit) [2020 (column)] of the media processing unit (MCU) 30 to the CPU [2030 (column)]. Suppose that the video data processing unit (decoding unit, synthesizing unit, encoding unit) [2020 (column)] of the media processing unit (MCU) 30 is a candidate to be assigned to the GPU [2030 (column)].
割当候補(4)は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)を、CPU[2030(列)]に割り当てる候補であり、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[2020(列)]を、CPU[2030(列)]に割り当てる候補であるとする。 The allocation candidate (4) is a candidate for allocating the video data processing unit (decoding unit, synthesizing unit, encoding unit) of the media processing unit (MCU) 30 to the CPU [2030 (column)], and the media processing unit (MCU) ) 30 video data processing units (decoding unit, synthesis unit, encoding unit) [2020 (column)] are candidates to be assigned to the CPU [2030 (column)].
割当候補(1)[2110(行)]は、「変更される会議端末に関するGPU使用率[%]であるGx」において、H、I、J、K、L、Mの和となる[2040(列)の2042(列)]。なお、H、I、J、K、L、Mは、変更される会議端末において、映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部に対応するGPU使用率である。 The allocation candidate (1) [2110 (line)] is the sum of H, I, J, K, L, and M in “Gx that is the GPU usage rate [%] for the conference terminal to be changed” [2040 ( Column 2042 (column)]. H, I, J, K, L, and M are the video data processing unit decoding unit, synthesizing unit, encoding unit, audio data processing unit decoding unit, synthesizing unit, encoding at the conference terminal to be changed. GPU usage rate corresponding to a part.
割当候補(1)[2110(行)]は、CPUへの割り当てが無いので、「変更される会議端末に関するCPU使用率[%]であるCx」において、「−」(つまり0[%])となる[2040(列)の2044(列)]。 Since the allocation candidate (1) [2110 (row)] has no allocation to the CPU, “-” (that is, 0 [%]) in “Cx that is the CPU usage rate [%] regarding the conference terminal to be changed”. [2040 (column) 2044 (column)].
割当候補(2)[2120(行)]は、「変更される会議端末に関するGPU使用率[%]であるGx」において、H、I、Jの和となる[2040(列)の2042(列)]。なお、H、I、J、は、変更される会議端末において、映像データ処理部の復号部、合成部、符号化部に対応するGPU使用率である。 Assignment candidate (2) [2120 (row)] is the sum of H, I, and J in “20x (column) 2042 (column) in“ Gx which is the GPU usage rate [%] for the conference terminal to be changed ””. ]]. H, I, and J are GPU usage rates corresponding to the decoding unit, the combining unit, and the encoding unit of the video data processing unit in the conference terminal to be changed.
割当候補(2)[2120(行)]は、「変更される会議端末に関するCPU使用率[%]であるCx」において、U、V、Wの和となる[2040(列)の2042(列)]。なお、U、V、Wは、変更される会議端末において、音声データ処理部の復号部、合成部、符号化部に対応するCPU使用率である。 Assignment candidate (2) [2120 (row)] is the sum of U, V and W in “Cx which is the CPU usage rate [%] for the conference terminal to be changed” [2042 of 2040 (column) (column ]]. U, V, and W are CPU usage rates corresponding to the decoding unit, the synthesizing unit, and the encoding unit of the audio data processing unit in the conference terminal to be changed.
割当候補(3)[2110(行)]は、「変更される会議端末に関するGPU使用率[%]であるGx」において、K、L、Mの和となる[2040(列)の2042(列)]。なお、K、L、Mは、変更される会議端末において、音声データ処理部の復号部、合成部、符号化部に対応するGPU使用率である。 Assignment candidate (3) [2110 (row)] is the sum of K, L, and M in “Gx that is the GPU usage rate [%] for the conference terminal to be changed” 2042 (column ]]. K, L, and M are GPU usage rates corresponding to the decoding unit, the synthesizing unit, and the encoding unit of the audio data processing unit in the conference terminal to be changed.
割当候補(3)[2120(行)]は、「変更される会議端末に関するCPU使用率[%]であるCx」において、R、S、Tの和となる[2040(列)の2042(列)]。なお、R、S、Tは、変更される会議端末において、映像データ処理部の復号部、合成部、符号化部に対応するCPU使用率である。 Assignment candidate (3) [2120 (row)] is the sum of R, S, and T in “Cx which is CPU usage rate [%] for the conference terminal to be changed” [2040 (column) 2042 (column) ]]. Note that R, S, and T are CPU usage rates corresponding to the decoding unit, the combining unit, and the encoding unit of the video data processing unit in the conference terminal to be changed.
割当候補(4)[2110(行)]は、GPUへの割り当てが無いので、「変更される会議端末に関するGPU使用率[%]であるGx」において、「−」(つまり0[%])となる[2040(列)の2042(列)]。 Since the allocation candidate (4) [2110 (row)] has no allocation to the GPU, “-” (that is, 0 [%]) in “Gx that is the GPU usage rate [%] related to the conference terminal to be changed”. [2040 (column) 2042 (column)].
割当候補(4)[2120(行)]は、「変更される会議端末に関するCPU使用率[%]であるCx」において、R、S、T、U、V、Wの和となる[2040(列)の2042(列)]。なお、R、S、T、U、V、Wは、変更される会議端末において、映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部に対応するCPU使用率である。 The allocation candidate (4) [2120 (row)] is the sum of R, S, T, U, V, and W in “Cx that is the CPU usage rate [%] regarding the conference terminal to be changed” [2040 ( Column 2042 (column)]. Note that R, S, T, U, V, and W are the video data processing unit decoding unit, the synthesis unit, the encoding unit, the audio data processing unit decoding unit, the synthesis unit, and the encoding in the conference terminal to be changed. CPU usage rate corresponding to each part.
ここで、「変更される会議端末に関するGPU使用率」の対象となる変更される会議端末が複数である場合、「H、I、J、K、L、M」は、「映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部」における、各々の「変更される会議端末に関するGPU使用率」の和となる。 Here, when there are a plurality of conference terminals to be changed that are targets of the “GPU usage rate for the conference terminal to be changed”, “H, I, J, K, L, M” It is the sum of the “GPU usage rate for the conference terminal to be changed” in the “decoding unit, synthesizing unit, encoding unit, decoding unit, synthesizing unit, encoding unit”.
また、「変更される会議端末に関するGPU使用率」の対象となる変更される会議端末が複数である場合であり、さらに、変更される会議端末の数がn、変更される会議端末で使用される符号化方式が同じ符号化方式(z)である場合、「H、I、J、K、L、M」は、「映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部」における、各々の「変更される会議端末に関するGPU使用率」のn倍(n×h、n×i、n×j、n×k、n×l、n×m)となる。 In addition, there are a plurality of conference terminals to be changed that are targets of the “GPU usage rate for the conference terminal to be changed”, and the number of conference terminals to be changed is n, which is used by the conference terminal to be changed. “H, I, J, K, L, M” are “decoding unit, synthesizing unit, encoding unit, audio data processing of video data processing unit”, and the same encoding method (z). N times (n × h, n × i, n × j, n × k, n × l) of each “GPU usage rate for the conference terminal to be changed” in the “decoding unit, combining unit, and encoding unit”. , N × m).
なお、「変更される会議端末に関するGPU使用率」の対象となる変更される会議端末が1つである場合、「H、I、J、K、L、M」は、「映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部」における、「変更される会議端末に関するGPU使用率」の「h、i、j、k、l、m」である。 In addition, when there is one conference terminal to be changed that is a target of “GPU usage rate for the conference terminal to be changed”, “H, I, J, K, L, M” is “video data processing unit “H, i, j, k, l,” of “GPU usage rate for conference terminal to be changed” in “decoding unit, synthesizing unit, encoding unit, decoding unit of speech data processing unit, synthesizing unit, encoding unit” m ".
同様に、「変更される会議端末に関するCPU使用率」の対象となる変更される会議端末が複数である場合、「R、S、T、U、V、W」は、「映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部」における、各々の「変更される会議端末に関するCPU使用率」の和となる。 Similarly, when there are a plurality of conference terminals to be changed that are targets of the “CPU usage rate regarding the conference terminal to be changed”, “R, S, T, U, V, W” It is the sum of each “CPU usage rate for the conference terminal to be changed” in the “decoding unit, synthesizing unit, encoding unit, decoding unit, synthesizing unit, encoding unit”.
また、「変更される会議端末に関するCPU使用率」の対象となる変更される会議端末が複数である場合であり、さらに、変更される会議端末の数がn、変更される会議端末で使用される符号化方式が同じ符号化方式(z)である場合、「R、S、T、U、V、W」は、「映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部」における、各々の「変更される会議端末に関するGPU使用率」のn倍(n×r、n×s、n×t、n×u、n×v、n×w)となる。 Further, there are a plurality of conference terminals to be changed that are targets of the “CPU usage rate regarding the conference terminal to be changed”, and the number of conference terminals to be changed is n, and the conference terminals to be changed are used. “R, S, T, U, V, W” are “decoding unit, synthesizing unit, encoding unit, audio data processing of video data processing unit”, and the same encoding method (z). N times (n × r, n × s, n × t, n × u, n × v) of each “GPU usage rate for the conference terminal to be changed” in the “decoding unit, combining unit, and encoding unit”. , N × w).
なお、「変更される会議端末に関するCPU使用率」の対象となる変更される会議端末が1つである場合、「R、S、T、U、V、W」は、「映像データ処理部の復号部、合成部、符号化部、音声データ処理部の復号部、合成部、符号化部」における、「変更される会議端末に関するGPU使用率」の「r、s、t、u、v、w」である。 In addition, when there is one conference terminal to be changed that is the target of “CPU usage rate regarding the conference terminal to be changed”, “R, S, T, U, V, W” “R, s, t, u, v,” of “GPU usage rate for conference terminal to be changed” in “decoding unit, synthesizing unit, encoding unit, decoding unit, synthesizing unit, encoding unit of audio data processing unit”. w ".
なお、変更される会議端末の数であるnは、整数である。変更される会議端末の数であるnは、例えば、会議サーバ10の任意の会議室に会議端末40が新たに追加される場合、若しくは削除される場合、又は会議サーバ10に会議室が新たに追加される場合、若しくは削除される場合などに関する、変更される会議端末の数である。
Note that n, which is the number of conference terminals to be changed, is an integer. The number n of the conference terminals to be changed is, for example, when a conference terminal 40 is newly added to or deleted from an arbitrary conference room of the
それゆえ、変更される会議端末における変更の数であるnは、「1、2、3、・・・と増える場合」、「−1、−2、−3、・・・と減る場合」、「新規の1つの会議室として接続される会議端末の数(2、3、4、・・・)である場合」、「現在のサービスされる1つの会議室が終了して、終了される1つの会議室に接続される会議端末の数(−2、−3、−4、・・・)である場合」などがある。 Therefore, n, which is the number of changes in the conference terminal to be changed, is “when 1, 2, 3,... Increases”, “−1, −2, −3,. “When the number of conference terminals connected as one new conference room (2, 3, 4,...)”, “One conference room that is currently serviced is terminated and terminated 1 The number of conference terminals connected to one conference room (−2, −3, −4,...) ”.
<<割当候補と、GPU使用率及びCPU使用率の一例>>
図7は、CPU/GPU処理割当候補取得部が取得する割当候補(割当候補(1)〜(4))を示す説明図である。さらに、図7は、割当候補と、GPU未使用率及びCPU未使用率の一例を示す図[3000]である。
<< Examples of allocation candidates, GPU usage rate, and CPU usage rate >>
FIG. 7 is an explanatory diagram showing allocation candidates (allocation candidates (1) to (4)) acquired by the CPU / GPU process allocation candidate acquisition unit. Further, FIG. 7 is a diagram [3000] illustrating an example of an allocation candidate, a GPU unused rate, and a CPU unused rate.
割当候補(p)[3010(列)]は、4つであるものとし、割当候補(1)[3110(行)]、割当候補(2)[3120(行)]、割当候補(3)[3130(行)]、割当候補(4)[3140(行)]は、次の通りである。 Assume that there are four allocation candidates (p) [3010 (columns)], allocation candidates (1) [3110 (rows)], allocation candidates (2) [3120 (rows)], and allocation candidates (3) [ 3130 (row)] and allocation candidate (4) [3140 (row)] are as follows.
割当候補(1)[3110(行)]は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[3020(列)]を、GPU[3030(列)]に割り当てる候補であり、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)を、GPU[3030(列)]に割り当てる候補であるとする。 The allocation candidate (1) [3110 (row)] is the video data processing unit (decoding unit, synthesis unit, encoding unit) [3020 (column)] of the media processing unit (MCU) 30 and GPU [3030 (column). ] And the video data processing unit (decoding unit, synthesizing unit, encoding unit) of the media processing unit (MCU) 30 is a candidate to be allocated to GPU [3030 (column)].
割当候補(2)は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[3020(列)]を、GPU[3030(列)]に割り当てる候補であり、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[3020(列)]を、CPU[3030(列)]に割り当てる候補であるとする。 The allocation candidate (2) is a candidate for allocating the video data processing unit (decoding unit, synthesizing unit, encoding unit) [3020 (column)] of the media processing unit (MCU) 30 to the GPU [3030 (column)]. Assume that the video data processing unit (decoding unit, synthesizing unit, encoding unit) [3020 (column)] of the media processing unit (MCU) 30 is a candidate to be assigned to the CPU [3030 (column)].
割当候補(3)は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[3020(列)]を、CPU[3030(列)]に割り当てる候補であり、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[3020(列)]を、GPU[3030(列)]に割り当てる候補であるとする。 The allocation candidate (3) is a candidate for allocating the video data processing unit (decoding unit, synthesizing unit, encoding unit) [3020 (column)] of the media processing unit (MCU) 30 to the CPU [3030 (column)]. Assume that the video data processing unit (decoding unit, synthesizing unit, encoding unit) [3020 (column)] of the media processing unit (MCU) 30 is a candidate to be assigned to the GPU [3030 (column)].
割当候補(4)は、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)を、CPU[3030(列)]に割り当てる候補であり、メディア処理部(MCU)30の映像データ処理部(復号部、合成部、符号化部)[3020(列)]を、CPU[3030(列)]に割り当てる候補であるとする。 The allocation candidate (4) is a candidate for allocating the video data processing unit (decoding unit, synthesizing unit, encoding unit) of the media processing unit (MCU) 30 to the CPU [3030 (column)], and the media processing unit (MCU) ) 30 video data processing units (decoding unit, synthesizing unit, encoding unit) [3020 (column)] are candidates to be assigned to the CPU [3030 (column)].
各々の割当候補(1)〜(4)[3110(行)〜3140(行)]において、「GPU使用率[%]であるGx+G」は、「変更される会議端末に関するGPU使用率[%]であるGx」と「GPU現在使用率[%]であるG」との和である。さらに、「GPU未使用率[%]であるGy」は、「GPU上限使用率[%]であるGmax」から、「GPU使用率[%]であるGx+G」を、差し引いたものとなる[3312(列)]。 In each allocation candidate (1) to (4) [3110 (row) to 3140 (row)], “Gx + G as GPU usage rate [%]” is “GPU usage rate [%] for conference terminal to be changed”. Is Gx ”and“ G is GPU current usage rate [%] ”. Further, “Gy which is a GPU unused rate [%]” is obtained by subtracting “Gx + G which is a GPU usage rate [%]” from “Gmax which is a GPU upper limit usage rate [%]” [3312. (Column)].
各々の割当候補(1)〜(4)[3110(行)〜3140(行)]において、「CPU使用率[%]であるCx+C」は、「変更される会議端末に関するCPU使用率[%]であるCx」と「GPU現在使用率[%]であるC」との和である。さらに、「CPU未使用率[%]であるCy」は、「CPU上限使用率[%]であるCmax」から、「CPU使用率[%]であるCx+C」を、差し引いたものとなる[3314(列)]。 In each of the allocation candidates (1) to (4) [3110 (row) to 3140 (row)], “Cx + C which is a CPU usage rate [%]” is “CPU usage rate [%] for the conference terminal to be changed”. Is Cx ”and“ C is GPU current usage rate [%] ”. Further, “Cy that is a CPU unused rate [%]” is obtained by subtracting “Cx + C that is a CPU usage rate [%]” from “Cmax that is a CPU upper limit usage rate [%]” [3314. (Column)].
なお、図7は、上述される「<<割当候補と、変更される会議端末に関するGPU使用率及びCPU使用率の一例>>」に記載から、接続される会議端末における変更の数であるnにおいて、「会議サーバ10の任意の会議室に会議端末40が新たに追加される場合(n=1、2、3、・・・)、または「会議サーバ10に会議室が新たに追加される場合(n=2、3、4、・・・)の場合」である。
Note that FIG. 7 shows the number of changes in the connected conference terminal from the description in “<< Example of allocation candidate, GPU usage rate and CPU usage rate related to changed conference terminal” >> In “when a conference terminal 40 is newly added to an arbitrary conference room of the conference server 10 (n = 1, 2, 3,...)” Or “a conference room is newly added to the
一方、接続される会議端末における変更の数であるnにおいて、「会議サーバ10の任意の会議室に会議端末40が新たに削除される場合(n=−1、−2、−3、・・・)」、「会議サーバ10に会議室が新たに削除される場合(n=−2、−3、−4、・・・)」などがある。 On the other hand, when n is the number of changes in the connected conference terminal, “when the conference terminal 40 is newly deleted in an arbitrary conference room of the conference server 10 (n = −1, −2, −3,... .) ”,“ When a conference room is newly deleted from the conference server 10 (n = −2, −3, −4,...) ”.
この場合、「変更される会議端末に関するGPU使用率[%]であるGx」が、負の値となるので、「GPU未使用率[%]であるGy」は、図7の記載と異なるものとなる。 In this case, since “Gx which is the GPU usage rate [%] regarding the conference terminal to be changed” is a negative value, “Gy which is the GPU unused rate [%]” is different from the description of FIG. It becomes.
「GPU未使用率[%]であるGy」は、GPU現在使用率[%]であるGから、「変更される会議端末に関するGPU使用率[%]であるGx」を、差し引いた形の記載となる(図示せず)。 “Gy that is the GPU unused rate [%]” is a description that is obtained by subtracting “Gx that is the GPU usage rate [%] regarding the conference terminal to be changed” from the G that is the GPU current usage rate [%]. (Not shown).
「CPU未使用率[%]であるCy」は、CPU現在使用率[%]であるCから、「変更される会議端末に関するCPU使用率[%]であるCx」を、差し引いた形の記載となる(図示せず)。 “Cy which is a CPU unused rate [%]” is a description in which “Cx which is a CPU usage rate [%] related to a conference terminal to be changed” is subtracted from C which is a current CPU usage rate [%]. (Not shown).
(A−2)第1の実施形態の動作
次に、以上のような構成を有する第1の実施形態の会議システム1の動作を、図面を参照しながら説明する。なお、以下では、メディア制御部700の動作に特徴を有するため、この部分を中心に説明する。
(A-2) Operation of First Embodiment Next, the operation of the
図8は、メディア制御部700の特徴動作(CPU/GPUの処理割当)を示すフローチャートである。
FIG. 8 is a flowchart showing the characteristic operation (CPU / GPU process allocation) of the
図8で示すCPU/GPUの処理割当の動作は、例えば、会議サーバ10の任意の会議室に会議端末40が新たに追加される場合、若しくは削除される場合、又は会議サーバ10に会議室が新たに追加される場合、若しくは削除される場合を契機として発生する。また、図8では、会議サーバ10と、会議端末40(40−1〜40−4)との間で呼が確立し、会議サーバ10が会議端末40(40−1〜40−4)から映像データ及び音声データを取集(受信)し、メディア処理部30の構成(復号部、合成部、符号化部)を実現(実行)するために、CPU611とGPU612に処理を割り当てる例を前提として説明する。なお、この実施形態におけるメディア制御部700は、CPU611とGPU612の処理割当において、映像データ処理部31の処理部、又は音声データ処理部32の処理部を単位として処理を割り当てるものとする。
The CPU / GPU process allocation operation shown in FIG. 8 is performed when, for example, a conference terminal 40 is newly added to or deleted from an arbitrary conference room of the
上限リソース情報取得部310は、CPU上限使用率Cmax、GPU上限使用率Gmax、会議室数の上限数、1会議室における端末の上限接続数、会議端末40との間で使用可能な映像符号化方式におけるGPU使用率及びCPU使用率、会議端末40との間で使用可能な音声符号化方式に関する1つの会議端末におけるGPU使用率とCPU使用率、会議サーバ10における伝送容量の情報を取得する(S101)。なお、CPU上限使用率Cmax、及びGPU上限使用率Gmaxは、予め所定の値が、設定されているものとする(例えば、理論上の上限値(100%)、上限値の70%の値等)。
The upper limit resource
使用リソース情報取得部320は、CPU現在使用率C、GPU現在使用率G、現在稼動中の会議室数、各稼動中会議室における現在の会議端末40の接続数、各稼動中会議室における現在使用中の映像符号化方式、各稼動中会議室における現在使用中の音声符号化方式、会議サーバ10における現在使用中の伝送容量の情報を取得する(S102)。
The used resource
CPU/GPU処理割当候補取得部330は、メディア処理部30(MCU30)の構成(処理)の割当候補の取得する(S103)。
The CPU / GPU processing allocation
例えば、CPU/GPU処理割当候補取得部330が取得した割当候補は、一例として、図6、図7に示される4つの割当候補(割当候補(1)〜(4))とする。
For example, the allocation candidates acquired by the CPU / GPU process allocation
割当候補(1)[図6:2110(行)、図7:3110(行)]は、GPU612のみに映像データ処理部31の処理及び音声データ処理部32の処理を割り当てる最も理想的な割当候補である。理由は、CPU611が、メディア処理部30の映像データ処理部31及び音声データ処理部32以外の他の処理について、実行できる汎用的なプロセッサであり、GPU612が、映像データや音声データを処理する際に使用される並列処理ができるプロセッサであるためである。
Assignment candidate (1) [FIG. 6: 2110 (row), FIG. 7: 3110 (row)] is the most ideal assignment candidate for assigning the processing of the video
割当候補(2)[図6:2120(行)、図7:3120(行)]は、CPU611に音声データ処理部32の処理、GPU612に映像データ処理部31の処理を割り当てる2番目に理想的な割当候補である。割当候補(2)は、CPU611に音声データ処理部32の処理を割り当てる分だけ割当候補(1)に劣る。しかし、割当候補(2)は、処理負荷の大きい映像データ処理部31の処理をGPU612に割り当てる点に優位性が存在する。図7の項目[3120(行)]の[3310(列)]では、図7の項目[3110(行)]の[3310(列)]に比べてGPU612の使用率Gx+Gが若干下降し、CPU611の使用率Cx+Cが若干上昇する例が示されている。
The allocation candidate (2) [FIG. 6: 2120 (row), FIG. 7: 3120 (row)] is the second ideal to assign the processing of the audio
割当候補(3)[図6:2130(行)、図7:3130(行)]は、GPU612に音声データ処理部32の処理、CPU611に映像データ処理部31の処理を割り当てる3番目に理想的な割当候補である。割当候補(3)は、CPU611に処理負荷の大きい映像データ処理部31の処理を割り当てる分だけ割当候補(2)に劣る。しかし、割当候補(3)は、全ての処理をCPU611に割り当てず、音声データ処理部32の処理をGPU612に割り当てる点に優位性が存在する。図7の項目[3130(行)]の[3310(列)]では、図7の項目[3120(行)]の[3310(列)]に比べて、負荷の大きい映像データ処理部31の処理を割り当てる分だけ、GPU612の使用率Gx+GがGPU現在使用率Gに近づき、CPU611の使用率Cx+CがCPU上限使用率Cmaxに近づく例が示されている。
The allocation candidate (3) [FIG. 6: 2130 (row), FIG. 7: 3130 (row)] is the third ideal to assign the processing of the audio
割当候補(4)[図6:2140(行)、図7:3140(行)]は、CPU611のみに映像データ処理部31及びCPU611の処理を割り当てる4番目に理想的な割当候補である。割当候補(4)は、割当候補(1)〜割当候補(3)を適用することができない場合(言い換えれば、GPU612が処理を実行できない場合)の割当候補である。また、図7の項目[3140(行)]の[3310(列)]では、CPU611に全ての処理を割り当てているので、GPU612の使用率Gx+GがGPU現在使用率Gと等しくなり、かつ割当候補(1)〜割当候補(3)に比べて、CPU611の使用率Cx+CがCPU上限使用率Cmaxに最も近くなる例が示されている。
Assignment candidate (4) [FIG. 6: 2140 (row), FIG. 7: 3140 (row)] is the fourth ideal assignment candidate for assigning the processing of the video
CPU/GPU処理割当部340は、上述のステップS101で取得した上限リソース情報と、上述のステップS102で取得した現在のリソース情報とを総合的に判断して、上述のステップS103で取得された割当候補の内から1つを選択し、実際にCPU611とGPU612に、映像データ処理部31の処理、音声データ処理部32の処理を割り当てる(S104)。以下に、CPU/GPU処理割当部340の動作の一例を示す。
The CPU / GPU
まず、CPU/GPU処理割当部340は、GPU上限使用率Gmaxと、GPU現在使用率GとからGPU612に処理を割当可能なGPU612のリソース残量を算出する。同様に、CPU/GPU処理割当部340は、CPU上限使用率Cmaxと、CPU現在使用率CとからCPU611に処理を割当可能なCPU611のリソース残量を算出する。
First, the CPU / GPU
次に、CPU/GPU処理割当部340は、映像データ処理部31内の処理量を算出(推定)する。同様に、CPU/GPU処理割当部340は、音声データ処理部32内の処理量を算出する。
Next, the CPU / GPU
なお、算出(推定)される処理量の対象は、変更される会議端末であり、例えば、会議サーバ10の任意の会議室に新たに追加(削除)される会議端末40、会議サーバ10に新たに追加(削除)される会議室に関わる会議端末40である。
Note that the processing amount to be calculated (estimated) is the conference terminal to be changed. For example, the conference terminal 40 newly added (deleted) to any conference room of the
次に、CPU/GPU処理割当部340は、算出した映像データ処理部31及び音声データ処理部32内の処理量が、GPUリソース残量内に収まるか否か判定する。CPU/GPU処理割当部340は、当該処理量が、GPUリソース残量内に収まる場合には上述の割当候補(1)を適用する。また、CPU/GPU処理割当部340は、算出した映像データ処理部31の処理量のみが、GPUリソース残量内に収まる場合には、上述の割当候補(2)を適用する。さらに、CPU/GPU処理割当部340は、算出した音声データ処理部32内の処理量のみが、GPUリソース残量内に収まる場合には、上述の割当候補(3)を適用する。さらにまた、CPU/GPU処理割当部340は、算出した音声データ処理部32内の処理量、又は算出した映像データ処理部31の処理量が、GPUリソース残量内に収まらない場合には、上述の割当候補(4)を適用する。
Next, the CPU / GPU
そして、CPU/GPU処理割当部340は、適用した割当候補(1)〜割当候補(4)のいずれかに従って、CPU611、若しくはGPU612(又はその両方)に、映像データ処理部31の処理及び音声データ処理部32の処理を割り当てる。
Then, the CPU / GPU
なお、変形例として、CPU/GPU処理割当部340は、例えば、稼働中会議室における映像符号化方式を用いて、映像データ処理部31(映像データ符号化部36a)の符号化処理を行う処理量が大きくて、割当候補(4)を適用せざるを得ない場合、上限リソース情報取得部310で取得した他の映像符号化方式(処理の軽い符号化方式)を用いた符号化処理を行うように制御しても良い。この場合、CPU/GPU処理割当部340は、会議端末40に対して改めて通信を行い、他の映像符号化方式が使用可能か否か確認しても良い。そして、CPU/GPU処理割当部340は、改めて処理量を計算して、割当候補(1)〜割当候補(4)を適用するように制御する。この変形例では、CPU611の使用率が上限(例えば、100%)を超えるようなオーバーフローの状態に近づくことについて、未然に防ぐという効果が生じる。
As a modification, for example, the CPU / GPU
また、CPU/GPU処理割当部340は、例えば、会議サーバ10における伝送容量が、上限に近づいていた場合には、上記とは逆に圧縮率の高い(処理の重い)映像符号化方式を用いた符号化処理を行うように制御しても良い。そして、CPU/GPU処理割当部340は、改めて処理量を計算して、割当候補(1)〜割当候補(4)を適用するように制御する。この変形例では、会議サーバ10の伝送容量の圧迫を未然に防ぐという効果が生じる。
Further, for example, when the transmission capacity in the
他にも、CPU/GPU処理割当部340は、会議室数の上限の数、1会議室の端末の上限接続数、現在稼働中の会議室数、及び稼働中会議室における現在の端末の接続数の情報を加味して、割当候補(1)〜割当候補(4)を適用するようにしても良い。
In addition, the CPU / GPU
(A−3)第1の実施形態の効果
第1の実施形態によれば、以下の効果を奏する。
(A-3) Effects of the First Embodiment According to the first embodiment, the following effects can be obtained.
メディア制御部700が、GPU上限使用率Gmax、GPU現在使用率G等のリソース情報から、なるべくGPU612にメディア処理部30(MCU30)の処理を割り当てるように制御することにより、第1の実施形態は、従来に比べて効率的にCPU611とGPU612に処理負荷を分散できるようになる。
In the first embodiment, the
よって、会議サーバ10は、会議端末40の同時接続数や、同時会議数のスケーラビリティを向上することが可能となる。
Therefore, the
(B)第2の実施形態
以下、本発明による通信制御装置及びプログラム、記録媒体、並びに、通信制御方法の第2の実施形態を、図面を参照しながら詳述する。
(B) Second Embodiment Hereinafter, a second embodiment of a communication control apparatus and program, a recording medium, and a communication control method according to the present invention will be described in detail with reference to the drawings.
(B−1)第2の実施形態の構成
第2の実施形態の多地点会議システム、及び会議サーバの構成についても、第1の実施形態と同様に、図1〜図7を用いて示すことができる。
(B-1) Configuration of Second Embodiment The configurations of the multipoint conference system and conference server of the second embodiment are also shown using FIGS. 1 to 7 as in the first embodiment. Can do.
以下では、第2の実施形態の会議サーバ10(メディア制御部700)の構成について、第1の実施形態との差異について説明する。 Hereinafter, differences between the configuration of the conference server 10 (media control unit 700) of the second embodiment and the first embodiment will be described.
第1の実施形態では、CPU/GPU処理割当候補取得部330は、映像データ処理部31、又は音声データ処理部32の処理部を単位として、CPU611、若しくはGPU612(又はその両方)に処理を割り当てた割当候補を取得していた。第1の実施形態の割当候補は、メモリ613(CPU用メモリ613−1、GPU用メモリ613−2)の効率的な使用という意味(例えば、CPU用メモリ613−1の内容を、GPU用メモリ613−2にコピーする等のオーバヘッドが少ない)では有効であった。
In the first embodiment, the CPU / GPU processing allocation
一方、第2の実施形態では、CPU/GPU処理割当候補取得部330は、CPU611、GPU612の各プロセッサの特徴を生かした観点から処理の割当を行った候補を作成する。GPU612は、一般にグラフィック処理など特定の単純作業を並列で行うことに向いていると考えられている。また、CPU611は、複雑な処理を行うことに向いていると考えられている。
On the other hand, in the second embodiment, the CPU / GPU processing allocation
例えば、映像データ処理部31において、映像データ復号部34aの処理、及び映像データ符号化部36aの処理は、GPU612で実行されることに向いており、映像データ合成部35aの処理は、CPU611で実行されることに向いている。また、音声データ処理部32において、音声データ復号部34bの処理、及び音声データ符号化部36bの処理は、GPU612で実行されることに向いており、音声データ合成部35bの処理は、CPU611で実行されることに向いている。
For example, in the video
(B−2)第2の実施形態の動作
次に、以上のような構成を有する第2の実施形態の会議システム1の動作を、図面を参照しながら説明する。なお、以下では、メディア制御部700の動作に特徴を有するため、この部分を中心に説明する。
(B-2) Operation | movement of 2nd Embodiment Next, operation | movement of the
第2の実施形態のメディア制御部700の動作も、第1の実施形態と同様に図8を用いて説明することができる。ただし、図8のステップS103の処理(割当候補の取得処理)、図8のステップS104の処理(割当候補の選択処理)が、第1の実施形態と異なるのでこの点を中心に説明する。
The operation of the
図8のステップS103の処理(割当候補の取得処理)は、次に示される処理となる。 The process of step S103 in FIG. 8 (assignment candidate acquisition process) is the process shown below.
CPU/GPU処理割当候補取得部330は、GPU612に、映像データ復号部34a(34a−1〜34a−4)の処理、映像データ符号化部36a(36a−1〜36a−4)の処理、音声データ復号部34b(34b−1〜34b−4)の処理、及び音声データ符号化部36b(36b−1〜36b−4)の処理を割り当て、CPU611に、映像データ合成部35aの処理、及び音声データ合成部35bの処理を割り当てる割当候補(割当候補(5))を取得する。
The CPU / GPU processing allocation
ここで、図9は、CPU/GPU処理割当候補取得部が取得する割当候補(上述の割当候補(5))を示す説明図である。図9は、図6をベースに記載される。 Here, FIG. 9 is an explanatory diagram showing an allocation candidate (the above allocation candidate (5)) acquired by the CPU / GPU process allocation candidate acquisition unit. FIG. 9 is described based on FIG.
図8のステップS104の処理(割当候補の選択処理)は、次に示される処理となる。 The process of step S104 in FIG. 8 (assignment candidate selection process) is the following process.
その後、CPU/GPU処理割当部340は、第1の実施形態における上述のステップS104と同様に、割当候補(5)に従って、CPU611とGPU612に処理を割り当てる(第1の実施形態と異なり、割当候補は一つであるので、複数の割当候補から選択する処理は必要としない)。
Thereafter, the CPU / GPU
(B−3)第2の実施形態の効果
第2の実施形態によれば、第1の実施形態と同様の効果を奏することができる。また、CPU/GPU処理割当部340が、CPU611、GPU612の各プロセッサの特徴を考慮して、得意とする処理を割り当てることができるので、第2の実施形態は、CPU611、GPU612の処理効率をより高めることが可能になる。
(B-3) Effect of Second Embodiment According to the second embodiment, the same effect as that of the first embodiment can be obtained. In addition, since the CPU / GPU
(C)第3の実施形態
以下、本発明による通信制御装置及びプログラム、記録媒体、並びに、通信制御方法の第2の実施形態を、図面を参照しながら詳述する。
(C) Third Embodiment Hereinafter, a second embodiment of a communication control device and program, a recording medium, and a communication control method according to the present invention will be described in detail with reference to the drawings.
(C−1)第3の実施形態の構成
第3の実施形態の多地点会議システム、及び会議サーバの構成についても、第1の実施形態と同様に図1〜図7を用いて示すことができる。
(C-1) Configuration of Third Embodiment The configurations of the multipoint conference system and conference server of the third embodiment can also be shown using FIGS. 1 to 7 as in the first embodiment. it can.
以下では、第3の実施形態の会議サーバ10(メディア制御部700)の構成について、第1、2の実施形態との差異について説明する。 Hereinafter, differences between the configuration of the conference server 10 (media control unit 700) of the third embodiment and the first and second embodiments will be described.
第1の実施形態では、CPU/GPU処理割当候補取得部330は、映像データ処理部31、又は音声データ処理部32を単位として、CPU611、若しくはGPU612(又はその両方)に処理を割り当てた割当候補を作成していた。また、第2の実施形態では、CPU/GPU処理割当候補取得部330は、CPU611、GPU612の各プロセッサの特徴を生かした観点から処理を割り当てる割当候補(映像データ処理部31と音声データ処理部32における合成処理はCPU611、映像データ処理部31と音声データ処理部32における復号処理、符号化処理はGPU612に割当)を取得していた。
In the first embodiment, the CPU / GPU process allocation
一方、第3の実施形態のCPU/GPU処理割当候補取得部330は、CPU611、若しくはGPU612(又はその両方)に、映像データ処理部31、又は音声データ処理部32単位で処理を割り当てる割当候補を取得すること(第1の実施形態)に加えて、さらに、細部の構成(映像データ処理部31における映像データ復号部34a、映像データ合成部35a、映像データ符号化部36a、音声データ処理部32における音声データ復号部34b、音声データ合成部35b、音声データ符号化部36b等)単位でも、処理を割り当てる割当候補を取得する(詳細については、動作の項で述べる)。
On the other hand, the CPU / GPU processing allocation
(C−2)第3の実施形態の動作
次に、以上のような構成を有する第3の実施形態の会議システム1の動作を、図面を参照しながら説明する。なお、以下では、メディア制御部700の動作に特徴を有するため、この部分を中心に説明する。
(C-2) Operation of Third Embodiment Next, the operation of the
第3の実施形態のメディア制御部700の動作も、第1の実施形態と同様に図8を用いて説明することができる。ただし、図8のステップS103の処理(割当候補の作成処理)、図8のステップS104の処理(割当候補の選択処理)が、第1の実施形態と異なるのでこの点を中心に説明する。
The operation of the
図8のステップS103の処理(割当候補の取得処理)は、次に示される処理となる。 The process of step S103 in FIG. 8 (assignment candidate acquisition process) is the process shown below.
CPU/GPU処理割当候補取得部330は、CPU611、若しくはGPU612(又はその両方)に、映像データ処理部31の内部構成(映像データ復号部34a、映像データ合成部35a、映像データ符号化部36a)、又は音声データ処理部32の内部構成(音声データ処理部32、音声データ復号部34b、音声データ符号化部36b)を割り当てる割当候補を取得する。
The CPU / GPU processing allocation
図10〜図12は、CPU/GPU処理割当候補取得部が取得する割当候補(割当候補(1)、割当候補(1α)、割当候補(1β)、割当候補(2)、割当候補(2α)、割当候補(2β)、割当候補(3)、割当候補(3α)、割当候補(3β)、割当候補(4))を示す説明図である。図10〜図12では、映像データ処理部31及び、音声データ処理部32の内部構成単位で、処理を実行するCPU611、又はGPU612について示めされている。図10〜図12は、図6をベースに記載される。
10 to 12 show allocation candidates (allocation candidates (1), allocation candidates (1α), allocation candidates (1β), allocation candidates (2), allocation candidates (2α)) acquired by the CPU / GPU process allocation candidate acquisition unit. FIG. 11 is an explanatory diagram showing an allocation candidate (2β), an allocation candidate (3), an allocation candidate (3α), an allocation candidate (3β), and an allocation candidate (4)). 10 to 12, the
ここで、図10〜図12に示される割当候補は、第1の実施形態の割当候補(1)、割当候補(2)、割当候補(3)、割当候補(4)と、第3の実施形態において新たに追加される割当候補(1α)、割当候補(1β)、割当候補(2α)、割当候補(2β)、割当候補(3α)、割当候補(3β)である。 Here, the allocation candidates shown in FIGS. 10 to 12 are the allocation candidate (1), allocation candidate (2), allocation candidate (3), allocation candidate (4) of the first embodiment, and the third implementation. They are the allocation candidate (1α), the allocation candidate (1β), the allocation candidate (2α), the allocation candidate (2β), the allocation candidate (3α), and the allocation candidate (3β) that are newly added in the form.
割当候補(1α)は、割当候補(1)の音声データ処理部の合成部を、GPUからCPUに変更したものである。 The allocation candidate (1α) is obtained by changing the synthesis unit of the voice data processing unit of the allocation candidate (1) from the GPU to the CPU.
割当候補(1β)は、割当候補(1)の音声データ処理部の合成部と復号部を、GPUからCPUに変更したものである。 The allocation candidate (1β) is obtained by changing the synthesis unit and the decoding unit of the voice data processing unit of the allocation candidate (1) from the GPU to the CPU.
割当候補(2α)は、割当候補(2)の映像データ処理部の合成部を、GPUからCPUに変更したものである。 The allocation candidate (2α) is obtained by changing the composition unit of the video data processing unit of the allocation candidate (2) from the GPU to the CPU.
割当候補(2β)は、割当候補(2)の映像データ処理部の合成部と復号部を、GPUからCPUに変更したものである。 The allocation candidate (2β) is obtained by changing the combining unit and decoding unit of the video data processing unit of the allocation candidate (2) from the GPU to the CPU.
割当候補(3α)は、割当候補(3)の音声データ処理部の合成部を、GPUからCPUに変更したものである。 The allocation candidate (3α) is obtained by changing the synthesis unit of the voice data processing unit of the allocation candidate (3) from the GPU to the CPU.
割当候補(3β)は、割当候補(3)の音声データ処理部の合成部と復号部を、GPUからCPUに変更したものである。 The allocation candidate (3β) is obtained by changing the synthesis unit and the decoding unit of the voice data processing unit of the allocation candidate (3) from the GPU to the CPU.
なお、図10〜図12は一例であり、CPU/GPU処理割当候補取得部330は、これ以外にも様々なパターン(例えば、第2の実施形態における上述の割当候補(5)等)を取得しても良い。
10 to 12 are examples, and the CPU / GPU processing allocation
図8のステップS104の処理(割当候補の選択処理)は、次に示される処理となる。 The process of step S104 in FIG. 8 (assignment candidate selection process) is the following process.
その後、CPU/GPU処理割当部340は、上述のステップS104と同様に、図10〜図12で示される10個の割当候補から1個の割当候補を選択して、選択された割当候補に従って、CPU611、若しくはGPU612(又はその両方)に、映像データ処理部31の処理及び音声データ処理部32の処理を割り当てる。
Thereafter, the CPU / GPU
なお、図10〜図12の割当候補は、最もプロセッサの効率の良い割当候補から最もプロセッサの効率の悪い割当候補の順番に記載されている。そのため、CPU/GPU処理割当部340は、計算された処理量がGPU612のリソース残量以内の場合又はCPU611のリソース残量以内の場合、割当候補(1)、割当候補(1α)、割当候補(1β)、割当候補(2)、割当候補(2α)、割当候補(2β)、割当候補(3)、割当候補(3α)、割当候補(3β)、割当候補(4)の順に割当候補を検討することになる。
The assignment candidates in FIGS. 10 to 12 are described in the order of assignment candidates with the highest processor efficiency to assignment candidates with the lowest processor efficiency. Therefore, when the calculated processing amount is within the resource remaining amount of the
なお、CPU/GPU処理割当部340は、第2の実施形態における上述の割当候補(5)も含めて割当候補を検討する場合、割当候補(5)、割当候補(1)、割当候補(1α)、割当候補(1β)、割当候補(2)、割当候補(2α)、割当候補(2β)、割当候補(3)、割当候補(3α)、割当候補(3β)、割当候補(4)の順に、割当候補を検討することになる。ここで、割当候補を検討する際、割当候補(5)、割当候補(1)〜割当候補(4)の順とした理由は、第2の実施形態で述べたように、各プロセッサの特徴を考慮したためである。
Note that the CPU / GPU
(C−3)第3の実施形態の効果
第3の実施形態によれば、第1及び第2の実施形態に比べて、より詳細にCPU611とGPU612に処理負荷を分散できるようになる。
(C-3) Effect of Third Embodiment According to the third embodiment, the processing load can be distributed to the
(D)他の実施形態
上記各実施形態の説明においても、種々変形実施形態に言及したが、さらに、以下に例示するような変形実施形態も挙げることができる。
(D) Other Embodiments In the description of each of the above embodiments, various modified embodiments have been referred to. However, modified embodiments as exemplified below can also be cited.
上記第2、3の実施形態において、CPU/GPU処理割当部340は、映像データ合成部35a単位で、CPU611、又はGPU612に処理を割り当てていた。この変形例として、CPU/GPU処理割当部340は、例えば、合成映像のサイズを変更するリサイズ処理をGPU612に割り当て、リサイズ処理を除く映像合成処理をCPU611に割り当てる等のように、細分化された単位の処理をCPU611とGPU612に割り当てても良い。上記と同様に、他の構成(映像データ処理部31における映像データ復号部34a、映像データ符号化部36a、音声データ復号部34b、音声データ合成部35b、及び音声データ符号化部36b)についても、各構成部において細分化された単位の処理を、CPU611とGPU612に割り当てても良い。
In the second and third embodiments, the CPU / GPU
1…会議システム、10…会議サーバ、20…呼制御部、30…メディア処理部、31…映像データ処理部、32…音声データ処理部、33…データ受信処理部、34a(34a−1〜34a−4)…映像データ復号部、34b(34b−1〜34b−4)…音声データ復号部、35…映像データ合成部、35a…映像データ合成部、35b…音声データ合成部、36a(36a−1〜36a−4)…映像データ符号化部、36b(36b−1〜36b−4)…音声データ符号化部、37…データ送信処理部、40(40−1〜40−4)…会議端末、310…上限リソース情報取得部、320…使用リソース情報取得部、330…GPU処理割当候補取得部、340…GPU処理割当部、350…メディア機能制御部、611…CPU、612…CPU、613(613−1、613−2)…メモリ、614…インタフェース、615…記憶装置、700…メディア制御部、C…CPU現在使用率、Cmax…CPU上限使用率、G…GPU現在使用率、Gmax…GPU上限使用率。
DESCRIPTION OF
Claims (7)
第1処理部の実行前における実行前CPUリソース情報と、実行前GPUリソース情報とを確認するリソース情報確認手段と、
前記第1処理部の実行後における実行後CPUリソース情報と、実行後GPUリソース情報とを推定するリソース情報推定手段と、
前記実行前CPUリソース情報と、前記実行前GPUリソース情報と、前記実行後CPUリソース情報と、前記実行後GPUリソース情報とに基づいて、前記第1処理部の実行を、CPU及びGPUのうち少なくとも1つの処理装置に割り当てる割当手段と
を有することを特徴とする通信制御装置。 A communication control device connected to a plurality of communication devices and having at least one CPU and at least one GPU,
Resource information confirmation means for confirming pre-execution CPU resource information and pre-execution GPU resource information before execution of the first processing unit;
Resource information estimation means for estimating post-execution CPU resource information and post-execution GPU resource information after execution of the first processing unit;
Based on the pre-execution CPU resource information, the pre-execution GPU resource information, the post-execution CPU resource information, and the post-execution GPU resource information, execution of the first processing unit is performed by at least one of the CPU and the GPU. And a allocating means for allocating to one processing device.
複数の通信装置のうち少なくとも1つの通信装置から送信された、映像情報、音声情報、又は映像情報及び音声情報を復号する復号部と、
復号された情報を合成する合成部と、
合成された情報を符号化する符号化部と
を有すること特徴とする請求項1に記載する通信制御装置。 The first processing unit includes:
A decoding unit that decodes video information, audio information, or video information and audio information transmitted from at least one of the plurality of communication devices;
A combining unit that combines the decrypted information;
The communication control apparatus according to claim 1, further comprising: an encoding unit that encodes the synthesized information.
前記実行後GPUリソース情報に基づく値が所定の閾値を超えていない場合、前記第1処理部の実行を、優先的にGPUに割り当てる第1割当手段
を有することを特徴とする請求項1又は2に記載の通信制御装置。 The assigning means includes
3. A first allocation unit that preferentially allocates execution of the first processing unit to a GPU when a value based on the post-execution GPU resource information does not exceed a predetermined threshold. The communication control device according to 1.
前記合成部の実行を、優先的にCPUに割り当て、
前記復号部及び符号化部の実行を、優先的にGPUに割り当てる第2割当手段
を有することを特徴とする請求項2又は3に記載の通信制御装置。 The assigning means includes
Preferentially assign the execution of the synthesis unit to the CPU,
The communication control apparatus according to claim 2, further comprising: a second allocation unit that preferentially allocates execution of the decoding unit and the encoding unit to the GPU.
第1処理部の実行前における実行前CPUリソース情報と、実行前GPUリソース情報とを確認するリソース情報確認手段と、
前記第1処理部の実行後における実行後CPUリソース情報と、実行後GPUリソース情報とを推定するリソース情報推定手段と、
前記実行前CPUリソース情報と、前記実行前GPUリソース情報と、前記実行後CPUリソース情報と、前記実行後GPUリソース情報とに基づいて、前記第1処理部の実行を、CPU及びGPUのうち少なくとも1つの処理装置に割り当てる割当手段と
して機能させることを特徴とするプログラム。 A computer connected to a plurality of communication devices and having at least one CPU and at least one GPU,
Resource information confirmation means for confirming pre-execution CPU resource information and pre-execution GPU resource information before execution of the first processing unit;
Resource information estimation means for estimating post-execution CPU resource information and post-execution GPU resource information after execution of the first processing unit;
Based on the pre-execution CPU resource information, the pre-execution GPU resource information, the post-execution CPU resource information, and the post-execution GPU resource information, execution of the first processing unit is performed by at least one of the CPU and the GPU. A program which functions as an allocating means to be allocated to one processing device.
前記通信制御装置は、
第1処理部の実行前における実行前CPUリソース情報と、実行前GPUリソース情報とを確認するリソース情報確認ステップと、
前記第1処理部の実行後における実行後CPUリソース情報と、実行後GPUリソース情報とを推定するリソース情報推定ステップと、
前記実行前CPUリソース情報と、前記実行前GPUリソース情報と、前記実行後CPUリソース情報と、前記実行後GPUリソース情報とに基づいて、前記第1処理部の実行を、CPU及びGPUのうち少なくとも1つの処理装置に割り当てるアプリケーション割当ステップと
を有することを特徴とする通信制御方法。 A communication control method for a communication control device connected to a plurality of communication devices and having at least one CPU and at least one GPU,
The communication control device includes:
Resource information confirmation step for confirming pre-execution CPU resource information and pre-execution GPU resource information before execution of the first processing unit;
A resource information estimation step for estimating post-execution CPU resource information and post-execution GPU resource information after execution of the first processing unit;
Based on the pre-execution CPU resource information, the pre-execution GPU resource information, the post-execution CPU resource information, and the post-execution GPU resource information, execution of the first processing unit is performed by at least one of the CPU and the GPU. An application assignment step for assigning to one processing device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015192734A JP2017069744A (en) | 2015-09-30 | 2015-09-30 | Communication control device, program, recording medium, and communication control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015192734A JP2017069744A (en) | 2015-09-30 | 2015-09-30 | Communication control device, program, recording medium, and communication control method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017069744A true JP2017069744A (en) | 2017-04-06 |
Family
ID=58495259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015192734A Pending JP2017069744A (en) | 2015-09-30 | 2015-09-30 | Communication control device, program, recording medium, and communication control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017069744A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220161070A (en) * | 2021-05-28 | 2022-12-06 | 주식회사 엘지유플러스 | Container-based gpu resource sharing mtehod and apparatus in cloud environment |
KR102630705B1 (en) * | 2023-07-12 | 2024-01-29 | 주식회사 넥스톤 | Energy-saving network camera storage device and operation method of network camera storage device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011055234A (en) * | 2009-09-01 | 2011-03-17 | Ricoh Co Ltd | Electronic conference system, multi-point connection device, data communication method, program, and recording medium |
JP2014505913A (en) * | 2010-12-14 | 2014-03-06 | アマゾン テクノロジーズ インク | Load balancing between general purpose and graphics processors |
JP2014056425A (en) * | 2012-09-12 | 2014-03-27 | Nippon Telegr & Teleph Corp <Ntt> | Data management device, data management system, process allocation method, and process allocation program |
US20150189234A1 (en) * | 2013-12-26 | 2015-07-02 | OnCam, Inc. | Real time stream provisioning infrastructure |
-
2015
- 2015-09-30 JP JP2015192734A patent/JP2017069744A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011055234A (en) * | 2009-09-01 | 2011-03-17 | Ricoh Co Ltd | Electronic conference system, multi-point connection device, data communication method, program, and recording medium |
JP2014505913A (en) * | 2010-12-14 | 2014-03-06 | アマゾン テクノロジーズ インク | Load balancing between general purpose and graphics processors |
JP2014056425A (en) * | 2012-09-12 | 2014-03-27 | Nippon Telegr & Teleph Corp <Ntt> | Data management device, data management system, process allocation method, and process allocation program |
US20150189234A1 (en) * | 2013-12-26 | 2015-07-02 | OnCam, Inc. | Real time stream provisioning infrastructure |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220161070A (en) * | 2021-05-28 | 2022-12-06 | 주식회사 엘지유플러스 | Container-based gpu resource sharing mtehod and apparatus in cloud environment |
KR102574043B1 (en) * | 2021-05-28 | 2023-09-01 | 주식회사 엘지유플러스 | Container-based gpu resource sharing mtehod and apparatus in cloud environment |
KR102630705B1 (en) * | 2023-07-12 | 2024-01-29 | 주식회사 넥스톤 | Energy-saving network camera storage device and operation method of network camera storage device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102447906B (en) | Low-latency video decoding | |
JP5788995B2 (en) | Dynamic video switching | |
US8711154B2 (en) | System and method for parallel video processing in multicore devices | |
EP2909718B1 (en) | Media hardware resource allocation | |
US20120262531A1 (en) | Scalable Video Encoding in a Multi-View Camera System | |
US20130191485A1 (en) | Multi-party mesh conferencing with stream processing | |
JP6191886B2 (en) | Dynamic insertion of synchronous prediction video frames | |
CN111510743B (en) | Method, device, system, equipment and storage medium for scheduling transcoding resources | |
JP2017069744A (en) | Communication control device, program, recording medium, and communication control method | |
CN116567346A (en) | Video processing method, device, storage medium and computer equipment | |
WO2001037565A1 (en) | Method and apparatus for controlling moving picture synthesis | |
CN111385515A (en) | Video conference data transmission method and video conference data transmission system | |
US9118806B2 (en) | Device and method for multistream bandwidth control in videoconferencing | |
CN110784731B (en) | Data stream transcoding method, device, equipment and medium | |
US9338468B2 (en) | Latency aware priority based multi-channel decoding | |
CN113423011B (en) | Transcoding method for video file with any format | |
JP2001094980A (en) | Data processor | |
WO2016086371A1 (en) | Conference resource scheduling method and apparatus | |
WO2017173953A1 (en) | Server, conference terminal, and cloud conference processing method | |
US10616530B2 (en) | Multipoint video conference device and controlling method thereof | |
US20160352794A1 (en) | Scalable architecture for media mixing | |
CN114584786B (en) | Memory allocation method and system based on video decoding | |
CN110022479A (en) | A kind of H265 hardware encoding method and live streaming platform based on Nvidia Maxwell2 video card | |
US10951889B2 (en) | Image delivery device, image delivery program, and image delivery method | |
CN115665106A (en) | Code stream scheduling method, code stream synthesizing method and code stream scheduling system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180515 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190108 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20190806 |