Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7670167B2 - Resource management device and program - Google Patents
[go: Go Back, main page]

JP7670167B2 - Resource management device and program - Google Patents

Resource management device and program Download PDF

Info

Publication number
JP7670167B2
JP7670167B2 JP2023565768A JP2023565768A JP7670167B2 JP 7670167 B2 JP7670167 B2 JP 7670167B2 JP 2023565768 A JP2023565768 A JP 2023565768A JP 2023565768 A JP2023565768 A JP 2023565768A JP 7670167 B2 JP7670167 B2 JP 7670167B2
Authority
JP
Japan
Prior art keywords
load
quality
resource management
service
acquisition unit
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.)
Active
Application number
JP2023565768A
Other languages
Japanese (ja)
Other versions
JPWO2023105670A1 (en
Inventor
勇輝 有川
顕至 田仲
猛 伊藤
直樹 三浦
健 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2023105670A1 publication Critical patent/JPWO2023105670A1/ja
Application granted granted Critical
Publication of JP7670167B2 publication Critical patent/JP7670167B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、演算リソースを管理するリソース管理装置及びプログラムに関する。 The present invention relates to a resource management device and program for managing computational resources.

機械学習、人工知能(AI)、及び、IoT(Internet of Things)などの多くの分野で技術革新が進み、様々なデータを活用することで、サービスの高度化・付加価値の提供が盛んに行われている。このような処理では、大量の計算をする必要があり、そのための情報処理基盤が必須である。Technological innovation is progressing in many fields, including machine learning, artificial intelligence (AI), and the Internet of Things (IoT), and by utilizing various data, services are being actively improved and added value is being provided. This type of processing requires large amounts of calculations, and an information processing infrastructure is essential for this.

例えば、非特許文献1では、既存の情報処理基盤をアップデートしようとする試みが展開されてはいるものの、急速に増えていくデータに対して現代のコンピュータが対応しきれていない旨が指摘されている。また、非特許文献1では、今後さらなる進化を遂げていくためには、ムーアの法則を越える「ポストムーア技術」が確立されなければいけない旨が指摘されている。For example, Non-Patent Document 1 points out that, although attempts are being made to update existing information processing infrastructure, modern computers are unable to keep up with the rapid increase in data. Non-Patent Document 1 also points out that in order to achieve further evolution in the future, "post-Moore technology" that goes beyond Moore's Law must be established.

ポストムーア技術として、例えば、非特許文献2には、フローセントリックコンピューティングという技術が開示されている。フローセントリックコンピューティングにより、データのある場所で処理を行うというこれまでのコンピューティングの考えではなく、計算機能(演算リソース)が存在する場所にデータを移動して処理を行うという新たな概念が導入されている。As a post-Moore technology, for example, Non-Patent Document 2 discloses a technology called flow-centric computing. Flow-centric computing introduces a new concept of moving data to a location where a computing function (computing resource) is located and processing the data there, instead of the conventional computing idea of processing data where the data is located.

“NTT Technology Report for Smart World 2020,” 日本電信電話株式会社,2020年,https://www.rd.ntt/_assets/pdf/techreport/NTT_TRFSW_2020_EN_W.pdf“NTT Technology Report for Smart World 2020,” Nippon Telegraph and Telephone Corporation, 2020, https://www.rd.ntt/_assets/pdf/techreport/NTT_TRFSW_2020_EN_W.pdf R. Takano and T. Kudoh, “Flow-centric computing leveraged by photonic circuit switching for the post-moore era,” Tenth IEEE/ACM International Symposium on Networks-on-Chip (NOCS), Nara, 2016, pp. 1-3.R. Takano and T. Kudoh, “Flow-centric computing leveraged by photonic circuit switching for the post-moore era,” Tenth IEEE/ACM International Symposium on Networks-on-Chip (NOCS), Nara, 2016, pp. 1-3.

上記のようなフローセントリックコンピューティングを実現するためには、演算リソースをどのハードウェアにより構成するかを適切に管理する必要がある。例えば、管理が適切になされずに負荷の高い計算機のハードウェアにより演算リソースを構成すると、当該演算リソースでの処理に遅延が生じ得る。 To realize flow-centric computing as described above, it is necessary to properly manage which hardware constitutes the computing resources. For example, if the computing resources are constituted by the hardware of a computer with a high load without proper management, delays may occur in the processing of the computing resources.

本発明は、処理対象データを処理するサービスを分担して行う複数の演算リソースのハードウェア構成を適切に管理することを課題とする。 The objective of the present invention is to appropriately manage the hardware configuration of multiple computing resources that share the services of processing the data to be processed.

上記課題を解決するために、本発明のリソース管理装置は、複数の計算機からなる計算システムの一部のハードウェアを利用して構成され、処理対象データを処理するサービスを分担して行う複数の演算リソースのハードウェア構成を管理するリソース管理装置であって、前記サービスに要求される当該サービスの処理時間に関する品質を要求品質として取得する要求品質取得部と、第1ハードウェア構成の前記複数の演算リソースにより行われる前記サービスの前記計算システムの動作中の前記品質を見積もった結果を品質見積結果として取得する見積結果取得部と、前記品質見積結果が前記要求品質を満たさない場合に、前記複数の演算リソースのハードウェア構成を前記第1ハードウェア構成から前記第1ハードウェア構成とは異なる第2ハードウェア構成に前記計算システムの動作中に変更する構成制御部と、を備える。In order to solve the above problems, the resource management device of the present invention is configured using part of the hardware of a computing system consisting of multiple computers, and is a resource management device that manages the hardware configuration of multiple computing resources that share the service of processing data to be processed, and is equipped with a required quality acquisition unit that acquires the quality related to the processing time of the service required for the service as a required quality, an estimation result acquisition unit that acquires the result of estimating the quality of the service performed by the multiple computing resources of a first hardware configuration during operation of the computing system as a quality estimation result, and a configuration control unit that changes the hardware configuration of the multiple computing resources from the first hardware configuration to a second hardware configuration different from the first hardware configuration during operation of the computing system if the quality estimation result does not satisfy the required quality.

上記課題を解決するために、本発明のプログラムは、複数の計算機からなる計算システムの一部のハードウェアを利用して構成され、処理対象データを処理するサービスを分担して行う複数の演算リソースのハードウェア構成を管理するコンピュータに、前記サービスに要求される当該サービスの処理時間に関する品質を要求品質として取得する要求品質取得ステップと、第1ハードウェア構成の前記複数の演算リソースにより行われる前記サービスの前記計算システムの動作中の前記品質を見積もった結果を品質見積結果として取得する見積結果取得ステップと、前記品質見積結果が前記要求品質を満たさない場合に、前記複数の演算リソースのハードウェア構成を前記第1ハードウェア構成から前記第1ハードウェア構成とは異なる第2ハードウェア構成に前記計算システムの動作中に変更する構成制御ステップと、を実行させる。 In order to solve the above problem, the program of the present invention causes a computer that is configured using part of the hardware of a computing system consisting of multiple computers and manages the hardware configuration of multiple computing resources that share the service of processing the target data to execute the following steps: a required quality acquisition step of acquiring the quality related to the processing time of the service required for the service as a required quality; an estimation result acquisition step of acquiring, as a quality estimation result, a result of estimating the quality of the service performed by the multiple computing resources of a first hardware configuration while the computing system is operating; and a configuration control step of changing the hardware configuration of the multiple computing resources from the first hardware configuration to a second hardware configuration different from the first hardware configuration while the computing system is operating if the quality estimation result does not satisfy the required quality.

本発明によれば、処理対象データを処理するサービスを分担して行う複数の演算リソースのハードウェア構成が適切に管理される。 According to the present invention, the hardware configuration of multiple computing resources that share the service of processing the data to be processed is appropriately managed.

図1は、本発明の第1実施形態のリソース管理装置及び計算機の構成を示すハードウェア構成図である。FIG. 1 is a hardware configuration diagram showing the configuration of a resource management device and a computer according to a first embodiment of the present invention. 図2は、図1の計算機の構成を示すブロック図である。FIG. 2 is a block diagram showing the configuration of the computer shown in FIG. 図3は、図1のリソース管理装置の構成を示すブロック図である。FIG. 3 is a block diagram showing the configuration of the resource management device of FIG. 図4は、第1実施形態のリソース管理処理のフローチャートである。FIG. 4 is a flowchart of a resource management process according to the first embodiment. 図5は、第2実施形態のリソース管理装置の構成を示すブロック図である。FIG. 5 is a block diagram showing the configuration of a resource management device according to the second embodiment. 図6は、第3実施形態のリソース管理装置の構成を示すブロック図である。FIG. 6 is a block diagram showing the configuration of a resource management device according to the third embodiment. 図7は、第3実施形態のリソース管理処理のフローチャートである。FIG. 7 is a flowchart of a resource management process according to the third embodiment.

以下、本発明の実施の形態について図面を参照して説明する。以下の説明において同じ機能を有する要素、異なる機能を有するが互いに対応する要素などについては、適宜同じ符号を付して説明する。また、図面において、同じ機能を有するか互いに対応する複数の要素については、一部の要素にのみ符号を付している場合がある。 The following describes an embodiment of the present invention with reference to the drawings. In the following description, elements having the same function and elements having different functions but corresponding to each other are appropriately denoted by the same reference numerals. Also, in the drawings, for multiple elements having the same function or corresponding to each other, reference numerals may be denoted only for some of the elements.

[第1実施形態]
本実施形態に係るリソース管理装置10は、図1に示すように、計算システム20を構成する複数の計算機30-1~30-N(ただし、Nは2以上の自然数)のそれぞれとインターネット、ローカルエリアネットワーク(LAN)などのネットワークNWを介して通信可能に設けられている。リソース管理装置10は、計算システム20の一部のハードウェアである計算機30-1~30-Nの後述のアクセラレータ35を利用して構成され、処理対象データを処理するサービスを分担して行う複数の演算リソースRのハードウェア構成を管理する。より詳細には、リソース管理装置10は、各サービスについて、複数の演算リソースRをどのハードウェアにより実現するかを管理する。以下、計算機30-1~30-Nの構成を説明してから、リソース管理装置10の構成を説明する。計算機30-1~30-Nを総称して計算機30ともいう。
[First embodiment]
As shown in FIG. 1, the resource management device 10 according to the present embodiment is provided so as to be able to communicate with each of the multiple computers 30-1 to 30-N (where N is a natural number of 2 or more) constituting the computing system 20 via a network NW such as the Internet or a local area network (LAN). The resource management device 10 is configured using accelerators 35 (to be described later) of the computers 30-1 to 30-N, which are part of the hardware of the computing system 20, and manages the hardware configuration of multiple computing resources R that share and perform services to process data to be processed. More specifically, the resource management device 10 manages which hardware is used to realize the multiple computing resources R for each service. Below, the configuration of the computers 30-1 to 30-N will be described first, and then the configuration of the resource management device 10 will be described. The computers 30-1 to 30-N are also collectively referred to as computers 30.

計算機30-1~30-Nは、ネットワークNWを介して互いに通信可能であり、多数の演算リソースRを用い、計算システム20全体として、複数種類のサービスを行う。サービスには、画像処理などが含まれる。1つのサービスは、複数の処理を含み、複数の処理は、複数の演算リソースRにより分担して実行される。例えば、1つのサービスを行う複数の演算リソースRは、ネットワークNWなどに構成された仮想ネットワークを介して連結されており、処理対象データを直列及び又は並列に処理する。例えば、1つのサービスとして、計算機30-1の2つの演算リソースRによる並列処理により処理対象データとしての画像データが2値化され、その後、2値化後の画像データに対して計算機30-2の演算リソースRによる画像認識処理が行われ、処理結果が画像データの提供元(不図示)に返される。提供元は、サービスのユーザのクライアントコンピュータなどである。処理対象データ及び処理結果は、リソース管理装置10を介して提供元に送受信される。各サービスを構成する一連の処理は、例えば、リソース管理装置10の制御下で行われる。例えば、リソース管理装置10の記憶装置13には、サービスごとに複数の演算リソースRの各アドレスが格納されており、演算リソースRが出力する処理結果のデータの転送先は、リソース管理装置10により指定される。 The computers 30-1 to 30-N can communicate with each other via the network NW, and the computing system 20 as a whole performs multiple types of services using a large number of computing resources R. The services include image processing, etc. One service includes multiple processes, and the multiple processes are shared and executed by the multiple computing resources R. For example, multiple computing resources R performing one service are connected via a virtual network configured in the network NW, etc., and process the data to be processed in series and/or in parallel. For example, as one service, image data as the data to be processed is binarized by parallel processing by the two computing resources R of the computer 30-1, and then image recognition processing is performed on the binarized image data by the computing resource R of the computer 30-2, and the processing result is returned to the provider of the image data (not shown). The provider is a client computer of the user of the service, etc. The data to be processed and the processing result are transmitted and received to the provider via the resource management device 10. A series of processes constituting each service is performed, for example, under the control of the resource management device 10. For example, the storage device 13 of the resource management device 10 stores the addresses of a plurality of computing resources R for each service, and the resource management device 10 specifies the destination of the processing result data output by the computing resources R.

計算機30-1~30-Nのそれぞれは、実行可能な処理は異なるが、同様の構成を有する。以下、計算機30-1~30-Nを総称して計算機30ともいう。以下、各計算機30の構成を説明する。Each of the computers 30-1 to 30-N has a similar configuration, although the processes that it can execute are different. Hereinafter, the computers 30-1 to 30-N are collectively referred to as computers 30. The configuration of each computer 30 will be described below.

計算機30は、パーソナルコンピュータ、スマートフォン、タブレットなどのコンピュータである。計算機30は、プロセッサ31と、プロセッサ31のメインメモリ32と、プログラム及び各種データを記憶する不揮発性の記憶装置33と、ネットワークNWに接続されたNIC(Network Interface Card)34と、を備える。計算機30は、さらに、計算機30の機能を向上させるアクセラレータ35を備える。The computer 30 is a computer such as a personal computer, a smartphone, or a tablet. The computer 30 includes a processor 31, a main memory 32 of the processor 31, a non-volatile storage device 33 that stores programs and various data, and a network interface card (NIC) 34 connected to the network NW. The computer 30 further includes an accelerator 35 that improves the functions of the computer 30.

プロセッサ31は、CPU(Central Processing Unit)などからなり、記憶装置33に記憶されているプログラム及び各種データを実行又は使用して計算機30全体を制御する。メインメモリ32は、RAM(Random Access Memory)などからなる。プログラム及び各種データは、メインメモリ32に適宜読み出される。記憶装置33は、SSD(Solid State Drive)などからなる。NIC34は、プロセッサ31の制御のもとでネットワークNWに対してデータを送受信する。The processor 31 is composed of a CPU (Central Processing Unit) and the like, and executes or uses programs and various data stored in the storage device 33 to control the entire computer 30. The main memory 32 is composed of a RAM (Random Access Memory) and the like. The programs and various data are read into the main memory 32 as appropriate. The storage device 33 is composed of an SSD (Solid State Drive) and the like. The NIC 34 transmits and receives data to and from the network NW under the control of the processor 31.

アクセラレータ35は、FPGA(Field-Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、サブCPU、及び、GPU(Graphics Processing Unit)などのハードウェアにより構成されている。アクセラレータ35がFPGAの場合、プロセッサ31は、FPGAの再構成可能な領域の少なくとも一部に所定の演算回路を演算リソースRとして、計算機30の稼働中つまり動的に削除及び再構成可能である。ここでは、アクセラレータ35により、1又は複数の演算リソースRが構成される。例えば、アクセラレータ35がFPGAの場合、当該アクセラレータ35に演算リソースRとして動作する演算回路が構成されることにより、演算リソースRが構成される。FPGAの演算リソースRが構成された領域が、演算リソースを構成するハードウェアとなる。演算リソースRは、プロセッサ31により例えば仮想マシンとして構成されてもよい。演算リソースRは、GPUを論理的に複数に分割したハードウェアにより構成されてもよい。演算リソースRへのデータ入力、演算リソースRからの処理結果のデータの転送などは、例えばプロセッサ31により制御される。The accelerator 35 is composed of hardware such as a field-programmable gate array (FPGA), an application specific integrated circuit (ASIC), a sub-CPU, and a graphics processing unit (GPU). When the accelerator 35 is an FPGA, the processor 31 can dynamically delete and reconfigure a specific arithmetic circuit as an arithmetic resource R in at least a part of the reconfigurable area of the FPGA while the computer 30 is running. Here, one or more arithmetic resources R are configured by the accelerator 35. For example, when the accelerator 35 is an FPGA, the arithmetic circuit that operates as the arithmetic resource R is configured in the accelerator 35, thereby configuring the arithmetic resource R. The area in which the FPGA arithmetic resource R is configured becomes the hardware that configures the arithmetic resource. The arithmetic resource R may be configured by the processor 31 as, for example, a virtual machine. The arithmetic resource R may be configured by hardware in which a GPU is logically divided into multiple parts. Data input to the computing resource R, transfer of processed data from the computing resource R, etc. are controlled by a processor 31, for example.

プロセッサ31は、上記プログラムを実行することにより、図2に示す、負荷監視部31A、性能見積部31B、及び、リソース管理部31Cとして動作する。By executing the above program, the processor 31 operates as a load monitoring unit 31A, a performance estimation unit 31B, and a resource management unit 31C as shown in Figure 2.

負荷監視部31Aは、計算機30に対する負荷を監視する。負荷としては、計算機30に入力される単位時間当たりのデータ量、計算機30が単位時間あたりに処理するデータ量、計算機30が単位時間あたりに出力するデータ量、計算機30の演算リソースRの使用率などが挙げられる。また、負荷としては、処理過程において中間データを記憶したり、演算パラメータを記憶したりするための、メインメモリ32又はアクセラレータ35に設けられた記憶部などのメモリリソースの使用率も挙げられる。負荷は、これに限らず、例えば、入力データレートや、出力データレート、動画像処理であればフレームレートなどであってもよい。負荷は、計算機30による処理時間の遅延の有無及び遅延の度合いに影響を与える情報により構成される。The load monitoring unit 31A monitors the load on the computer 30. Examples of the load include the amount of data input to the computer 30 per unit time, the amount of data processed by the computer 30 per unit time, the amount of data output by the computer 30 per unit time, and the usage rate of the computational resource R of the computer 30. Examples of the load also include the usage rate of memory resources such as the main memory 32 or a memory unit provided in the accelerator 35 for storing intermediate data in the processing process or storing computational parameters. The load is not limited to this, and may be, for example, the input data rate, the output data rate, or the frame rate in the case of video processing. The load is composed of information that affects the presence or absence of a delay in processing time by the computer 30 and the degree of the delay.

性能見積部31Bは、1つのサービスの一部の処理を実行する1又は複数の演算リソースRを動作させたときの計算機30の処理時間に関する性能を見積もる。性能は、処理時間そのものであってもよいし、処理速度などの処理時間を増減させる量であってもよい。処理時間は、例えば、計算機30にデータが入力されてから、当該データを上記1又は複数の演算リソースRにより処理し、処理結果を計算機30の外部に出力するまでの時間である。記憶装置33には、演算リソースRの回路規模及び計算機30に対する負荷と、その演算リソースRを使用したときの計算機30の性能との関係を示す関係式又はテーブルが記憶されている。性能見積部32Bは、演算リソースRの回路規模及び負荷監視部31Aが監視している負荷に基づいて、前記の関係式又はテーブルを用いて前記の性能を見積もる。性能見積部32Bは、見積時、テストデータを計算機30に使用させて前記の処理時間などを計測し、計測した処理時間などを上記の性能として見積もってもよい。The performance estimation unit 31B estimates the performance of the processing time of the computer 30 when one or more computing resources R that execute a part of the processing of one service are operated. The performance may be the processing time itself, or may be an amount that increases or decreases the processing time, such as the processing speed. The processing time is, for example, the time from when data is input to the computer 30 to when the data is processed by the one or more computing resources R and the processing result is output to the outside of the computer 30. The storage device 33 stores a relational expression or table showing the relationship between the circuit scale of the computing resource R and the load on the computer 30, and the performance of the computer 30 when the computing resource R is used. The performance estimation unit 32B estimates the performance using the relational expression or table based on the circuit scale of the computing resource R and the load monitored by the load monitoring unit 31A. When estimating, the performance estimation unit 32B may have the computer 30 use test data to measure the processing time, etc., and estimate the measured processing time, etc. as the above-mentioned performance.

リソース管理部32Cは、後述のリソース管理装置10からの後述の指示に基づいて、アクセラレータ35に対して任意の演算リソースRを追加又は削除する。アクセラレータ35がFPGAの場合、リソース管理部32Cは、このFPGAに対して演算リソースRとして動作する演算回路を書き込む又は削除する。The resource management unit 32C adds or deletes any computation resource R to the accelerator 35 based on an instruction from the resource management device 10 described below. If the accelerator 35 is an FPGA, the resource management unit 32C writes or deletes a computation circuit that operates as the computation resource R to the FPGA.

図1に示すリソース管理装置10は、サーバコンピュータなどのコンピュータである。リソース管理装置10は、プロセッサ11と、プロセッサ11のメインメモリ12と、プログラム及び各種データを記憶する不揮発性の記憶装置13と、ネットワークNWに接続されたNIC14と、を備える。The resource management device 10 shown in Figure 1 is a computer such as a server computer. The resource management device 10 includes a processor 11, a main memory 12 for the processor 11, a non-volatile storage device 13 for storing programs and various data, and a NIC 14 connected to a network NW.

プロセッサ11は、CPUなどからなり、記憶装置13に記憶されているプログラム及び各種データを実行又は使用してリソース管理装置10全体を制御する。メインメモリ12は、RAMなどからなる。プログラム及び各種データは、メインメモリ12に適宜読み出される。記憶装置13は、SSDなどからなる。NIC14は、プロセッサ11の制御のもとでネットワークNWに対してデータを送受信する。The processor 11 is composed of a CPU etc., and executes or uses the programs and various data stored in the storage device 13 to control the entire resource management device 10. The main memory 12 is composed of a RAM etc. The programs and various data are read into the main memory 12 as appropriate. The storage device 13 is composed of an SSD etc. The NIC 14 transmits and receives data to the network NW under the control of the processor 11.

プロセッサ11は、上記プログラムを実行することで、図3に示す、要求品質取得部11A、見積結果取得部11B、構成制御部11C、負荷情報取得部11D、及び、入力データ制限部11Eとして動作する。これら各部11A~11Eは、協働して図4に示すリソース管理処理を行う。リソース管理処理は、サービスごとに定期的に行われる。リソース管理処理は、例えば、1つのサービスについて数分おきに実行される。リソース管理処理は、計算システム20の動作中に動的に実行される。つまり、リソース管理処理は、上記サービスの提供中に実行される。リソース管理装置10は、リソース管理処理を行うとき、複数の計算機30-1~30-Nに対して処理対象のサービスの実行停止を指示してもよい。By executing the above programs, the processor 11 operates as a required quality acquisition unit 11A, an estimate result acquisition unit 11B, a configuration control unit 11C, a load information acquisition unit 11D, and an input data restriction unit 11E, as shown in FIG. 3. These units 11A to 11E work together to perform the resource management processing shown in FIG. 4. The resource management processing is performed periodically for each service. The resource management processing is performed, for example, every few minutes for one service. The resource management processing is performed dynamically while the computing system 20 is operating. In other words, the resource management processing is performed while the above services are being provided. When performing the resource management processing, the resource management device 10 may instruct multiple computers 30-1 to 30-N to stop execution of the service to be processed.

以下、図3~図4を参照しながら、各部11A~11Eの動作について説明する。以下では、処理対象のサービスをサービスXという。また、サービスXを提供する複数の演算リソースRのそれぞれを演算リソースRXともいう。複数の演算リソースRXが構成されている複数の計算機30のそれぞれを計算機30Xともいう。リソース管理装置10の記憶装置13には、サービスXを行う複数の演算リソースRXの各アドレスが格納されているものとする。前記のアドレスにより、複数の演算リソースRXがそれぞれ設けられている計算機30Xも特定可能となっている。 The operation of each of the units 11A to 11E will be described below with reference to Figures 3 and 4. In the following, the service to be processed is referred to as service X. Each of the multiple computational resources R that provide service X is also referred to as computational resource RX. Each of the multiple computers 30 in which the multiple computational resources RX are configured is also referred to as computer 30X. The storage device 13 of the resource management device 10 stores the addresses of the multiple computational resources RX that perform service X. The addresses also make it possible to identify the computers 30X in which the multiple computational resources RX are each provided.

リソース管理処理では、まず、要求品質取得部11Aが、サービスXに要求される当該サービスXの処理時間に関する品質である要求品質を取得する(ステップS101)。要求品質は、予め設定されている閾値として機能するものであり、記憶装置13に各サービスに対応付けられて記録されているものとする。要求品質取得部11Aは、記憶装置13からサービスXに対応する要求品質を取得する。要求品質は、上記の性能の見積結果と比較されるものであり、性能と同じ次元を有する。性能が処理時間であれば、要求品質もそのサービスに要求される処理時間、例えば、処理時間として許容される上限時間となる。性能が処理速度であれば、要求品質も処理速度となる。In the resource management process, first, the requested quality acquisition unit 11A acquires the requested quality, which is the quality related to the processing time of service X that is required for service X (step S101). The requested quality functions as a preset threshold value, and is recorded in the storage device 13 in association with each service. The requested quality acquisition unit 11A acquires the requested quality corresponding to service X from the storage device 13. The requested quality is compared with the above performance estimation result, and has the same dimension as performance. If the performance is processing time, the requested quality is also the processing time required for the service, for example, the upper limit time allowed as processing time. If the performance is processing speed, the requested quality is also processing speed.

なお、性能及び品質は、処理時間を増減させる量として、入力データレートや、出力データレート、サービスXが動画像処理であれば処理時のフレームレートなどであってもよい。性能及び品質の内容は、各サービスの内容によって決定される。 Note that performance and quality may be amounts that increase or decrease processing time, such as input data rate, output data rate, or, if service X is video processing, frame rate during processing. The content of performance and quality is determined by the content of each service.

また、見積結果取得部11Bが、現在のハードウェア構成の複数の演算リソースRXにより行われるサービスXの品質を見積もった結果を品質見積結果として取得する(ステップS102)。見積結果取得部11Bは、複数の演算リソースRXが設けられた各計算機30XとNIC14、ネットワークNW、及びNIC34を介して通信し(以下、通信について同じ)、演算リソースRXを使用したときのその計算機30Xの性能の見積もりを指示する。計算機30Xの性能見積部31B(図2)は、前記の指示により見積もった見積結果を見積結果取得部11Bに送信する。見積結果取得部11Bは、計算機30Xそれぞれから送信されてきた見積結果に基づいてサービスXの品質を見積もり品質見積結果を取得する。見積結果となる性能が処理時間であれば、各計算機30Xからの見積結果を合算した処理時間が品質見積結果となる。見積結果となる性能が処理速度であれば、各計算機30Xからの見積結果の平均速度が品質見積結果となる。 The estimation result acquisition unit 11B also acquires the result of estimating the quality of service X performed by multiple computing resources RX of the current hardware configuration as a quality estimation result (step S102). The estimation result acquisition unit 11B communicates with each computer 30X provided with multiple computing resources RX via the NIC14, the network NW, and the NIC34 (hereinafter, the same applies to communication), and instructs the computer 30X to estimate the performance of the computer 30X when using the computing resources RX. The performance estimation unit 31B (FIG. 2) of the computer 30X transmits the estimation result estimated by the instruction to the estimation result acquisition unit 11B. The estimation result acquisition unit 11B estimates the quality of service X based on the estimation results transmitted from each computer 30X and acquires the quality estimation result. If the performance that is the estimation result is the processing time, the processing time obtained by adding up the estimation results from each computer 30X becomes the quality estimation result. If the performance that is the estimation result is the processing speed, the average speed of the estimation results from each computer 30X becomes the quality estimation result.

要求品質及び品質見積結果が取得されたあと(ステップS101及びS102のあと)は、構成制御部11Cが、取得された要求品質と品質見積結果とを比較し、品質見積結果が要求品質を満たすかを判別する(ステップS103)。要求品質及び品質見積結果が処理時間である場合、品質見積結果である処理時間が要求品質である処理時間以下であれば、品質見積結果が要求品質を満たすと判別される。両者が処理速度である場合、品質見積結果である処理速度が要求品質である処理速度以上であれば、品質見積結果が要求品質を満たすと判別される。After the required quality and the quality estimation result are acquired (after steps S101 and S102), the configuration control unit 11C compares the acquired required quality with the quality estimation result and determines whether the quality estimation result satisfies the required quality (step S103). If the required quality and the quality estimation result are processing times, if the processing time of the quality estimation result is less than or equal to the processing time of the required quality, it is determined that the quality estimation result satisfies the required quality. If both are processing speeds, if the processing speed of the quality estimation result is greater than or equal to the processing speed of the required quality, it is determined that the quality estimation result satisfies the required quality.

処理対象のサービスの品質が要求品質を満たす場合(ステップS103;Yes)、演算リソースRXのハードウェア構成を変更する必要が図4のリソース管理処理は終了する。 If the quality of the service to be processed meets the required quality (step S103; Yes), there is no need to change the hardware configuration of the computational resource RX, and the resource management process in Figure 4 is terminated.

処理対象のサービスの品質が要求品質を満たさない場合(ステップS103;No)、複数の演算リソースRXのハードウェア構成を変更する必要がある。このときは、負荷情報取得部11Dが、計算システム20の計算機30-1~30-Nのそれぞれに対する負荷を示す負荷情報を取得する(ステップS104)。負荷情報取得部11Dは、計算機30-1~30-Nと通信して、これらに対して現在の負荷を要求する。計算機30-1~30-Nでは、負荷監視部31Aが前記負荷の要求に応答して、監視している負荷を負荷情報取得部11Dに返信する。このようにして、負荷情報取得部11Dは、計算機30-1~30-Nのそれぞれに対する負荷を負荷情報として取得する。 If the quality of the service to be processed does not satisfy the required quality (step S103; No), it is necessary to change the hardware configuration of the multiple computing resources RX. In this case, the load information acquisition unit 11D acquires load information indicating the load on each of the computers 30-1 to 30-N of the computing system 20 (step S104). The load information acquisition unit 11D communicates with the computers 30-1 to 30-N and requests their current loads. In response to the load request, the load monitoring unit 31A in the computers 30-1 to 30-N returns the load being monitored to the load information acquisition unit 11D. In this way, the load information acquisition unit 11D acquires the load on each of the computers 30-1 to 30-N as load information.

負荷情報の取得後、構成制御部11Cが、取得された負荷情報に基づいて、複数の演算リソースRXのハードウェア構成を見積結果取得時のハードウェア構成からこのハードウェア構成とは異なる第2のハードウェア構成に動的に変更する(ステップS105)。After acquiring the load information, the configuration control unit 11C dynamically changes the hardware configuration of multiple computational resources RX from the hardware configuration at the time the estimate result was acquired to a second hardware configuration different from this hardware configuration based on the acquired load information (step S105).

構成制御部11Cは、ステップS105において、例えば、複数の演算リソースRXのうちの少なくとも1つを構成するハードウェアを計算機30-1~30-Nのうちの前記負荷の大きな計算機30Xのハードウェアから前記負荷の小さな1以上の計算機30のハードウェアに変更する。In step S105, the configuration control unit 11C changes, for example, the hardware constituting at least one of the multiple computational resources RX from the hardware of the computer 30X having a high load among the computers 30-1 to 30-N to the hardware of one or more computers 30 having a low load.

一例として、前記ハードウェアがFPGAの場合、構成制御部11Cは、前記の負荷が第1基準よりも高い第1の計算機30Xのアクセラレータ35に書き込まれた演算リソースRXを削除する。他方、構成制御部11Cは、前記の負荷が第2基準よりも低い第2の計算機30のアクセラレータ35に前記で削除した演算リソースRXと同じ回路構成の演算リソースRを書き込む。なお、演算リソースRは、複数の第2の計算機30に分割して書き込まれてもよい。当該削除及び書込みは、構成制御部11Cが第1及び第2の各計算機30と通信して、リソース管理部32Cにより行わせる。書き込み及び削除後は、記憶装置33に記憶されている当該演算リソースRXのアドレスも変更する。また、負荷の低い計算機30に負荷の高い計算機30Xに設けれた演算リソースRXと同じ演算リソースRが構成されている場合、両演算リソースの入れ替え、例えば、記憶装置33に記憶されている当該演算リソースRXのアドレスの負荷の低い計算機30の演算リソースRへの書き換えによりハードウェア構成が変更されてもよい。ハードウェア構成の変更は、新たな演算リソースRXの追加を含んでもよい。このような追加は、構成制御部11Cが、処理性能を向上させるため、演算リソースRXの回路規模を大きくし、回路構成の並列度を上げることを含む。構成制御部11Cは、回路規模を大きくする場合、アクセラレータ35において必要な領域の確保を試みる。As an example, when the hardware is an FPGA, the configuration control unit 11C deletes the computation resource RX written to the accelerator 35 of the first computer 30X, whose load is higher than the first standard. On the other hand, the configuration control unit 11C writes a computation resource R having the same circuit configuration as the deleted computation resource RX to the accelerator 35 of the second computer 30, whose load is lower than the second standard. The computation resource R may be divided and written to multiple second computers 30. The configuration control unit 11C communicates with each of the first and second computers 30 and causes the resource management unit 32C to perform the deletion and writing. After the writing and deletion, the address of the computation resource RX stored in the storage device 33 is also changed. Furthermore, when the computing resource R that is the same as the computing resource RX provided in the computer 30X with a high load is configured in the computer 30 with a low load, the hardware configuration may be changed by switching the computing resources, for example, by rewriting the address of the computing resource RX stored in the storage device 33 to the computing resource R of the computer 30 with a low load. The change in the hardware configuration may include the addition of a new computing resource RX. Such an addition includes the configuration control unit 11C increasing the circuit scale of the computing resource RX and increasing the parallelism of the circuit configuration in order to improve the processing performance. When increasing the circuit scale, the configuration control unit 11C attempts to secure a necessary area in the accelerator 35.

構成制御部11Cは、品質見積結果及び負荷情報を参照しながら、サービスXの品質要求を満足できるように、演算リソースRXのハードウェア構成を変更するとよい。構成制御部11Cは、演算リソースRXのハードウェア構成について最適化問題を解くアルゴリズムなど、任意のアルゴリズムでハードウェア構成を変更してもよい。The configuration control unit 11C may change the hardware configuration of the computation resource RX while referring to the quality estimation results and the load information so as to satisfy the quality requirements of service X. The configuration control unit 11C may change the hardware configuration using any algorithm, such as an algorithm that solves an optimization problem regarding the hardware configuration of the computation resource RX.

構成制御部11Cが、負荷情報を用いずに、複数の演算リソースRXのハードウェア構成を動的に変更してもよい。例えば、リソース管理装置10の記憶装置13には、複数の演算リソースRXの各アドレスの複数の組み合わせが格納されているものとする。構成制御部11Cは、前記複数の組み合わせのいずれかをサービスXに使用しており、前記ハードウェア構成の変更時には、サービスXに使用する複数の演算リソースRXの各アドレスの組み合わせを変更してもよい。The configuration control unit 11C may dynamically change the hardware configuration of the multiple computational resources RX without using load information. For example, the storage device 13 of the resource management device 10 stores multiple combinations of addresses of the multiple computational resources RX. The configuration control unit 11C uses one of the multiple combinations for service X, and may change the combination of addresses of the multiple computational resources RX used for service X when changing the hardware configuration.

ステップS105のあとは、入力データ制限部11Eが、負荷情報を参照しながら、負荷が所定基準よりも大きい計算機30への処理対象データの入力量を制限する(ステップS106)。当該制御は、処理対象データの単位時間当たりの入力量を減らすほか、当該処理対象データの他の計算機30への振り替えも含む。この処理は、特に、計算システム20全体に対する負荷が大きいときや、上記ハードウェア構成の変更によってもサービスXの品質が改善されないときに有効である。入力データ制限部11Eは、品質見積結果をさらに参照して上記制御を行ってもよい。After step S105, the input data limiting unit 11E, while referring to the load information, limits the amount of data to be processed input to the computer 30 whose load is greater than a predetermined standard (step S106). This control includes reducing the amount of data to be processed input per unit time, as well as transferring the data to be processed to another computer 30. This process is particularly effective when the load on the entire computing system 20 is large, or when the quality of service X does not improve even after changing the hardware configuration. The input data limiting unit 11E may also perform the above control by further referring to the quality estimation result.

以上説明したように、この実施形態では、あるサービスについて、上記品質見積結果が上記要求品質を満たさない場合に、このサービスを分担して処理する複数の演算リソースRのハードウェア構成が上記品質見積結果の取得時の第1ハードウェア構成から前記第1ハードウェア構成とは異なる第2ハードウェア構成に計算システム20の動作中に変更する制御が行われる。上記品質見積結果は、演算リソースが設けられた計算機の負荷の影響を受けるので、本実施形態によれば、時々刻々と変化する計算機30に対する負荷に追従しながら、演算リソースRのハードウェア構成が変更される。従って、計算機30の負荷が高い場合においても提供中のサービスの品質低下を軽減でき、複数の演算リソースRのハードウェア構成が適切に管理される。前記制御を行わない場合、サービスの品質要求のため、演算リソースRを過剰に配置する必要があり、電力効率及び計算機30の利用効率が悪化する。本実施形態では、各サービスの品質を良好なものに保ったまま、電力効率及び計算機の使用率を最適な状態に保てる効果がある。また、本実施形態では、演算リソースを追加できるため、電力効率や計算機の使用率を最適な状態に保ちつつ、各サービスの品質要求を満足できる効果がある。As described above, in this embodiment, when the quality estimation result for a certain service does not satisfy the required quality, the hardware configuration of the multiple computing resources R that share and process this service is changed from the first hardware configuration at the time of obtaining the quality estimation result to a second hardware configuration different from the first hardware configuration during the operation of the computing system 20. Since the quality estimation result is affected by the load of the computer to which the computing resource is provided, according to this embodiment, the hardware configuration of the computing resource R is changed while following the load on the computer 30 that changes from moment to moment. Therefore, even when the load on the computer 30 is high, the deterioration of the quality of the service being provided can be reduced, and the hardware configuration of the multiple computing resources R is appropriately managed. If the above control is not performed, it is necessary to excessively allocate the computing resource R due to the quality requirements of the service, and the power efficiency and the utilization efficiency of the computer 30 will deteriorate. In this embodiment, there is an effect that the power efficiency and the utilization rate of the computer can be kept at an optimal state while maintaining the quality of each service at a good level. In addition, since the computing resource can be added in this embodiment, there is an effect that the quality requirements of each service can be satisfied while maintaining the power efficiency and the utilization rate of the computer at an optimal state.

さらに本実施形態では、計算機30-1~30-2のそれぞれに対する負荷を示す負荷情報に基づいて、上記複数の演算リソースRのうちの少なくとも1つを構成するハードウェアが、計算機30-1~30-Nのうちの前記負荷の大きな計算機30のハードウェアから前記負荷の小さな計算機30のハードウェアに変更される。これにより、上記複数の演算リソースRのハードウェア構成を前記第1ハードウェア構成から前記第2ハードウェア構成に変更する。このようにすることで、計算機30に対する負荷によるサービスの品質低下を低減でき、複数の演算リソースRのハードウェア構成が適切に管理される。 Furthermore, in this embodiment, based on load information indicating the load on each of computers 30-1 to 30-2, the hardware constituting at least one of the multiple computational resources R is changed from the hardware of the computer 30 with the larger load among computers 30-1 to 30-N to the hardware of the computer 30 with the smaller load. This changes the hardware configuration of the multiple computational resources R from the first hardware configuration to the second hardware configuration. In this way, it is possible to reduce the degradation of service quality due to the load on computer 30, and the hardware configuration of the multiple computational resources R is appropriately managed.

さらに、本実施形態では、負荷情報に基づいて、計算機30-1~30-Nのうち負荷が所定基準よりも大きい計算機への入力データのデータ量を制限する。これにより、計算機30に対する負荷によるサービスの品質低下を抑制できる。 Furthermore, in this embodiment, the amount of input data to a computer among computers 30-1 to 30-N whose load is greater than a predetermined standard is limited based on the load information. This makes it possible to suppress degradation of service quality due to the load on computer 30.

なお、見積結果取得部11Bは、ステップS102において性能の見積りを計算機30に対して指示する際、性能見積りを行う条件を指定してもよい。例えば、見積結果取得部11Bは、上記ハードウェア構成により演算リソースRを増加または削減した場合の計算機30の性能を見積もるために、演算リソースRの増加量及び削減量を見積時のパラメータとして指定してもよい。同様に、入力データ量が増加または減少した場合の処理性能を見積もるために、入力データの増加量及び減少量を見積時のパラメータとして指定してもよい。これら見積結果に基づく品質見積結果は、ステップS106などで使用されてもよい。 When instructing the computer 30 to estimate performance in step S102, the estimation result acquisition unit 11B may specify conditions for the performance estimation. For example, in order to estimate the performance of the computer 30 when the computational resource R is increased or decreased by the above hardware configuration, the estimation result acquisition unit 11B may specify the increase and decrease amounts of the computational resource R as parameters for the estimation. Similarly, in order to estimate the processing performance when the amount of input data increases or decreases, the increase and decrease amounts of the input data may be specified as parameters for the estimation. The quality estimation results based on these estimation results may be used in step S106, etc.

[第2実施形態]
本実施形態に係るリソース管理装置110の構成を図5に示す。図5の見積結果取得部11Bは、計算機30―1~30-Nのうち、1つのサービス(例えば、サービスX)を分担して実行する複数の演算リソースR(例えば、複数の演算リソースRX)が構成された1以上の計算機30(1以上の計算機30X)それぞれの、複数の演算リソースRのうちのその計算機に構成された1以上の演算リソースRを使用したときの処理時間に関する性能を見積もった性能見積結果を取得する。この性能見積結果は、例えば、第1実施形態で見積結果取得部11Bにより取得される各計算機30の性能の見積結果であればよい。見積結果取得部11Bは、取得した性能見積結果に1以上の変動量を加味した値に基づいてサービスの計算システム20の動作中の前記品質を見積もる。1以上の変動量には、例えば、予め定められた第1変動量と、過去の前記負荷情報が示す前記負荷の傾向に応じた第2変動量とのうち、少なくとも前者が含まれればよい。
[Second embodiment]
The configuration of the resource management device 110 according to this embodiment is shown in FIG. 5. The estimate result acquisition unit 11B in FIG. 5 acquires a performance estimation result that estimates the performance of the processing time when using one or more computing resources R configured on one or more computing resources R of one or more computers 30 (one or more computers 30X) configured with multiple computing resources R (e.g., multiple computing resources RX) that share and execute one service (e.g., service X) among the computers 30-1 to 30-N. This performance estimation result may be, for example, an estimation result of the performance of each computer 30 acquired by the estimate result acquisition unit 11B in the first embodiment. The estimate result acquisition unit 11B estimates the quality during operation of the computing system 20 of the service based on a value obtained by adding one or more fluctuation amounts to the acquired performance estimation result. The one or more fluctuation amounts may include, for example, at least the former of a predetermined first fluctuation amount and a second fluctuation amount according to the trend of the load indicated by the past load information.

見積結果取得部11Bは、例えば、性能見積結果の値に対して、第1変動量として、当該値の5%を加算又は減算する。当該5%は、固定値として設定されている。なお、第1変動量は、5%以外の値であってもよい。また、見積結果取得部11Bは、負荷情報取得部11Dからの負荷情報が示す負荷を計算機30ごとに記憶装置33に順次記録する。見積結果取得部11Bは、性能見積結果の対象となっている計算機30についての過去の負荷を記憶装置33から読み出し、当該過去の負荷の傾向、例えば、現在から過去の所定のタイミングまでの期間における負荷の平均値又は現在と同じ時間帯の負荷に基づく第2変動量を導出する。例えば、前記平均値又は負荷が所定の閾値以上であれば、第2変動量として5%の加算を導出する。見積結果取得部11Bは、性能見積結果の値に対して、さらに第2変動量を加味した値(例えば、第1変動量が加味された値に、当該値の5%の値を加算した値)を上記品質見積結果として算出する。見積結果取得部11Bは、第2変動量を、ニューラルネットワークのモデルを利用して算出してもよいし、統計データをベースにした機械学習モデルによって算出してもよい。The estimation result acquisition unit 11B, for example, adds or subtracts 5% of the value of the performance estimation result as the first variation amount to the value of the performance estimation result. The 5% is set as a fixed value. The first variation amount may be a value other than 5%. The estimation result acquisition unit 11B also sequentially records the load indicated by the load information from the load information acquisition unit 11D in the storage device 33 for each computer 30. The estimation result acquisition unit 11B reads out the past load for the computer 30 that is the target of the performance estimation result from the storage device 33, and derives a second variation amount based on the trend of the past load, for example, the average value of the load in the period from the present to a predetermined timing in the past or the load in the same time period as the present. For example, if the average value or load is equal to or greater than a predetermined threshold, an addition of 5% is derived as the second variation amount. The estimation result acquisition unit 11B calculates a value that further takes into account the second variation amount (for example, a value obtained by adding 5% of the value to the value taking into account the first variation amount) as the quality estimation result. The estimate result acquisition unit 11B may calculate the second fluctuation amount by using a neural network model, or may calculate it by a machine learning model based on statistical data.

入力データ制限部11Eは、負荷情報に対して上記1以上の変動量を加味した値を新たな負荷情報とし、当該負荷情報が示す負荷が所定基準よりも大きい計算機30への処理対象データの入力量を制限してもよい。The input data limiting unit 11E may set the load information to a value taking into account one or more of the above fluctuations as new load information, and limit the amount of data to be processed that is input to a computer 30 where the load indicated by the load information is greater than a specified standard.

その他の構成については、第1実施形態に準じるので、その説明を省略する。 The rest of the configuration is the same as in the first embodiment, so its description will be omitted.

本実施形態によれば、品質見積結果及び負荷情報について所定の変動量が加味されているので、時々刻々と変化する計算機30に対する負荷に対して予め想定し得る範囲で演算リソースRを確保しておくことが可能となる。これにより、計算機30に対する負荷が変動しても、サービスの品質低下を低減でき、複数の演算リソースRのハードウェア構成が適切に管理される。また、予め想定し得る範囲で演算リソースRを確保する際に、物理的に異なる演算リソースRを配置することで、演算リソースRの故障に対する冗長化も実現される。According to this embodiment, a predetermined amount of fluctuation is taken into account in the quality estimation result and the load information, so that it is possible to secure computing resources R within a range that can be predicted in advance for the load on the computer 30, which changes from moment to moment. As a result, even if the load on the computer 30 fluctuates, degradation in the quality of the service can be reduced, and the hardware configuration of multiple computing resources R is appropriately managed. In addition, when securing computing resources R within a range that can be predicted in advance, redundancy against failure of computing resources R is also achieved by arranging physically different computing resources R.

[第3実施形態]
本実施形態に係るリソース管理装置210の構成を図6に示す。リソース管理装置210は、リソース管理装置10が備える各部11A~11Eに加え、優先制御部211Gを備える。優先制御部211Gは、プロセッサ11がまた、負荷情報取得部11Dは、計算機30-1~30-Nそれぞれに対する負荷の他、計算システム20全体に対する全体負荷を示す全体負荷情報も計算システム20から取得する。負荷情報取得部11Dは、全体負荷を、計算機30-1~30-Nそれぞれに対する負荷に基づいて算出してもよい。
[Third embodiment]
6 shows the configuration of a resource management device 210 according to this embodiment. The resource management device 210 includes a priority control unit 211G in addition to the units 11A to 11E included in the resource management device 10. The priority control unit 211G is a unit that the processor 11 controls to control the load information acquisition unit 11D, which acquires from the computing system 20 not only the load on each of the computers 30-1 to 30-N, but also total load information indicating the total load on the entire computing system 20. The load information acquisition unit 11D may calculate the total load based on the load on each of the computers 30-1 to 30-N.

リソース管理装置210の各部11A~11E及び211Gは、協働して図7に示すリソース管理処理を定期的に実行する。以下、当該リソース管理処理について図6及び図7を参照して説明する。なお、計算システム20は、複数のサービスを提供可能であるが、当該複数のサービスには、実行タイミングが競合した場合にどのサービスを優先して実行するかを特定する優先順位が設定されているものとする。Each unit 11A to 11E and 211G of the resource management device 210 cooperates to periodically execute the resource management process shown in Fig. 7. The resource management process will be described below with reference to Figs. 6 and 7. Note that the computing system 20 is capable of providing multiple services, and it is assumed that the multiple services are assigned priorities that specify which service is to be executed first in the event of a conflict in execution timing.

本実施形態に係るリソース管理処理では、まず、優先制御部211Gが負荷情報取得部11Dから全体負荷情報を取得する(ステップS301)。その後、優先制御部211Gは、全体負荷情報が示す計算システム20に対する全体負荷が所定の閾値より高いかを判定する(ステップS302)。全体負荷が所定の閾値より高くない場合(ステップS302;No)、リソース管理処理は終了する。全体負荷が所定の閾値より高い場合(ステップS302;Yes)、計算システム20のサービス提供に遅延が生じている可能性がある。この場合、優先制御部211Gは、ステップS303の処理を実行する。ステップS303は、複数回実行されることがある。優先制御部211Gは、Pを自然数としたときのP回目のステップS303において、優先順位がP番目のサービスを選択する。その後、P番目のサービスを処理対象のサービスとして、ステップS102~ステップS106が実行される。これら処理についての説明は、第1実施形態に準じる。但し、ステップS103の判別結果が肯定だった場合、再度ステップS303の処理が実行される。ステップS303の処理回数Pが計算システム20により提供可能なサービスの数に達した場合、再度ステップS301の処理が行われてもよい。また、ステップS106の処理のあともステップS301の処理が行われてもよい。In the resource management process according to this embodiment, first, the priority control unit 211G acquires total load information from the load information acquisition unit 11D (step S301). After that, the priority control unit 211G determines whether the total load on the computing system 20 indicated by the total load information is higher than a predetermined threshold (step S302). If the total load is not higher than the predetermined threshold (step S302; No), the resource management process ends. If the total load is higher than the predetermined threshold (step S302; Yes), there is a possibility that a delay has occurred in the provision of services by the computing system 20. In this case, the priority control unit 211G executes the process of step S303. Step S303 may be executed multiple times. In the Pth step S303, where P is a natural number, the priority control unit 211G selects the service with the Pth priority. After that, steps S102 to S106 are executed with the Pth service as the service to be processed. The explanation of these processes conforms to that of the first embodiment. However, if the determination result of step S103 is positive, the process of step S303 is executed again. If the number of times P of the process of step S303 reaches the number of services that can be provided by the computing system 20, the process of step S301 may be executed again. In addition, the process of step S301 may be executed after the process of step S106.

本実施形態では、第1実施形態などと同様、計算システム20には、当該計算システム20が提供する複数のサービスそれぞれについて前記複数の演算リソースが構成されている。本実施形態のリソース管理装置210は、計算システム20全体に対する全体負荷を示す負荷情報を取得する負荷情報取得部11Dと、前記負荷情報が示す全体負荷が予め定められた閾値を超えた場合、前記複数のサービスのうちどのサービスを優先して、前記要求品質取得部と前記見積結果取得部と前記構成制御部とによる処理(ステップS101~S106)の対象とするかを決定する優先制御部211Gと、を備える。優先制御部211Gは、前記複数のサービスが競合したときの処理実行の優先順位に基づいて、前記どのサービスを優先して前記処理の対象とするかを決定する。In this embodiment, similar to the first embodiment, the computing system 20 is configured with the multiple computing resources for each of the multiple services provided by the computing system 20. The resource management device 210 of this embodiment includes a load information acquisition unit 11D that acquires load information indicating the overall load on the entire computing system 20, and a priority control unit 211G that determines which of the multiple services should be prioritized as the target of processing (steps S101 to S106) by the required quality acquisition unit, the estimate result acquisition unit, and the configuration control unit when the overall load indicated by the load information exceeds a predetermined threshold. The priority control unit 211G determines which of the services should be prioritized as the target of the processing based on the priority order of processing execution when the multiple services compete.

優先制御部211Gは、前記の優先順位に代えて又は加えて、各サービスにおける前記品質見積結果と前記要求品質との乖離度合いに基づいて、前記どのサービスを優先して前記処理の対象とするかを決定してもよい。例えば、優先制御部211Gは、ステップS101及びS102で取得された要求品質と品質見積結果との差をサービスごとに記憶装置33に蓄積しておき、当該差が大きいほど優先順位が上位のサービスとして前記処理の対象とする。優先制御部211Gは、例えば、ステップS303などで、各サービスについて、優先順位に前記差に応じた重みを加味し、加味後の値が小さいほどサービスの優先順位を高く設定してもよい。Instead of or in addition to the priority order, the priority control unit 211G may determine which service should be prioritized for the processing based on the degree of deviation between the quality estimation result and the required quality for each service. For example, the priority control unit 211G accumulates the difference between the required quality and the quality estimation result acquired in steps S101 and S102 for each service in the storage device 33, and the larger the difference, the higher the priority of the service to be processed. The priority control unit 211G may add a weight corresponding to the difference to the priority order for each service in step S303, for example, and set the priority order of the service to be higher the smaller the value after the weighting.

本実施形態によれば、計算システム20全体の負荷が所定の閾値を超えた場合に、優先順位の高いサービスについて優先的に、第1実施形態の演算リソースのハードウェア構成の制御を行う。従って、システム全体の負荷が高い場合においても、優先度の高いサービスに対して、演算リソースRのハードウェア構成を制御できるため、優先度の高いサービスについて品質の低下が低減される。According to this embodiment, when the load on the entire computing system 20 exceeds a predetermined threshold, the hardware configuration of the computing resources of the first embodiment is controlled preferentially for services with high priority. Therefore, even when the load on the entire system is high, the hardware configuration of the computing resources R can be controlled for services with high priority, thereby reducing degradation in quality for services with high priority.

[本発明の範囲]
本発明は、上記の実施の形態及び変形例に限定されるものではない。例えば、本発明には、本発明の技術思想の範囲内で当業者が理解し得る、上記の実施の形態及び変形例に対する様々な変更が含まれる。上記実施の形態及び変形例に挙げた各構成は、矛盾の無い範囲で適宜組み合わせることができる。また、上記の各構成のうちの任意の構成を削除することも可能である。上記各種のプログラムは、不揮発性の記憶装置33に限らず、非一時的なコンピュータ読み取り可能な記憶媒体に記憶されてもよい。
[Scope of the present invention]
The present invention is not limited to the above-mentioned embodiment and modified examples. For example, the present invention includes various modifications to the above-mentioned embodiment and modified examples that can be understood by a person skilled in the art within the scope of the technical idea of the present invention. The configurations listed in the above-mentioned embodiment and modified examples can be appropriately combined within a range without contradiction. In addition, it is also possible to delete any of the above-mentioned configurations. The above-mentioned various programs may be stored in a non-transient computer-readable storage medium, not limited to the non-volatile storage device 33.

10…リソース管理装置、11…プロセッサ、11A…要求品質取得部、11B…見積結果取得部、11C…構成制御部、11D…負荷情報取得部、11E…入力データ制限部、12…メインメモリ、13…記憶装置、20…計算システム、30,30-1~30-N…計算機、31…プロセッサ、31A…負荷監視部、31B…性能見積部、31C…リソース管理部、32…メインメモリ、32B…性能見積部、32C…リソース管理部、33…記憶装置、35…アクセラレータ、110…リソース管理装置、210…リソース管理装置、211G…優先制御部、R…演算リソース。 10...resource management device, 11...processor, 11A...required quality acquisition unit, 11B...estimate result acquisition unit, 11C...configuration control unit, 11D...load information acquisition unit, 11E...input data restriction unit, 12...main memory, 13...storage device, 20...computing system, 30, 30-1 to 30-N...computers, 31...processor, 31A...load monitoring unit, 31B...performance estimation unit, 31C...resource management unit, 32...main memory, 32B...performance estimation unit, 32C...resource management unit, 33...storage device, 35...accelerator, 110...resource management device, 210...resource management device, 211G...priority control unit, R...computational resource.

Claims (7)

複数の計算機からなる計算システムの一部のハードウェアを利用して構成され、処理対象データを処理するサービスを分担して行う複数の演算リソースのハードウェア構成を管理するリソース管理装置であって、
前記サービスに要求される当該サービスの処理時間に関する品質を要求品質として取得する要求品質取得部と、
第1ハードウェア構成の前記複数の演算リソースにより行われる前記サービスの前記計算システムの動作中の前記品質を見積もった結果を品質見積結果として取得する見積結果取得部と、
前記品質見積結果が前記要求品質を満たさない場合に、前記複数の演算リソースのハードウェア構成を前記第1ハードウェア構成から前記第1ハードウェア構成とは異なる第2ハードウェア構成に前記計算システムの動作中に変更する構成制御部と、を備え、
前記計算システムには、当該計算システムが提供する複数のサービスそれぞれについて前記複数の演算リソースが構成されており、
前記計算システム全体に対する負荷を示す第1負荷情報を取得する負荷情報取得部と、
前記第1負荷情報が示す前記負荷が予め定められた閾値を超えた場合、前記複数のサービスのうちどのサービスを優先して、前記要求品質取得部と前記見積結果取得部と前記構成制御部とによる処理の対象とするかを決定する優先制御部と、をさらに備える、
リソース管理装置。
A resource management device that is configured using a part of the hardware of a computing system consisting of a plurality of computers and manages the hardware configuration of a plurality of computing resources that share a service of processing data to be processed, comprising:
a required quality acquisition unit that acquires a quality related to a processing time of the service that is required for the service as a required quality;
an estimation result acquisition unit that acquires a result of estimating the quality of the service performed by the plurality of computing resources of a first hardware configuration during operation of the computing system as a quality estimation result;
a configuration control unit that changes a hardware configuration of the plurality of computing resources from the first hardware configuration to a second hardware configuration different from the first hardware configuration during operation of the computing system when the quality estimation result does not satisfy the required quality;
The computing system includes a plurality of computing resources for each of a plurality of services provided by the computing system,
a load information acquisition unit that acquires first load information indicating a load on the entire computing system;
and a priority control unit that determines, when the load indicated by the first load information exceeds a predetermined threshold, which of the plurality of services should be prioritized as a target for processing by the required quality acquisition unit, the estimate result acquisition unit, and the configuration control unit.
Resource management device.
前記負荷情報取得部は、前記複数の計算機のそれぞれに対する負荷を示す第2負荷情報を取得し、
前記構成制御部は、前記第2負荷情報に基づいて、前記複数の演算リソースのうちの少なくとも1つを構成するハードウェアを前記複数の計算機のうちの前記負荷の大きな第1計算機のハードウェアから前記負荷の小さな第2計算機のハードウェアに変更することで、前記複数の演算リソースのハードウェア構成を前記第1ハードウェア構成から前記第2ハードウェア構成に変更する、
請求項1に記載のリソース管理装置。
the load information acquisition unit acquires second load information indicating a load on each of the plurality of computers;
the configuration control unit changes hardware constituting at least one of the plurality of computing resources from hardware of a first computer having a large load to hardware of a second computer having a small load, based on the second load information, thereby changing the hardware configuration of the plurality of computing resources from the first hardware configuration to the second hardware configuration;
The resource management device according to claim 1 .
前記負荷情報取得部は、前記複数の計算機のそれぞれに対する負荷を示す第2負荷情報を取得
前記第2負荷情報に基づいて、前記複数の計算機のうち前記負荷が所定基準よりも大きい計算機への入力データのデータ量を制限する入力データ制限部と、
を備える請求項1又は2に記載のリソース管理装置。
the load information acquisition unit acquires second load information indicating a load on each of the plurality of computers;
an input data limiting unit that limits an amount of input data to a computer among the plurality of computers whose load is greater than a predetermined standard based on the second load information;
The resource management device according to claim 1 or 2, comprising:
前記見積結果取得部は、前記複数の計算機のうち前記複数の演算リソースが構成された1以上の計算機それぞれの、前記複数の演算リソースのうちのその計算機に構成された1以上の演算リソースを使用したときの処理時間に関する性能を見積もった性能見積結果を取得し、取得した性能見積結果に1以上の変動量を加味した値に基づいて前記サービスの前記計算システムの動作中の前記品質を見積もる、
請求項1から3のいずれか1項に記載のリソース管理装置。
the estimation result acquisition unit acquires a performance estimation result that estimates performance related to a processing time of each of the one or more computers configured with the plurality of computing resources among the plurality of computers when using one or more computing resources configured on the computer among the plurality of computing resources, and estimates the quality of the service during operation of the computing system based on a value obtained by adding one or more fluctuation amounts to the acquired performance estimation result;
The resource management device according to any one of claims 1 to 3.
前記負荷情報取得部は、前記複数の計算機のそれぞれに対する負荷を示す第2負荷情報を取得
前記見積結果取得部は、取得した前記性能見積結果に、予め定められた第1変動量と、過去の前記第2負荷情報が示す前記負荷の傾向に応じた第2変動量と、を加味した値に基づいて前記サービスの前記計算システムの動作中の前記品質を見積もる、
請求項4に記載のリソース管理装置。
the load information acquisition unit acquires second load information indicating a load on each of the plurality of computers;
the estimation result acquisition unit estimates the quality of the service during operation of the computing system based on a value obtained by adding a predetermined first fluctuation amount and a second fluctuation amount according to a trend of the load indicated by the past second load information to the acquired performance estimation result;
The resource management device according to claim 4.
前記優先制御部は、前記複数のサービスが競合したときの処理実行の優先順位と、各サービスにおける前記品質見積結果と前記要求品質との乖離度合いとの少なくとも一方に基づいて、前記どのサービスを優先して前記処理の対象とするかを決定する、
請求項1に記載のリソース管理装置。
the priority control unit determines which of the services is to be given priority for the processing based on at least one of a priority order of processing execution when the plurality of services compete with each other and a degree of deviation between the quality estimation result and the required quality for each service.
The resource management device according to claim 1 .
ンピュータを請求項1に記載のリソース管理装置として機能させるプログラム。 A program that causes a computer to function as the resource management device according to claim 1 .
JP2023565768A 2021-12-08 2021-12-08 Resource management device and program Active JP7670167B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/045073 WO2023105670A1 (en) 2021-12-08 2021-12-08 Resource management device and program

Publications (2)

Publication Number Publication Date
JPWO2023105670A1 JPWO2023105670A1 (en) 2023-06-15
JP7670167B2 true JP7670167B2 (en) 2025-04-30

Family

ID=86730020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023565768A Active JP7670167B2 (en) 2021-12-08 2021-12-08 Resource management device and program

Country Status (2)

Country Link
JP (1) JP7670167B2 (en)
WO (1) WO2023105670A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007188226A (en) 2006-01-12 2007-07-26 Canon Inc Digital multi-function peripheral and control method thereof
WO2011142031A1 (en) 2010-05-14 2011-11-17 株式会社日立製作所 Resource management method, resource management device and program
WO2017029826A1 (en) 2015-08-18 2017-02-23 日本電信電話株式会社 Resource configuration system, resource configuration method and resource configuration program
WO2018097058A1 (en) 2016-11-22 2018-05-31 日本電気株式会社 Analysis node, method for managing resources, and program recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007188226A (en) 2006-01-12 2007-07-26 Canon Inc Digital multi-function peripheral and control method thereof
WO2011142031A1 (en) 2010-05-14 2011-11-17 株式会社日立製作所 Resource management method, resource management device and program
WO2017029826A1 (en) 2015-08-18 2017-02-23 日本電信電話株式会社 Resource configuration system, resource configuration method and resource configuration program
WO2018097058A1 (en) 2016-11-22 2018-05-31 日本電気株式会社 Analysis node, method for managing resources, and program recording medium

Also Published As

Publication number Publication date
JPWO2023105670A1 (en) 2023-06-15
WO2023105670A1 (en) 2023-06-15

Similar Documents

Publication Publication Date Title
US9442763B2 (en) Resource allocation method and resource management platform
JP5332065B2 (en) Cluster configuration management method, management apparatus, and program
US12106147B2 (en) Resource allocation in a cloud computing system based on predictions of workload probability parameters
US11842215B2 (en) Autoscaling and throttling in an elastic cloud service
US20180300206A1 (en) Method and system for data backup and restoration in cluster system
Sampaio et al. PIASA: A power and interference aware resource management strategy for heterogeneous workloads in cloud data centers
US20120221730A1 (en) Resource control system and resource control method
Li An adaptive overload threshold selection process using Markov decision processes of virtual machine in cloud data center
JP2022112614A (en) A device that determines resource movement schedules
JP2012198724A (en) Information processing program and method, and transfer processing device
Babu et al. Interference aware prediction mechanism for auto scaling in cloud
US20250093932A1 (en) Memory hierarchy power management
US20240241770A1 (en) Workload summarization for congestion avoidance in computer servers
JP7670167B2 (en) Resource management device and program
US11669442B2 (en) Co-operative memory management system
JP2024037487A (en) Information storage device, control system and control method
JP2013200615A (en) Virtual machine movement control system, virtual machine movement method, and program
CN120086003A (en) Method and device for supporting elastic scalability of computing resources in intelligent computing center
US20180246735A1 (en) Information processing apparatus, pld management program and pld management method
JP7582457B2 (en) Computational resource control device and control method
JP7750304B2 (en) Computers and programs
CN118349362B (en) Resource allocation method, device and equipment, storage medium and computer program product
Alsaaidah et al. Empowering cloud providers: optimised locust-inspired algorithm for SLA violation mitigation in green cloud computing
Padhy et al. CAMIRA: a consolidation-aware migration avoidance job scheduling strategy for virtualized parallel computing clusters
Minhajuddin et al. Towards Adaptive and Energy-Aware Task Offloading in Edge–Cloud Environments

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240524

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250310

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250318

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250331

R150 Certificate of patent or registration of utility model

Ref document number: 7670167

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350