JP7383918B2 - 資源割り当て制御装置、資源割り当て制御方法、及び、資源割り当て制御プログラム - Google Patents

資源割り当て制御装置、資源割り当て制御方法、及び、資源割り当て制御プログラム Download PDF

Info

Publication number
JP7383918B2
JP7383918B2 JP2019131125A JP2019131125A JP7383918B2 JP 7383918 B2 JP7383918 B2 JP 7383918B2 JP 2019131125 A JP2019131125 A JP 2019131125A JP 2019131125 A JP2019131125 A JP 2019131125A JP 7383918 B2 JP7383918 B2 JP 7383918B2
Authority
JP
Japan
Prior art keywords
information processing
specific
profile
resource allocation
allocation control
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
JP2019131125A
Other languages
English (en)
Other versions
JP2021015548A (ja
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2019131125A priority Critical patent/JP7383918B2/ja
Publication of JP2021015548A publication Critical patent/JP2021015548A/ja
Application granted granted Critical
Publication of JP7383918B2 publication Critical patent/JP7383918B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本願発明は、ある情報処理を実行する際に、その情報処理を実行するための情報処理資源を割り当てる技術に関する。
サーバ装置などの情報処理装置では、通常、様々なアプリケーションソフトウェアが並列に動作している。そして情報処理装置は、各アプリケーションソフトウェアに対して、CPU(Central Processing Unit)やメモリなどの情報処理資源を割り当てることによって、アプリケーションソフトウェアを実行している。この際、限られた情報処理資源を可能な限り有効活用できるように、情報処理資源を適切に割り当てる技術への期待が高まってきている。
このような技術に関連する技術として、特許文献1には、医用データの即時的な出力に関する処理を複数の演算処理部に適応的に分配する情報処理装置が開示されている。この装置は、医用データの即時的な出力に関する処理を、複数の演算処理装置のそれぞれの演算処理部に適応的に分配し、各演算処理装置は、自装置に割り当てられた処理を行う。
また、特許文献2には、複数のアプリケーションソフトウェアが利用可能なリソースの量と性能との関係を示すリソース性能表を備えたリソース配分装置が開示されている。この装置は、複数のアプリケーションソフトウェアへのリソースの配分の候補の群を予め作成し、これらの群が含むリソースの配分の候補それぞれについて、リソース性能表を用いて複数のアプリケーションソフトウェアへのリソースの配分を決定する。
また、特許文献3には、リソース情報を取得するサーバ装置が開示されている。この装置は、処理対象となるジョブを取得してアプリケーションプログラムに実行させる。この装置は、リソース情報に基づき、リソース使用状況の目標となるように設定された第1の条件を満たすように、ジョブの取得を行なう。そしてこの装置は、リソース情報が上限として設定された第2の条件を越える場合に、アプリケーションプログラムにジョブの実行をサスペンドさせる制御を行う。
特開2019-008766号公報 特開2010-160552号公報 特開2013-186520号公報
近年、CPUに加えて例えばGPU(Graphics Processing Unit)等のアクセラレータを備えることによって、高速な処理を行う情報処理装置が増えてきている。このような多様な情報処理資源を備えた情報処理装置が、多数のソフトウェア部品を組み合わせて所望の情報処理を実行する場合、通常、各ソフトウェア部品による情報処理の特性に基づいて設定されたプロファイルにしたがって、各ソフトウェア部品に対する情報処理資源の割り当てを行なう。但し、本願では、ソフトウェア部品の実行における情報処理資源の種別ごとの使用可能量(即ち割り当て量)を表す情報を、プロファイルと称することとする。
図9は、一般的な資源割り当て制御装置による情報処理資源の割り当て内容を例示する図である。図9に示す例では、情報処理装置は、情報処理資源としてCPU及びアクセラレータを備え、ソフトウェア部品A及びBを組み合わせて実行する。ソフトウェア部品Aに対するプロファイルでは、2コアのCPU、及び、全処理能力の10%のアクセラレータが割り当てられることが設定されている。ソフトウェア部品Bに対するプロファイルでは、1コアのCPU、及び、全処理能力の20%のアクセラレータが割り当てられることが設定されている。
この場合、ソフトウェア部品A及びBの組み合わせに対して割り当てられる情報処理資源の合計は、3コアのCPU、及び、全処理能力の30%のアクセラレータになる。したがって、情報処理装置が10コアのCPU、及び、1台のアクセラレータを備える場合、ソフトウェア部品A及びBの組み合わせを、最大で3ch(チャネル)分、並列実行可能である。尚、情報処理装置がこの構成においてソフトウェア部品A及びBの組み合わせを3ch分並列に実行した場合、未使用の状態にある情報処理資源は、1コアのCPUと全処理能力の10%のアクセラレータであり、情報処理資源は効率的に使用されているといえる。
一方、情報処理装置が20コアのCPU、及び、1台のアクセラレータを備える場合、情報処理装置が並列実行可能なソフトウェア部品A及びBの組み合わせの最大値も、情報処理装置が10コアのCPU、及び、1台のアクセラレータを備える場合と同様に、3chとなる。そして情報処理装置がこの構成においてソフトウェア部品A及びBの組み合わせを3ch分並列に実行した場合、未使用の状態にある情報処理資源は、11コアのCPUと全処理能力の10%のアクセラレータであり、多数のCPUが未使用の状態にあることから、情報処理資源が効率的に使用されているとは言えない。
このように、各ソフトウェア部品による情報処理の特性に基づいて設定されたプロファイルにしたがって、各ソフトウェア部品に対する情報処理資源の割り当てを行なう場合、情報処理装置の構成と、プロファイルの内容との組み合わせによっては、情報処理資源の割り当てが適切に行なわれず、限られた情報処理資源を有効活用することができないという問題がある。特許文献1乃至3は、このような問題については特に言及していない。本願発明の主たる目的は、この問題を解決する資源割り当て制御装置等を提供することである。
本願発明の一態様に係る資源割り当て制御装置は、複数種類の情報処理資源を備える情報処理装置が行う情報処理ごとに、前記情報処理の実行における前記情報処理資源の種類ごとの使用可能量を表す、内容が互いに異なる複数のプロファイルを取得する取得手段と、前記情報処理装置が特定の前記情報処理を実行する際に、前記情報処理装置が備える前記情報処理資源の構成を表す構成情報と所定の基準とに基づいて、前記特定の情報処理に適用する特定の前記プロファイルを、前記特定の情報処理に関する前記複数のプロファイルの中から選択する選択手段と、前記特定のプロファイルが表す前記情報処理資源を用いて前記特定の情報処理を実行するように、前記情報処理装置を制御する制御手段と、を備える。
上記目的を達成する他の見地において、本願発明の一態様に係る資源割り当て制御方法は、第二の情報処理装置によって、複数種類の情報処理資源を備える第一の情報処理装置が行う情報処理ごとに、前記情報処理の実行における前記情報処理資源の種類ごとの使用可能量を表す、内容が互いに異なる複数のプロファイルを取得し、前記第一の情報処理装置が特定の前記情報処理を実行する際に、前記第一の情報処理装置が備える前記情報処理資源の構成を表す構成情報と所定の基準とに基づいて、前記特定の情報処理に適用する特定の前記プロファイルを、前記特定の情報処理に関する前記複数のプロファイルの中から選択し、前記特定のプロファイルが表す前記情報処理資源を用いて前記特定の情報処理を実行するように、前記第一の情報処理装置を制御する。
また、上記目的を達成する更なる見地において、本願発明の一態様に係る資源割り当て制御プログラムは、複数種類の情報処理資源を備える情報処理装置が行う情報処理ごとに、前記情報処理の実行における前記情報処理資源の種類ごとの使用可能量を表す、内容が互いに異なる複数のプロファイルを取得する取得処理と、前記情報処理装置が特定の前記情報処理を実行する際に、前記情報処理装置が備える前記情報処理資源の構成を表す構成情報と所定の基準とに基づいて、前記特定の情報処理に適用する特定の前記プロファイルを、前記特定の情報処理に関する前記複数のプロファイルの中から選択する選択処理と、前記特定のプロファイルが表す前記情報処理資源を用いて前記特定の情報処理を実行するように、前記情報処理装置を制御する制御処理と、をコンピュータに実行させる。
更に、本願発明は、係る資源割り当て制御プログラム(コンピュータプログラム)が格納された、コンピュータ読み取り可能な、不揮発性の記録媒体によっても実現可能である。
本願発明は、情報処理の実行における情報処理資源の種別ごとの使用可能量を表すプロファイルにしたがって、各情報処理に対する情報処理資源の割り当てを行なう場合において、情報処理資源の割り当てを適切に行なうことを可能とする。
本願発明の第1の実施形態に係る資源割り当て制御システム1の構成を示すブロック図である。 本願発明の第1の実施形態に係るソフトウェア部品22に関するプロファイル23の内容を例示する図である。 本願発明の第1の実施形態に係る情報処理装置20の構成に応じて選択部12が選択するプロファイル23を例示する図である。 本願発明の第1の実施形態に係る資源割り当て制御装置10の動作を示すフローチャートである。 本願発明の第2の実施形態に係る情報処理装置20がソフトウェア部品22を実行する実行環境と、ソフトウェア部品22による情報処理を適切な処理性能で実行するのに必要な情報処理資源量との関係を例示する図である。 本願発明の第2の実施形態に係る資源割り当て制御装置10の動作を示すフローチャートである。 本願発明の第3の実施形態に係る資源割り当て制御装置30の構成を示すブロック図である。 本願発明の各実施形態に係る資源割り当て制御装置を実行可能な情報処理装置900の構成を示すブロック図である。 一般的な資源割り当て制御装置による情報処理資源の割り当て内容を例示する図である。
以下、本願発明の実施の形態について図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本願発明の第1の実施の形態に係る資源割り当て制御システム1の構成を示すブロック図である。資源割り当て制御システム1は、大別して、資源割り当て制御装置10と、情報処理装置20とを有する。資源割り当て制御装置10と、情報処理装置20とは、通信可能に接続されている。
情報処理装置20は、例えばサーバ装置であり、記憶部21、CPU(中央処理装置)25-1乃至25-k(但しkは任意の自然数)、アクセラレータ26、メモリ27、バス28、及び、通信ネットワークインタフェース29を、情報処理資源として備えている。
CPU25-1乃至25-kは、汎用的な情報処理命令を実行するプロセッサである。尚、本願では以降、CPU25-1乃至25-kをまとめてCPU25と称する場合がある。
アクセラレータ26は、特定の種別の情報処理命令を高速に実行可能なプロセッサであり、例えばGPU、あるいはベクトル演算や特定の数値演算を実行するコプロセッサ、あるいはイメージ処理や機械学習等の特定の処理を行うプロセッサ、あるいはその他の特定の処理を実行可能に構成されたFPGA(Field-Programmable Gate Array)等である。
記憶部21は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等によって構成されたストレージである。記憶部21は、ソフトウェア部品22-1乃至22-n(但しnは任意の自然数)、プロファイル23-1-1乃至23-1-m1(但しm1は2以上の任意の整数)、プロファイル23-n-1乃至23-n-mn(但しmnは2以上の任意の整数)、構成情報24を記憶している。尚、本願では以降、ソフトウェア部品22-1乃至22-nをまとめてソフトウェア部品22と称し、プロファイル23-1-1乃至23-1-m1、プロファイル23-n-1乃至23-n-mnを、まとめてプロファイル23と称する場合がある。
構成情報24は、情報処理装置20が備える情報処理資源の構成を表す情報であり、例えば、CPU25やアクセラレータ26の個数、記憶部21やメモリ27の記憶容量、バス28のデータ転送幅、通信ネットワークインタフェース29により制御される通信帯域等を表す。即ち、構成情報24は、上述した各情報処理資源の量を表す情報である。
ソフトウェア部品22は、ある機能を実現可能なソフトウェアであり、情報処理装置20によって実行されるアプリケーションソフトウェア(不図示)は、多数のソフトウェア部品22を含んでいる。即ち、アプリケーションソフトウェアは、ソフトウェア部品22-1乃至22-nの少なくともいずれかの組み合わせによって構成されている。
プロファイル23は、ソフトウェア部品22の実行における情報処理資源の種別ごとの使用可能量(即ち割り当て量)を表す情報であり、例えば資源割り当て制御システム1の管理者等によって作成された情報である。プロファイル23-1-1乃至23-1-m1は、ソフトウェア部品22-1に関する互いに内容が異なるプロファイルであり、プロファイル23-n-1乃至23-n-m1は、ソフトウェア部品22-nに関する互いに内容が異なるプロファイルである。即ち、本実施形態に係る資源割り当て制御システム1では、1つのソフトウェア部品22に対して、互いに内容が異なる複数のプロファイル23が準備されている。
図2は、本実施形態に係るソフトウェア部品22に関するプロファイル23の内容を例示する図である。図2に示す例では、ソフトウェア部品22-1に関して、プロファイル23-1-1乃至23-1-3という3つのプロファイルが準備されている。また、ソフトウェア部品22-2に関して、プロファイル23-2-1乃至23-2-2という2つのプロファイルが準備されている。
プロファイル23-1-1は、CPU25が3コア(例えばCPU25-1乃至25-3)割り当てられ、アクセラレータ26が割り当てられないことを表している。プロファイル23-1-2は、CPU25が2コア割り当てられ、アクセラレータ26がその全処理能力の10%分割り当てられることを表している。プロファイル23-1-3は、CPU25が1コア割り当てられ、アクセラレータ26がその全処理能力の30%分割り当てられることを表している。
また、プロファイル23-2-1は、CPU25が3コア割り当てられ、アクセラレータ26が割り当てられないことを表している。プロファイル23-2-2は、CPU25が1コア割り当てられ、アクセラレータ26がその全処理能力の20%分割り当てられることを表している。
図1に示す資源割り当て制御装置10は、情報処理装置20がアプリケーションソフトウェアに含まれるソフトウェア部品22を実行する際に、プロファイル23と構成情報24と所定の基準とに基づいて、ソフトウェア部品22に割り当てる情報処理資源の量を制御する。尚、資源割り当て制御装置10は、情報処理装置20に内蔵された装置であってもよい。
資源割り当て制御装置10は、取得部11、選択部12、及び制御部13を備えている。
取得部11は、情報処理装置20によって実行されるソフトウェアに含まれるソフトウェア部品22に関するプロファイル23を、記憶部21から読み出すことによって取得する。例えば、情報処理装置20によって実行されるアプリケーションソフトウェアにソフトウェア部品22-1が含まれる場合、取得部11は、プロファイル23-1-1乃至23-1-m1を取得する。但し、資源割り当て制御装置10は、情報処理装置20によるアプリケーションソフトウェアの実行を制御する機能を備え、実行されるアプリケーションソフトウェアに含まれるソフトウェア部品22を特定可能であることとする。
選択部12は、情報処理装置がソフトウェア部品22を実行する際に、構成情報24と所定の基準とに基づいて、ソフトウェア部品22に対して適用するプロファイル23を、取得部11によって取得された複数のプロファイル23の中から選択する。ここで、所定の基準は、例えば、ソフトウェア部品22の組み合わせを並列に実行可能な最大数(ch数)が最も大きくなる(即ち、情報処理資源の使用効率が最も高くなる)ことを満たすことであってもよい。
図3は、本実施形態に係る情報処理装置20の構成に応じて、選択部12が選択するプロファイル23を例示する図である。但し、図3に示す例において、情報処理装置20によって実行されるアプリケーションソフトウェアは、ソフトウェア部品22-1及び22-2を含むこととし、各プロファイル23の内容は、図2に例示する通りとする。
図3に示す例において、情報処理装置20の構成が構成1(即ち、CPU25が4コアで、アクセラレータ26が1台)である場合、選択部12は、ソフトウェア部品22-1に関するプロファイルとして、プロファイル23-1-1乃至23-1-3の中からプロファイル23-1-3を選択するとともに、ソフトウェア部品22-2に関するプロファイルとして、プロファイル23-2-1及び23-2-2の中からプロファイル23-2-2を選択する。
情報処理装置20の構成が構成1の場合、ソフトウェア部品22-1及び22-2の組み合わせに割り当てられる情報処理資源の合計は、2コアのCPU25、及び、全処理能力の50%分のアクセラレータ26となる。したがってこの場合、ソフトウェア部品22-1及び22-2の組み合わせを並列に実行可能な最大数は2chとなる。またこの場合、ソフトウェア部品22-1及び22-2の組み合わせが2ch分並列に実行された場合、未使用の状態にあるCPU25及びアクセラレータ26は存在しない。
図3に示す例において、情報処理装置20の構成が構成2(即ち、CPU25が10コアで、アクセラレータ26が1台)である場合、選択部12は、ソフトウェア部品22-1に関するプロファイルとして、プロファイル23-1-1乃至23-1-3の中からプロファイル23-1-2を選択するとともに、ソフトウェア部品22-2に関するプロファイルとして、プロファイル23-2-1及び23-2-2の中からプロファイル23-2-2を選択する。
情報処理装置20の構成が構成2の場合、ソフトウェア部品22-1及び22-2の組み合わせに割り当てられる情報処理資源の合計は、3コアのCPU25、及び、全処理能力の30%分のアクセラレータ26となる。したがってこの場合、ソフトウェア部品22-1及び22-2の組み合わせを並列に実行可能な最大数は3chとなる。またこの場合、ソフトウェア部品22-1及び22-2の組み合わせが3ch分並列に実行された場合、未使用の状態にある情報処理資源は、1コアのCPU25と全処理能力の10%のアクセラレータ26となる。
図3に示す例において、情報処理装置20の構成が構成3(即ち、CPU25が20コアで、アクセラレータ26が1台)である場合、選択部12は、ソフトウェア部品22-1に関するプロファイルとして、プロファイル23-1-1乃至23-1-3の中からプロファイル23-1-1を選択するとともに、ソフトウェア部品22-2に関するプロファイルとして、プロファイル23-2-1及び23-2-2の中からプロファイル23-2-2を選択する。
情報処理装置20の構成が構成3の場合、ソフトウェア部品22-1及び22-2の組み合わせに割り当てられる情報処理資源の合計は、4コアのCPU25、及び、全処理能力の20%分のアクセラレータ26となる。したがってこの場合、ソフトウェア部品22-1及び22-2の組み合わせを並列に実行可能な最大数は5chとなる。またこの場合、ソフトウェア部品22-1及び22-2の組み合わせが5ch分並列に実行された場合、未使用の状態にあるCPU25及びアクセラレータ26は存在しない。
図3に示す例において、情報処理装置20の構成が構成4(即ち、CPU25が20コアで、アクセラレータ26が0台)である場合、選択部12は、ソフトウェア部品22-1に関するプロファイルとして、プロファイル23-1-1乃至23-1-3の中からプロファイル23-1-1を選択するとともに、ソフトウェア部品22-2に関するプロファイルとして、プロファイル23-2-1及び23-2-2の中からプロファイル23-2-1を選択する。
情報処理装置20の構成が構成4の場合、ソフトウェア部品22-1及び22-2の組み合わせに割り当てられる情報処理資源の合計は、6コアのCPU25となる。したがってこの場合、ソフトウェア部品22-1及び22-2の組み合わせを並列に実行可能な最大数は3chとなる。またこの場合、ソフトウェア部品22-1及び22-2の組み合わせが3ch分並列に実行された場合、未使用の状態にある情報処理資源は、2コアのCPU25となる。
図1に示す制御部13は、選択部12によって選択されたプロファイル23が表す情報処理資源を用いて、ソフトウェア部品22を実行するように、情報処理装置20を制御する。例えば情報処理装置20の構成が図3における構成1の場合、制御部13は、1コアのCPU25と全処理能力の30%のアクセラレータ26とを用いてソフトウェア部品22-1を実行するように情報処理装置20を制御する。そして制御部13は、1コアのCPU25と全処理能力の20%のアクセラレータ26とを用いてソフトウェア部品22-2を実行するように情報処理装置20を制御する。
次に図4のフローチャートを参照して、本実施形態に係る資源割り当て制御装置10の動作(処理)について詳細に説明する。
取得部11は、情報処理装置20において実行されるアプリケーションソフトウェアに含まれるソフトウェア部品22に関する複数のプロファイル23を、情報処理装置20における記憶部21から取得する(ステップS101)。選択部12は、記憶部21から構成情報24を取得する(ステップS102)。
選択部12は、構成情報24に基づいて、情報処理装置20が備える情報処理資源の使用効率が最も高くなるように、ソフトウェア部品22の実行に適用するプロファイル23を選択する(ステップS103)。制御部13は、選択部12によって選択されたプロファイル23が表す情報処理資源を用いてソフトウェア部品22を実行するように、情報処理装置20を制御し(ステップS104)、全体の処理は終了する。
本実施形態に係る資源割り当て制御装置10は、情報処理の実行における情報処理資源の種別ごとの使用可能量を表すプロファイルにしたがって、各情報処理に対する情報処理資源の割り当てを行なう場合において、情報処理資源の割り当てを適切に行なうことができる。その理由は、資源割り当て制御装置10は、ソフトウェア部品22ごとに内容が互いに異なる複数のプロファイル23を取得し、構成情報24と所定の基準とに基づいて、ソフトウェア部品22に適用するプロファイル23を選択するからである。
以下に、本実施形態に係る資源割り当て制御装置10によって実現される効果について、詳細に説明する。
各ソフトウェア部品による情報処理の特性に基づいて設定されたプロファイルにしたがって、各ソフトウェア部品に対する情報処理資源の割り当てを行なう場合、情報処理装置の構成と、プロファイルの内容との組み合わせによっては、情報処理資源の割り当てが適切に行なわれず、限られた情報処理資源を有効活用することができないという問題がある。例えば、図9に例示する、情報処理装置の構成が20コアのCPU、及び、1台のアクセラレータである場合において、このような問題が発生している。
このような問題に対して、本実施形態に係る資源割り当て制御装置10は、取得部11と、選択部12と、制御部13と、を備え、例えば図1乃至図4を参照して上述した通り動作する。即ち、取得部11は、複数種類の情報処理資源を備える情報処理装置20が行う情報処理ごとに、その情報処理の実行における情報処理資源の種別ごとの使用可能量を表す、内容が互いに異なる複数のプロファイル23を取得する。選択部12は、情報処理装置20が特定の情報処理を実行する際に、情報処理装置20が備える情報処理資源の構成を表す構成情報24と所定の基準とに基づいて、特定の情報処理に適用する特定のプロファイル23を、当該特定の情報処理に関する複数のプロファイル23の中から選択する。そして制御部13は、特定のプロファイル23が表す情報処理資源を用いて当該特定の情報処理を実行するように、情報処理装置20を制御する。
即ち、本実施形態に係る資源割り当て制御装置10は、各ソフトウェア部品22に関して、内容が互いに異なる複数のプロファイルを取得し、情報処理装置20に関する構成情報24に基づいて、情報処理資源の使用効率などの基準において最適であるプロファイル23を、各ソフトウェア部品22に対して適用する。これにより、資源割り当て制御装置10は、情報処理装置20の構成と、実行するソフトウェア部品22の特性とに応じて、柔軟な情報処理資源の割り当てを行なうので、情報処理資源の割り当てを適切に行なうことができる。
より具体的には、例えば図3に例示する通り、本実施形態に係る資源割り当て制御装置10は、ソフトウェア部品22-1及び22-2の組み合わせを、情報処理装置20の構成が構成1である場合は最大2ch分、情報処理装置20の構成が構成3である場合は最大5ch分並列に実行することができる。これに対して、図9に例示するような、1つのソフトウェア部品に対して1つのプロファイルしか準備していない一般的な資源割り当て制御装置は、ソフトウェア部品22-1及び22-2の組み合わせを、情報処理装置20の構成が構成1である場合は最大1ch分、情報処理装置20の構成が構成3である場合は最大3ch分しか並列に実行することができない。このように、本実施形態に係る資源割り当て制御装置10は、情報処理資源の使用効率が向上するように、情報処理資源の割り当てを適切に行なうことができる。
また、上述した本実施形態に係るプロファイル23は、CPU25及びアクセラレータ26に関する情報であるが、プロファイル23は、CPU25及びアクセラレータ26以外の情報処理資源に関する情報を含んでもよい。プロファイル23は、例えば、ソフトウェア部品22に割り当てられる、メモリ27や記憶部21における記憶領域の大きさ、あるいはバス28のデータ転送幅、あるいは通信ネットワークインタフェース29により制御される通信帯域などを含んでもよい。
尚、あるソフトウェア部品22による情報処理は、例えば情報処理装置20のハードウェア仕様(例えばCPU25やアクセラレータ26の演算精度等)やソフトウェア部品22が実行されたときの情報処理装置20の負荷状態などよって、実行されるごとに異なってもよい。すなわち、あるソフトウェア部品22による情報処理の結果は、その用途上許容される程度(例えば画像処理の場合、目視では画質の差が認知できない程度)で、分散してもよい。
<第2の実施形態>
次に本願発明の第2の実施形態について説明する。第2の実施形態の構成要素は、図1に示す第1の実施形態に係る資源割り当て制御システム1と同様であるので、図1のブロック図を参照して説明することとする。本実施形態に係る資源割り当て制御装置10は、上述した第1の実施形態において説明した機能に加えて、後述する機能を備える。
本実施形態に係るソフトウェア部品22は、情報処理装置20によって実行されている最中に、ソフトウェア部品22の実行環境を決定する動作パラメータを動的に変更する機能を有する。そして、本実施形態に係る制御部13は、この機能によって、情報処理装置20がソフトウェア部品22を実行中に、ソフトウェア部品22の実行環境を決定する動作パラメータを変更する。
次に、情報処理装置20によって実行されるアプリケーションソフトウェアが画像処理を行うソフトウェアである場合を例に、ソフトウェア部品22の実行環境について説明する。
ソフトウェア部品22により行われる情報処理が、例えばビデオエンコード処理である場合、ソフトウェア部品22の実行環境を決定する動作パラメータは、例えば、入力画像のビデオ解像度、あるいはI(Intra)ピクチャ、P(Predictive)ピクチャおよびB(Bidirectionally Predictive)ピクチャの構成に関するGOP(Group of Pictures)構造、あるいはビットレートなどを決定する。
図5は、本実施形態に係る情報処理装置20がソフトウェア部品22を実行する実行環境と、ソフトウェア部品22による情報処理を適切な処理性能で実行するのに必要な情報処理資源量との関係を例示する図である。
ソフトウェア部品22の実行環境が入力画像のビデオ解像度の高さである場合、ビデオ解像度が低いほど必要となる情報処理資源の総量は小さくなり、ビデオ解像度が高いほど必要となる情報処理資源の総量は大きくなる。また、ビデオ解像度が低いほど、CPU25による情報処理が占める割合が高くなるとともにアクセラレータ26による情報処理が占める割合が低くなり、ビデオ解像度が高いほど、CPU25による情報処理が占める割合が低くなるとともにアクセラレータ26による情報処理が占める割合が高くなる。
また、ソフトウェア部品22の実行環境がGOP構造におけるIピクチャおよびPピクチャのピクチャ間隔(I/Pピクチャ間隔)の大きさである場合、I/Pピクチャ間隔が小さくBピクチャの数が少ないほど必要となる情報処理資源の総量は小さくなり、I/Pピクチャ間隔が大きくBピクチャの数が多いほど必要となる情報処理資源の総量は大きくなる。また、I/Pピクチャ間隔が小さいほど、CPU25による情報処理が占める割合が高くなるとともにアクセラレータ26による情報処理が占める割合が低くなり、I/Pピクチャ間隔が大きいほど、CPU25による情報処理が占める割合が低くなるとともにアクセラレータ26による情報処理が占める割合が高くなる。
また、ソフトウェア部品22の実行環境がビットレートの高さである場合、ビットレートが低いほどピクチャ間隔が小さいほど必要となる情報処理資源の総量は小さくなり、ビットレートが高いほど必要となる情報処理資源の総量は大きくなる。また、ビットレートが低いほど、CPU25による情報処理が占める割合が低くなるとともにアクセラレータ26による情報処理が占める割合が高くなり、ビットレートが高いほど、CPU25による情報処理が占める割合が高くなるとともにアクセラレータ26による情報処理が占める割合が低くなる。
本実施形態に係る選択部12は、ソフトウェア部品22の実行環境が変更されるのに応じて、情報処理装置20がソフトウェア部品22による情報処理を、基準を満たす適切な処理性能で実行できるように、ソフトウェア部品22の実行に適用するプロファイル23を動的に変更する。
選択部12は、例えば、ビデオエンコード処理におけるビデオ解像度が高くなった場合、ソフトウェア部品22に割り当てられるCPU25及びアクセラレータ26の総量が増加するとともに、当該総量に対するCPU25が占める割合が減少する(即ちアクセラレータ26が占める割合が増加する)ように、プロファイル23を変更する。
選択部12は、例えば、ビデオエンコード処理におけるピクチャ間隔が大きくなった場合、ソフトウェア部品22に割り当てられるCPU25及びアクセラレータ26の総量が増加するとともに、当該総量に対するCPU25が占める割合が減少する(即ちアクセラレータ26が占める割合が増加する)ように、プロファイル23を変更する。
選択部12は、例えば、ビデオエンコード処理におけるビットレートが高くなった場合、ソフトウェア部品22に割り当てられるCPU25及びアクセラレータ26の総量が増加するとともに、当該総量に対するCPU25が占める割合が増加する(即ちアクセラレータ26が占める割合が減少する)ように、プロファイル23を変更する。
次に図6のフローチャートを参照して、本実施形態に係る資源割り当て制御装置10の動作(処理)について詳細に説明する。
資源割り当て制御装置10は、図4に示すステップS101乃至S104の処理を行う(ステップS201)。制御部13は、ソフトウェア部品22の実行中に動作パラメータを変更する(ステップS202)。選択部12は、構成情報24、及び、動作パラメータの変更内容に基づいて、情報処理装置20がソフトウェア部品22による情報処理を適切な処理性能で実行できるように、ソフトウェア部品22の実行に適用するプロファイル23を新たに選択する(ステップS203)。制御部13は、新たに選択されたプロファイル23が表す情報処理資源を用いてソフトウェア部品22を実行するように、情報処理装置20を制御し(ステップS204)、処理はステップS202へ戻る。
本実施形態に係る資源割り当て制御装置10は、情報処理の実行における情報処理資源の種別ごとの使用可能量を表すプロファイルにしたがって、各情報処理に対する情報処理資源の割り当てを行なう場合において、情報処理資源の割り当てを適切に行なうことができる。その理由は、第1の実施形態に関して説明した通りである。
また、本実施形態に係る資源割り当て制御装置10は、情報処理装置20がソフトウェア部品22を実行中にそのソフトウェア部品22の実行環境を動的に変更するのに応じて、ソフトウェア部品22に適用するプロファイル23を動的に変更する。情報処理装置20が例えばビデオエンコードなどの処理を行う場合では、通常、ビデオ解像度やビットレート等に関する実行環境が変動することがあり、処理を開始した時点における情報処理資源の割り当てを維持した場合に、処理性能が大きく低下する可能性がある。本実施形態に係る資源割り当て制御装置10は、上述した通り、ソフトウェア部品22の実行環境の変動に応じてプロファイル23を動的に変更するので、情報処理装置20がソフトウェア部品22による情報処理を適切な処理性能で実行することを維持することができる。
また、上述した本実施形態に係るソフトウェア部品22により行われる情報処理は、ビデオエンコード処理であるが、ソフトウェア部品22により行われる情報処理は、ビデオエンコード処理に限定されない。ソフトウェア部品22により行われる情報処理は、例えば、画像フォーマット変換処理、あるいは画像スケーリング処理、あるいは画像重畳処理などでもよい。
そして、ソフトウェア部品22により行われる情報処理が画像フォーマット変換処理である場合、ソフトウェア部品22の実行環境を決定する動作パラメータは、変換前のフォーマットと変換後のフォーマットとの関係を決定する。ソフトウェア部品22により行われる情報処理が画像スケーリング処理である場合、ソフトウェア部品22の実行環境を決定する動作パラメータは、スケーリング比率やスケーリングアルゴリズムを決定する。ソフトウェア部品22により行われる情報処理が画像重畳処理である場合、ソフトウェア部品22の実行環境を決定する動作パラメータは、重畳枚数やブレンディングの有無を決定する。
また、本実施形態に係る制御部13は、所定のタイミングにソフトウェア部品22による情報処理の実行環境を変更し、選択部12は、その所定のタイミングにプロファイル23を変更するようにしてもよい。
上述した所定のタイミングは、例えば、所定の時間間隔によるタイミングでもよい。上述した所定のタイミングは、あるいは、ソフトウェア部品22による情報処理が例えば画像処理である場合、処理対象である入力画像の特性が変更されたタイミングであってもよい。より具体的には、ソフトウェア部品22による情報処理がビデオエンコード処理である場合において、制御部13は、ノイズが多い画像が入力されたタイミングに、ノイズ軽減フィルタを有効にすることによって実行環境を変更する。制御部13は、あるいは、入力画像の色空間が切り替わったタイミングに、色空間変換フィルタを有効にすることによって実行環境を変更する。制御部13は、あるいは、入力画像の表示形式がSDR(Standard Dynamic Range)からHDR(High Dynamic Range)に、あるいはHDRからSDRに変更されたタイミングに、前処理フィルタや画質最適化処理を切り替えることによって実行環境を変更する。
本実施形態に係る資源割り当て制御装置10は、このように所定のタイミングにソフトウェア部品22による情報処理の実行環境を変更してプロファイル23を変更することにより、例えば、時間の経過とともに変化する情報処理の特性が予測可能な場合などにおいて、情報処理資源の割り当てを適切に行なうことを、より効率的に行うことができる。
<第3の実施形態>
図7は、本願発明の第3の実施形態に係る資源割り当て制御装置30の構成を示すブロック図である。
本実施形態に係る資源割り当て制御装置30は、取得部31、選択部32、及び、制御部33を備えている。
取得部31は、複数種類の情報処理資源41を備える情報処理装置40が行う情報処理42-1乃至42-n(但しnは任意の自然数)における情報処理ごとに、当該情報処理の実行における情報処理資源41の種類ごとの使用可能量を表す、内容が互いに異なる複数のプロファイル310-1乃至310-m(但しmは2以上の任意の整数)を取得する。
尚、複数種類の情報処理資源41は、例えば、第1の実施形態に係るCPU25、アクセラレータ26、メモリ27、バス28、及び、通信ネットワークインタフェース29のような情報処理資源であってもよい。また、情報処理42-1乃至42-nは、例えば上述した第1の実施形態に係るソフトウェア部品22によって実現されるような情報処理であってもよい。
選択部32は、情報処理装置40が特定の情報処理42-Y(但しYは1乃至nのうちのいずれかの整数)を実行する際に、情報処理装置40が備える情報処理資源41の構成を表す構成情報321と所定の基準322とに基づいて、特定の情報処理42-Yに適用する特定のプロファイル310-X(但しXは1乃至mのうちのいずれかの整数)を、特定の情報処理42-Yに関する複数のプロファイル310-1乃至310-mの中から選択する。
尚、所定の基準322は、例えば、第1の実施形態に係る選択部12が用いる基準と同様に、情報処理資源41の使用効率が最も高くなることを満たすこと、あるいは、第2の実施形態に係る選択部12が用いる基準と同様に、特定の情報処理42-Yを、基準を満たす処理性能で実行できることを満たすことであってもよい。
制御部33は、特定のプロファイル310-Xが表す情報処理資源41を用いて特定の情報処理42-Yを実行するように、情報処理装置40を制御する。
本実施形態に係る資源割り当て制御装置30は、情報処理の実行における情報処理資源の種別ごとの使用可能量を表すプロファイルにしたがって、各情報処理に対する情報処理資源の割り当てを行なう場合において、情報処理資源の割り当てを適切に行なうことができる。その理由は、資源割り当て制御装置30は、情報処理42-1乃至42-nにおける情報処理ごとに内容が互いに異なる複数のプロファイル310-1乃至310-mを取得し、構成情報321と所定の基準322とに基づいて、情報処理に適用する特定のプロファイル310-Xを選択するからである。
<ハードウェア構成例>
上述した各実施形態において図1、及び、図7に示した資源割り当て制御装置における各部は、専用のHW(HardWare)(電子回路)によって実現することができる。また、図1、及び、図7において、少なくとも、下記構成は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。
・取得部11及び31、
・選択部12及び32、
・制御部13及び33。
但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図8を参照して説明する。
図8は、本願発明の各実施形態に係る資源割り当て制御装置を実行可能な情報処理装置900(コンピュータ)の構成を例示的に説明する図である。即ち、図8は、図1、及び、図7に示した資源割り当て制御装置を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
図8に示した情報処理装置900は、構成要素として下記を備えている。
・CPU(Central_Processing_Unit)901、
・ROM(Read_Only_Memory)902、
・RAM(Random_Access_Memory)903、
・ハードディスク(記憶装置)904、
・通信インタフェース905、
・バス906(通信線)、
・CD-ROM(Compact_Disc_Read_Only_Memory)等の記録媒体907に格納されたデータを読み書き可能なリーダライタ908、
・モニターやスピーカ、キーボード等の入出力インタフェース909。
即ち、上記構成要素を備える情報処理装置900は、これらの構成がバス906を介して接続された一般的なコンピュータである。情報処理装置900は、CPU901を複数備える場合もあれば、マルチコアにより構成されたCPU901を備える場合もある。
そして、上述した実施形態を例に説明した本願発明は、図8に示した情報処理装置900に対して、次の機能を実現可能なコンピュータプログラムを供給する。その機能とは、その実施形態の説明において参照したブロック構成図(図1、及び、図7)における上述した構成、或いはフローチャート(図4、及び、図6)の機能である。本願発明は、その後、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性のメモリ(RAM903)、または、ROM902やハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、現在では一般的な手順を採用することができる。その手順としては、例えば、CD-ROM等の各種記録媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等がある。そして、このような場合において、本願発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記録媒体907によって構成されると捉えることができる。
以上、上述した実施形態を模範的な例として本願発明を説明した。しかしながら、本願発明は、上述した実施形態には限定されない。即ち、本願発明は、本願発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
1 資源割り当て制御システム
10 資源割り当て制御装置
11 取得部
12 選択部
13 制御部
20 情報処理装置
21 記憶部
22-1乃至22-n ソフトウェア部品
23-1-1乃至23-1-m1 プロファイル
23-n-1乃至23-n-mn プロファイル
24 構成情報
25-1乃至25-k CPU
26 アクセラレータ
27 メモリ
28 バス
29 通信ネットワークインタフェース
30 資源割り当て制御装置
31 取得部
310-1乃至310-m プロファイル
310-X 特定のプロファイル
32 選択部
321 構成情報
322 所定の基準
33 制御部
40 情報処理装置
41 情報処理資源
42-1乃至42-n 情報処理
42-Y 特定の情報処理
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 ハードディスク(記憶装置)
905 通信インタフェース
906 バス
907 記録媒体
908 リーダライタ
909 入出力インタフェース

Claims (9)

  1. 複数種類の情報処理資源を備える情報処理装置が行う情報処理ごとに、前記情報処理の実行における前記情報処理資源の種類ごとの使用可能量を表す、内容が互いに異なる複数のプロファイルを取得する取得手段と、
    前記情報処理装置が特定の前記情報処理を実行する際に、前記情報処理装置が備える前記情報処理資源の構成を表す構成情報と所定の基準とに基づいて特定の前記情報処理に適用する特定の前記プロファイルを特定の前記情報処理に関する前記複数のプロファイルの中から選択する選択手段と、
    特定の前記プロファイルが表す前記情報処理資源を用い特定の前記情報処理を実行するように、前記情報処理装置を制御する制御手段と、
    を備え
    前記制御手段は、前記情報処理装置が特定の前記情報処理を実行中に、特定の前記情報処理の実行環境を動的に変更し、
    前記選択手段は、特定の前記情報処理の実行環境が変更されるのに応じて、特定の前記プロファイルを動的に変更する、
    資源割り当て制御装置。
  2. 前記制御手段は、前記情報処理が画像処理である場合に特定の前記情報処理の実行環境を表す、ビデオエンコード処理、あるいは画像フォーマット変換処理、あるいは画像スケーリング処理、あるいは画像重畳処理における動作パラメータを動的に変更する、
    請求項に記載の資源割り当て制御装置。
  3. 前記制御手段は、所定のタイミング特定の前記情報処理の実行環境を変更し、
    前記選択手段は、前記所定のタイミング特定の前記プロファイルを変更する、
    請求項または請求項に記載の資源割り当て制御装置。
  4. 前記制御手段は、前記情報処理が画像処理である場合に、処理対象である入力画像の特性が変更された前記所定のタイミングに特定の前記情報処理の実行環境を変更する、
    請求項に記載の資源割り当て制御装置。
  5. 前記選択手段は、前記情報処理資源の使用効率が最も高くなるように、あるいは前記情報処理を、基準を満たす処理性能で実行できるように特定の前記プロファイルを選択する、
    請求項1乃至請求項のいずれか一項に記載の資源割り当て制御装置。
  6. 前記取得手段は、中央処理装置、アクセラレータ、メモリ、ストレージ、バス、及び、通信ネットワークのうちの少なくともいずれかである前記情報処理資源に関する前記プロファイルを取得する、
    請求項1乃至請求項のいずれか一項に記載の資源割り当て制御装置。
  7. 前記情報処理装置をさらに備える、
    請求項1乃至請求項のいずれか一項に記載の資源割り当て制御装置。
  8. 第二の情報処理装置によって、
    複数種類の情報処理資源を備える第一の情報処理装置が行う情報処理ごとに、前記情報処理の実行における前記情報処理資源の種類ごとの使用可能量を表す、内容が互いに異なる複数のプロファイルを取得し、
    前記第一の情報処理装置が特定の前記情報処理を実行する際に、前記第一の情報処理装置が備える前記情報処理資源の構成を表す構成情報と所定の基準とに基づいて特定の前記情報処理に適用する特定の前記プロファイルを特定の前記情報処理に関する前記複数のプロファイルの中から選択し、
    特定の前記プロファイルが表す前記情報処理資源を用い特定の前記情報処理を実行するように、前記第一の情報処理装置を制御する方法であって
    前記情報処理装置が特定の前記情報処理を実行中に、特定の前記情報処理の実行環境を動的に変更し、
    特定の前記情報処理の実行環境が変更されるのに応じて、特定の前記プロファイルを動的に変更する、
    資源割り当て制御方法。
  9. 複数種類の情報処理資源を備える情報処理装置が行う情報処理ごとに、前記情報処理の実行における前記情報処理資源の種類ごとの使用可能量を表す、内容が互いに異なる複数のプロファイルを取得する取得処理と、
    前記情報処理装置が特定の前記情報処理を実行する際に、前記情報処理装置が備える前記情報処理資源の構成を表す構成情報と所定の基準とに基づいて特定の前記情報処理に適用する特定の前記プロファイルを特定の前記情報処理に関する前記複数のプロファイルの中から選択する選択処理と、
    特定の前記プロファイルが表す前記情報処理資源を用い特定の前記情報処理を実行するように、前記情報処理装置を制御する制御処理と、
    をコンピュータに実行させるためのプログラムであって、
    前記制御処理は、前記情報処理装置が特定の前記情報処理を実行中に、特定の前記情報処理の実行環境を動的に変更し、
    前記選択処理は、特定の前記情報処理の実行環境が変更されるのに応じて、特定の前記プロファイルを動的に変更する、
    資源割り当て制御プログラム。
JP2019131125A 2019-07-16 2019-07-16 資源割り当て制御装置、資源割り当て制御方法、及び、資源割り当て制御プログラム Active JP7383918B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019131125A JP7383918B2 (ja) 2019-07-16 2019-07-16 資源割り当て制御装置、資源割り当て制御方法、及び、資源割り当て制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019131125A JP7383918B2 (ja) 2019-07-16 2019-07-16 資源割り当て制御装置、資源割り当て制御方法、及び、資源割り当て制御プログラム

Publications (2)

Publication Number Publication Date
JP2021015548A JP2021015548A (ja) 2021-02-12
JP7383918B2 true JP7383918B2 (ja) 2023-11-21

Family

ID=74531649

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019131125A Active JP7383918B2 (ja) 2019-07-16 2019-07-16 資源割り当て制御装置、資源割り当て制御方法、及び、資源割り当て制御プログラム

Country Status (1)

Country Link
JP (1) JP7383918B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010102587A (ja) 2008-10-24 2010-05-06 Toshiba Corp 情報処理装置
JP2013541117A (ja) 2010-10-26 2013-11-07 クゥアルコム・インコーポレイテッド アプリケーション特有のリソース管理

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010102587A (ja) 2008-10-24 2010-05-06 Toshiba Corp 情報処理装置
JP2013541117A (ja) 2010-10-26 2013-11-07 クゥアルコム・インコーポレイテッド アプリケーション特有のリソース管理

Also Published As

Publication number Publication date
JP2021015548A (ja) 2021-02-12

Similar Documents

Publication Publication Date Title
US9032417B2 (en) Information processing apparatus and information processing apparatus control method
JP5598229B2 (ja) ジョブ分散処理システム、情報処理装置及びプログラム
US8190795B2 (en) Memory buffer allocation device and computer readable medium having stored thereon memory buffer allocation program
KR101644800B1 (ko) 컴퓨팅 시스템 및 방법
US20110161637A1 (en) Apparatus and method for parallel processing
US20150133214A1 (en) Video encoding based on areas of interest
RU2573733C1 (ru) Способ и устройство для регулировки канала i/о на виртуальной платформе
KR20140145748A (ko) 다중 코어 환경에서 프로세스의 할당 방법 및 장치
JP6372262B2 (ja) 印刷装置、およびプログラム
US8775767B2 (en) Method and system for allocating memory to a pipeline
JP2016001469A (ja) 画像処理方法および画像処理装置
KR101519825B1 (ko) 데이터 처리 장치 및 그 제어 방법
JP7383918B2 (ja) 資源割り当て制御装置、資源割り当て制御方法、及び、資源割り当て制御プログラム
JP4409568B2 (ja) 帯域制御プログラム及びマルチプロセッサシステム
KR20160025894A (ko) Gpu의 리소스에 대한 전력 소비 제어방법 및 장치
JP2011198287A (ja) 画像処理装置及び画像処理プログラム
JP5232728B2 (ja) 画像形成装置
JP2014078214A (ja) スケジュールシステム、スケジュール方法、スケジュールプログラム、及び、オペレーティングシステム
US11762704B2 (en) Resource allocation device, resource management system, and resource allocation program
JP2006042312A (ja) 画像処理装置及び画像処理方法
JP2009199549A (ja) 計算機システム、仮想マシンへの資源割り当て方法およびプログラム
JP5656000B2 (ja) 画像形成装置およびそのプログラム
JP5968497B2 (ja) 制御方法、システム及びプログラム
KR102419015B1 (ko) Numa 기반 장비의 인터럽트 분배방법, 이를 구현하기 위한 프로그램이 저장된 기록매체 및 이를 구현하기 위해 매체에 저장된 컴퓨터 프로그램
JP6524733B2 (ja) 並列演算装置、並列演算システム、およびジョブ制御プログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20211015

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220615

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230710

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: 20231010

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231023

R151 Written notification of patent or utility model registration

Ref document number: 7383918

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151