WO2011096249A1 - 負荷制御装置 - Google Patents

負荷制御装置 Download PDF

Info

Publication number
WO2011096249A1
WO2011096249A1 PCT/JP2011/050261 JP2011050261W WO2011096249A1 WO 2011096249 A1 WO2011096249 A1 WO 2011096249A1 JP 2011050261 W JP2011050261 W JP 2011050261W WO 2011096249 A1 WO2011096249 A1 WO 2011096249A1
Authority
WO
WIPO (PCT)
Prior art keywords
transaction
distribution destination
transmission queue
upper limit
load control
Prior art date
Application number
PCT/JP2011/050261
Other languages
English (en)
French (fr)
Inventor
直毅 藤田
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US13/576,469 priority Critical patent/US9086910B2/en
Priority to CN2011800079925A priority patent/CN102782653A/zh
Publication of WO2011096249A1 publication Critical patent/WO2011096249A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present invention relates to a load control device.
  • the load information sharing means for sharing the load information, the load information sharing means provided by the load information sharing means to determine which task is transferred to which node, and the task transmission / reception Load distribution means for requesting transfer of the task to the means, and task execution means for processing the task requested to be executed and returning the execution result of the task to the local queuing means, the load distribution means
  • the balance calculation means for dynamically calculating at least the amount of tasks to be executed on the own node and It has been described that includes a node priority assignment means for assigning a degree, the.
  • the distribution rules are fixed and cannot be handled dynamically, or even in an environment that is not uniform due to the assumption of uniform computing resources, the most appropriate computing resources are not considered. Since there is no mechanism for maintaining the service level index such as turnaround time or the like, there is a problem that it is difficult to follow the ever-changing computing resources and it is not possible to take a detailed response.
  • an object of the present invention is to maintain a service level index represented by a turnaround time of parallel online transaction processing with as few computational resources and power consumption as possible.
  • a load control device is a load control device that distributes transaction processing to a plurality of computing resources, selects a receiving unit that receives a transaction processing request, and a distribution destination of the received transaction, A distribution control unit that stores the transaction in a transmission queue provided in the transmission queue, a transmission unit that transmits the transaction data stored in the transmission queue to the corresponding distribution destination, and the transmission corresponding to each distribution destination An overflow detection unit that monitors whether or not the transaction amount accumulated in the queue exceeds the upper limit, and if the transaction amount exceeds the upper limit as a result of monitoring by the overflow detection unit, the upper limit is exceeded. And a re-distribution unit that re-selects a transaction distribution destination stored in this manner.
  • FIG. 1 is a diagram showing a configuration of a load control system using a load control device 10 according to the present embodiment. As shown in the figure, the load control device 10 is connected to a plurality of processing devices (computation resources) 20 via communication lines.
  • processing resources computation resources
  • the load control system is a system in which online transactions are processed in parallel by a plurality of processing devices 20 on a case-by-case basis.
  • FIG. 2 is a diagram illustrating a configuration of the load control device 10 according to the present embodiment.
  • the load control device 10 includes a receiving unit 101, a distribution control unit 102, a transmission queue 103, a transmission unit 104, an overflow detection unit 105, a redistribution unit 106, a timer 107, and a reception unit 108.
  • the reception unit 101, the distribution control unit 102, the transmission unit 104, the overflow detection unit 105, the redistribution unit 106, the timer 107, and the reception unit 108 correspond to functions performed by a computer processor according to a program.
  • the transmission queue 103 includes a storage device such as a memory and a hard disk.
  • the receiving unit 101 receives a transaction processing request from a terminal connected via a communication line.
  • the distribution control unit 102 refers to the distribution table, selects an appropriate distribution destination of the received transaction, and stores the transaction in the transmission queue 103 provided for each distribution destination.
  • the distribution destination includes one or more processor cores (computation resources). When a plurality of cores are included, each core may be mounted on one processing device 20 or may be distributed and mounted on the plurality of processing devices 20.
  • FIG. 3 shows the contents of the distribution table.
  • an appropriate distribution destination for each data area is stored in advance in the distribution table.
  • the data area corresponds to a set of data to be processed by a certain transaction among data stored in the database 207.
  • the distribution control unit 102 selects an appropriate distribution destination from the distribution table based on which data area the received transaction is targeted for processing.
  • the distribution destination may correspond to one processing device 20 or may correspond to a plurality of processing devices 20.
  • the distribution table indicates the degree of performance degradation caused by the power-on state of the processing apparatus 20 that is the distribution destination and the power-off of the partial elements, or the degree of performance degradation caused by planned stoppage or failure such as periodic maintenance. Contains an available table to represent.
  • Figure 4 shows an example of an available table.
  • the available table is created based on the “element / distribution destination correspondence table”.
  • the availability table stores the alive state of each distribution destination.
  • the life and death state is determined based on performance degradation caused by power off or failure of elements included in the distribution destination. For example, when the available state of the element included in each distribution destination is as shown in the “element / distribution destination correspondence table”, the distribution destination 1 is the element 1 can be used (O), and the element Since 2 is an unusable state (x), the life / death state is 50%.
  • the availability table needs to be reviewed regularly to reflect the latest state of the processing device.
  • the transmission queue 103 is provided for each distribution destination, and the transaction data distributed to each distribution destination is sequentially stored.
  • the transmission unit 104 transmits the transaction data stored in the transmission queue 103 to the corresponding distribution destination processing device 20.
  • the transmission unit 104 transmits transaction data evenly to the respective processor cores by a method such as round robin, for example.
  • the overflow detection unit 105 refers to the upper limit table and periodically monitors whether the transaction amount stored in the transmission queue 103 corresponding to each distribution destination exceeds the upper limit.
  • FIG. 5 shows the contents of the upper limit table.
  • the upper limit table stores in advance the upper limit value of transactions that can be accumulated in the transmission queue 103 corresponding to each distribution destination.
  • the upper limit value can be, for example, the number of transactions that can be processed per fixed time.
  • the redistribution unit 106 selects the distribution destination again by referring to the affinity table. If the redistribution destinations are overflowing, they are sequentially assigned to candidates for the next priority. If there are no more distribution destination candidates, error processing is executed.
  • FIG. 6 is a diagram showing the contents held in the affinity table.
  • the affinity table performance values of processing for data in each data area are stored in advance for each distribution destination.
  • the performance value may be, for example, the number of transaction processes per unit time or the average turnaround time per case.
  • the processing performance for a specific data area is determined by the ease of access to the database 207 including the data. Generally, the processing performance is the highest when the cache control unit 206 that caches data in the database 207 including the data to be processed and the processing unit 205 that executes transaction processing are mounted on the same processing device 20, and between the two The processing performance decreases as another control unit or the like intervenes in the access path. In this affinity table, the distribution destination with the highest processing performance for each data area is the distribution destination in the distribution table.
  • the timer 107 determines the timing at which the overflow detection unit 105 monitors the processing amount of each processing device 20.
  • a method of monitoring the processing amount by the overflow detection unit 105 there is also a method in which monitoring is always performed, and when the transaction amount of the transmission queue 103 of any distribution destination exceeds the upper limit, the redistribution unit 106 is notified immediately. is there.
  • a notification is generated every time the transaction amount overflows, which causes a reduction in processing performance.
  • the receiving unit 108 receives information from each processing device 20 such as overflow of transaction processing amount.
  • FIG. 7 is a diagram illustrating a configuration of the processing apparatus 20.
  • the processing device 20 includes a receiving unit 201, a receiving queue 202, a control unit 203, a transmission unit 204, a processing unit (calculation resource, processor core) 205, a cache control unit 206, and a database 207.
  • the receiving unit 201 receives a transaction request from the load control device 10.
  • the reception queue 202 is a storage unit that sequentially accumulates transaction requests received by the reception unit 201.
  • the control unit 203 supplies the transaction request stored in the reception queue 202 to the processing unit 205.
  • the load control device 10 is notified via the transmission unit 204.
  • the transmission unit 204 transmits information such as an overflow of transaction processing amount to the load control apparatus 10.
  • the processing unit 205 updates the database 207 by executing a transaction.
  • the processing apparatus 20 may have a single core configuration including one processing unit 205 or a multi-core configuration including a plurality of processing units 205.
  • the cache control unit 206 temporarily stores the contents of the database 207. In this embodiment, it is possible to access the cache control unit 206 in at least one other processing apparatus 20.
  • the database 207 holds data to be subjected to transaction processing.
  • FIG. 8 is a flowchart of transaction distribution processing by the load control device 10.
  • the load control device 10 receives a transaction processing request at the receiving unit 101 (step S11).
  • the distribution control unit 102 refers to the distribution table and selects an appropriate distribution destination for the received transaction (step S12).
  • the distribution control unit 102 stores transaction processing data in the transmission queue 103 to the distribution destination selected in step S2 (step S13).
  • the transmission unit 104 sequentially transmits the transaction data stored in the transmission queue 103 in this way to the corresponding distribution destination processing device 20.
  • FIG. 9 is a flowchart of the processing when the transaction processing amount overflows.
  • the overflow detection unit 105 detects that the transaction amount stored in the transmission queue 103 corresponding to each distribution destination exceeds the upper limit (step S21: YES)
  • the redistribution unit 106 retransmits the transaction.
  • the distribution is instructed (step S22).
  • the redistribution unit 106 refers to the affinity table again to select a destination for the overflowing transaction (step S23).
  • the redistribution method will be specifically described with reference to FIGS.
  • a transaction whose processing target is the data area A is initially distributed to the distribution destination 1 by the distribution control unit 102.
  • the overflow detection unit 105 instructs the redistribution unit 106 to perform redistribution.
  • the redistribution unit 106 refers to the affinity table in FIG.
  • the distribution destinations 2, 3, and 4 correspond, and the redistribution unit 106 selects a redistribution destination from these.
  • the redistribution unit 106 moves the transaction data stored exceeding the upper limit to the redistribution destination transmission queue 103 (step S24).
  • the transmission unit 104 sequentially transmits the transaction data stored in the transmission queue 103 in this way to the corresponding distribution destination processing device 20.
  • the cache control unit 206 in another processing device 20 can be accessed between the processing devices 20, so that the cache control unit 206 of the processing device 20 at the distribution destination is accessed. Even if the data to be processed by the transaction is not cached, the process can be executed by accessing the cache control unit 206 of another processing device 20 in which the data is cached.
  • the redistribution unit 106 receives the overflow information of the transaction processing amount from each processing device 20 except for the case where the redistribution unit 106 receives an instruction from the overflow detection unit 105. In this case, the transaction is redistributed.
  • the distribution control unit 102 determines an appropriate distribution destination of the transaction and accumulates the transaction in the transmission queue 103 for each distribution destination. Resources can maintain service level metrics such as turnaround time for parallel online transaction processing. Further, the overflow detection unit 105 periodically monitors whether or not the transaction amount stored in the transmission queue 103 corresponding to each distribution destination exceeds the upper limit, and if it exceeds, the redistribution unit Since the allocation destination is determined again by 106, it is possible to prevent a decrease in the service level index such as a specific processing device 20 causing processing overflow and a longer turnaround time.
  • the load control device 10 determines the transaction allocation destination and performs adjustments to prevent processing overflow, the transaction data is transmitted to each processing device 20. There is no need to provide a function for adjusting processing overflow, and computational resources can be effectively used for transaction processing.
  • the load control apparatus 10 is particularly suitable for performing load control in an online transaction system using a database that holds a large amount of data.
  • the processing performance is most affected because of the affinity for the data of each computing resource.
  • the load control system includes a plurality of processing devices 20, and the cache control unit 206 can access the cache control unit 206 in at least one other processing device 20.
  • a system configuration method there is a CC-NUMA (cache-coherent Non-Uniform Memory Access) method. Since CC-NUMA has a multiprocessor configuration having a memory address space common to all processors, the processor of each node can also access the memory of other nodes. Each processor has a local high-speed memory, and access to the local memory possessed by other processors is slower than that. Therefore, the present embodiment is suitable for a load control system that determines a distribution destination based on the affinity for data of each calculation resource, as in this embodiment.
  • FIG. 10 is a diagram for explaining a method of determining an allocation destination based on power consumption.
  • the table of “power consumption model” indicates the power consumption during operation for each core (corresponding to the processing unit 205 of the processing device 20).
  • the power consumption of each when operating alone is “15”, but the total power consumption when operating the core 1 and core 2 simultaneously is “17”. Is. Therefore, the power consumption can be reduced by operating both the core 1 and the core 2 at the same time, rather than operating them alone.
  • the “core / distribution destination correspondence table” shows the configuration of the distribution destinations that can determine the power consumption determined based on the power consumption model. As shown in the table, the distribution destinations 1 and 2 are composed of two cores, and the distribution destinations 3 to 7 are composed of one core.
  • each computer resource (element) in the system shown in FIG. 11 requires a power reduction amount (reduced power) when the power is turned off and the start of reuse of the computer resource.
  • An “immediate extension model” that generates a distribution table based on information on preparation time (recovery time) may be used.
  • the allocation table is generated based on the usage fee that is reduced when each computing resource is returned to the resource pool and the information on the preparation time required to start the reuse of the computing resource.
  • the configuration of the processing apparatus 20 is not limited to that shown in FIG. 7, and may be, for example, a configuration as shown in FIG.
  • the example of FIG. 12 has a multi-core configuration in which two processing units 205 are included in the processing device 20, and two cache control units 206 and two databases 207 are also included.
  • the present invention is suitable for maintaining a service level index represented by a turnaround time of parallel transaction processing with as little computational resources and power consumption as possible.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Supply And Distribution Of Alternating Current (AREA)

Abstract

 複数の計算資源にトランザクション処理を振り分ける負荷制御装置10であって、トランザクション処理要求を受信する受信部101と、受信したトランザクションの適切な振分先を選択し、振分先毎に設けられた送信キュー103にトランザクションを格納する振分制御部102と、送信キュー103に格納されたトランザクションデータを対応する振分先に送信する送信部104と、各振分先に対応する送信キュー103に蓄積されているトランザクション量が上限を超えていないか否かを監視する溢れ検知部105と、溢れ検知部105による監視の結果、トランザクション量が上限を超えている場合には、上限を超えて格納されたトランザクションの振分先の選択を再度行う再振分部106を備える。

Description

負荷制御装置
 本発明は、負荷制御装置に関する。
 複数の計算資源から構成されるシステムを用いてトランザクション処理を行う場合、各計算資源間での負荷分散処理が必要となる。
 例えば特許文献1には、計算機システムを構成するノードにおいて、タスク又はタスクの実行結果の送受信を行うタスク送受信手段と、前記タスク送受信手段で受信したタスクをキューイングするキューイング手段(「ローカルキューイング手段」という)と、負荷情報を共有する負荷情報共有手段と、前記負荷情報共有手段が提供する他ノードの負荷情報に基づいて、どのタスクをどのノードに移送するかを決定し、前記タスク送受信手段にタスクの移送を依頼する負荷分散手段と、実行を依頼されたタスクを処理し、前記タスクの実行結果を、前記ローカルキューイング手段に返すタスク実行手段と、を含み、前記負荷分散手段は、少なくとも自ノードで実行すべきタスクの量を、動的に計算する均衡度計算手段と、ノードに対して優先度を割り当てるノード優先度割り当て手段と、を含むことが記載されている。
特許第4265377号公報
 業務システムのタスクは様々な粒度のものが存在するが、オンライントランザクション処理であれば、個々の処理の粒度は比較的細かいものになり、個々の処理はターンアラウンドタイムなどのサービスレベル指標により管理することができる。
コスト削減や電力消費量削減の観点からは、刻々と変化する利用可能な計算資源や利用可能な電力を効率よく活用しながらターンアラウンドタイムなどのサービスレベル指標を維持することが望ましいが、そのためには、各々のタスクを適切な計算資源に動的に振り分けるとともに、特定の計算資源に処理が集中して処理溢れが起こるのを防止する必要がある。処理溢れを防止するためには、各計算資源にタスクを送信する前の段階で適正なタスクの量に調整することが望ましいが、特許文献1に記載の方法では計算資源に送信する前の段階での調整は行われていなかった。また、既存のロードバランス手法では、振分ルールが固定的で動的に対応できなかったり、均一な計算資源が前提のために均一でない環境においても最も適切な計算資源を考慮することなく機械的に振り分けたり、ターンアラウンドタイムなどのサービスレベル指標を維持する仕組みがなかったりすることで、刻々と変化する計算資源に追従することが困難で、きめ細かい対応を行うことができないという課題があった。
 そこで、本発明の目的は、できるだけ少ない計算資源及び電力消費量で、並列オンライントランザクション処理のターンアラウンドタイムに代表されるサービスレベル指標を維持することである。
 本発明に係る負荷制御装置は、複数の計算資源にトランザクション処理を振り分ける負荷制御装置であって、トランザクション処理要求を受信する受信部と、受信したトランザクションの振分先を選択し、振分先毎に設けられた送信キューに前記トランザクションを格納する振分制御部と、前記送信キューに格納されたトランザクションデータを対応する前記振分先に送信する送信部と、各振分先に対応する前記送信キューに蓄積されているトランザクション量が上限を超えていないか否かを監視する溢れ検知部と、前記溢れ検知部による監視の結果、前記トランザクション量が上限を超えている場合には、上限を超えて格納されたトランザクションの振分先の選択を再度行う再振分部と、を備えたものである。
 本発明によれば、できるだけ少ない計算資源及び電力消費量で、並列トランザクション処理のターンアラウンドタイムに代表されるサービスレベル指標を維持することができる。
本発明の実施形態による負荷制御装置を用いた負荷制御システムの構成を示す図である。 本発明の実施形態による負荷制御装置の構成を示す図である。 振分テーブルの内容を示す図である。 可用テーブルの内容を示す図である。 上限テーブルの内容を示す図である。 アフィニティテーブルが保有する内容を示す図である。 処理装置の構成を示す図である。 本発明の実施形態による負荷制御装置によるトランザクション振り分け処理のフローチャートである。 トランザクションの処理量溢れが生じた場合の処理のフローチャートである。 電力消費量に基づく振分先の決定方法を説明する図である。 即時拡張モデルを説明する図である。 処理装置の構成の他の例を示す図である。
 次に、本発明を実施するための最良の形態について、図面を参照して詳細に説明する。
 図1は、本実施形態による負荷制御装置10を用いた負荷制御システムの構成を示す図である。図に示すように、負荷制御装置10は複数の処理装置(計算資源)20と通信回線を介して接続されている。
 本実施形態による負荷制御システムは、オンライントランザクションを1件単位で複数の処理装置20により並列処理するシステムである。
 図2は、本実施形態による負荷制御装置10の構成を示す図である。図に示すように、負荷制御装置10は、受信部101、振分制御部102、送信キュー103、送信部104、溢れ検知部105、再振分部106、タイマー107、受信部108を備えている。受信部101、振分制御部102、送信部104、溢れ検知部105、再振分部106、タイマー107、受信部108は、プログラムに従ってコンピュータのプロセッサが行う機能に対応する。送信キュー103は、メモリ、ハードディスク等の記憶装置を含むものである。
 受信部101は、通信回線を介して接続された端末等からのトランザクション処理要求を受信する。
 振分制御部102は、振分テーブルを参照して受信したトランザクションの適切な振分先を選択し、振分先毎に設けられた送信キュー103にトランザクションを格納する。なお、振分先には1つまたは複数のプロセッサコア(計算資源)が含まれる。複数のコアが含まれる場合、各々のコアは1つの処理装置20に実装されていてもよいし、複数の処理装置20に分散して実装されていてもよい。
 図3は、振分テーブルの内容を示す図である。図に示すように、振分テーブルには、予めデータ領域毎の適切な振分先が記憶されている。データ領域は、データベース207に格納されたデータのうち、あるトランザクションが処理対象とするデータの集合に相当する。振分制御部102は、受信したトランザクションがどのデータ領域のデータを処理対象としているかに基づいて、振分テーブルから適切な振分先を選択する。上述のように、振分先は1つの処理装置20に対応してもよいし、複数の処理装置20に対応してもよい。なお、振分テーブルは、振分先の処理装置20の電源のオンオフ状態や部分要素の電源オフにより生じる性能低下の程度、あるいは、定期保守などの計画停止や故障などにより生じる性能低下の程度を表す可用テーブルを含む。
 図4に可用テーブルの例を示す。可用テーブルは、「要素・振分先対応表」に基づいて作成される。図4に示すように、可用テーブルには、各振分先の死活状態が記憶されている。死活状態は、振分先に含まれる要素の電源オフや故障等により生じる性能低下に基づいて決定される。例えば、各振分先に含まれる要素の利用可能状態が「要素・振分先対応表」に示すような状態である場合、振分先1は、要素1が利用可能(○)で、要素2は利用不可の状態(×)であるため、死活状態は50パーセントとなる。可用テーブルは、処理装置の最新の状態を反映するため、定期的に見直す必要がある。
 送信キュー103は、振分先毎に設けられており、各振分先に対して振り分けられたトランザクションのデータが順次格納される。
 送信部104は、送信キュー103に格納されたトランザクションデータを対応する振分先の処理装置20に送信する。なお、1つの振分先に複数のプロセッサコアが含まれる場合、送信部104は、例えば、ラウンドロビンなどの方法により、それぞれのプロセッサコアに均等にトランザクションデータを送信する。
 溢れ検知部105は、上限テーブルを参照し、各振分先に対応する送信キュー103に蓄積されているトランザクション量が上限を超えていないか否かを定期的に監視する。
 図5は、上限テーブルの内容を示す図である。図に示すように、上限テーブルには、予め各振分先に対応する送信キュー103に蓄積可能なトランザクションの上限値が記憶されている。上限値は、例えば、一定時間あたり処理可能なトランザクション件数とすることができる。
 再振分部106は、溢れ検知部105による監視の結果、送信キュー103に蓄積されているトランザクション量が上限を超えている場合には、アフィニティテーブルを参照して再度振分先の選択を行う。なお、再振分先が溢れている場合には、順次、次優先度の候補に振り分ける。振分先の候補がなくなった場合には、エラー処理を実行する。
 図6は、アフィニティテーブルが保有する内容を示す図である。図に示すように、アフィニティテーブルには、予め各データ領域のデータを対象とする処理の性能値が振分先毎に記憶されている。性能値は、例えば単位時間あたりのトランザクション処理件数や1件あたりの平均ターンアラウンドタイムとすることができる。
 特定のデータ領域に対する処理性能は、当該データを含むデータベース207へのアクセスしやすさ等によって決定される。一般に、処理対象とするデータを含むデータベース207のデータをキャッシュするキャッシュ制御部206と、トランザクション処理を実行する処理部205が同じ処理装置20に実装されている場合が最も処理性能が高く、両者間のアクセス経路に他の制御部等が介在するほど処理性能は低くなる。なお、このアフィニティテーブルにおいて各データ領域に対する処理性能が最も高い振分先が、振分テーブルにおける振分先になる。
 タイマー107は、溢れ検知部105が各処理装置20の処理量を監視するタイミングを決定する。溢れ検知部105が処理量を監視する方法としては、常に監視を行い、いずれかの振分先の送信キュー103のトランザクション量が上限を超えたら即時に再振分部106に通知するという方法もある。しかし、この方法では、トランザクション量が溢れるたびに通知が発生し、処理性能を低下させる要因となる。
 受信部108は、各処理装置20から、トランザクションの処理量溢れなどに情報を受信する。
 図7は、処理装置20の構成を示す図である。図に示すように、処理装置20は、受信部201、受信キュー202、制御部203、送信部204、処理部(計算資源、プロセッサコア)205、キャッシュ制御部206、データベース207を備えている。
 受信部201は、負荷制御装置10からのトランザクション要求を受信する。
 受信キュー202は、受信部201で受信したトランザクション要求を順次蓄積する記憶部である。
 制御部203は、受信キュー202に蓄積されているトランザクション要求を処理部205に供給する。また、トランザクションの処理量溢れを検知したら、送信部204を介して負荷制御装置10に通知する。
 送信部204は、トランザクションの処理量溢れ等の情報を負荷制御装置10に送信する。
 処理部205は、トランザクションを実行してデータベース207を更新する。なお、処理装置20は、処理部205を1つ備えるシングルコア構成であってもよいし、処理部205を複数備えるマルチコア構成であってもよい。
 キャッシュ制御部206は、データベース207の内容を一時的に記憶する。なお、本実施形態では、少なくとも1つの他の処理装置20内のキャッシュ制御部206にアクセスすることが可能である。
 データベース207は、トランザクション処理の対象となるデータを保有する。      
 次に、負荷制御装置10を備えた負荷制御システムの動作について説明する。
 図8は、負荷制御装置10によるトランザクション振り分け処理のフローチャートである。まず、負荷制御装置10が受信部101においてトランザクション処理要求を受信する(ステップS11)。
 次に、振分制御部102が振分テーブルを参照して受信したトランザクションの適切な振分先を選択する(ステップS12)。
 次に、振分制御部102は、ステップS2で選択した振分先への送信キュー103にトランザクション処理のデータを格納する(ステップS13)。
 送信部104は、このようにして送信キュー103に格納されたトランザクションデータを対応する振分先の処理装置20に順次送信する。
 図9は、トランザクションの処理量溢れが生じた場合の処理のフローチャートである。
 まず、溢れ検知部105が各振分先に対応する送信キュー103に蓄積されているトランザクション量が上限を超えていることを検知すると(ステップS21:YES)、再振分部106にトランザクションの再振り分けを指示する(ステップS22)。
 再振分部106は、アフィニティテーブルを参照して溢れているトランザクションの振分先の選択を再度行う(ステップS23)。
 再振分の方法について、図3、5、6を用いて具体的に説明する。例えば、図3の振分テーブルに示すとおり、データ領域Aを処理対象とするトランザクションは、初めは振分制御部102によって振分先1に振り分けられる。しかし、図5の上限テーブルに示すように、振分先1の送信キュー103に1600件以上のトランザクションが蓄積されると、溢れ検知部105によって再振分部106に再振り分けが指示される。再振分部106は図6のアフィニティテーブルを参照し、データ領域Aを処理対象とするトランザクションの処理性能(ここでは単位時間当たりの処理件数)が振分先1の次に高い振分先を選択する。図6に示す例では、振分先2,3,4が該当するので、再振分部106はこれらの中から再振分先を選択する。
 再振分部106は、再振分先が決定したら、上限を超えて格納されたトランザクションデータを再振分先への送信キュー103に移動する(ステップS24)。
 送信部104は、このようにして送信キュー103に格納されたトランザクションデータを対応する振分先の処理装置20に順次送信する。なお、上述のように、本実施形態では処理装置20間で他の処理装置20内のキャッシュ制御部206にアクセスすることが可能であるため、振分先の処理装置20のキャッシュ制御部206にトランザクションが処理対象とするデータがキャッシュされていなくても、当該データがキャッシュされている他の処理装置20のキャッシュ制御部206にアクセスして処理を実行することができる。
 なお、正常運用時には発生しないことであるが、再振分部106は、溢れ検知部105からの指示を受信した場合以外に、受信部108が各処理装置20からトランザクションの処理量溢れ情報を受信した場合にも、トランザクションの再振り分けを行う。     
 以上のように、本実施形態によれば、振分制御部102によってトランザクションの適切な振分先を決定し、振分先毎の送信キュー103にトランザクションを蓄積するようにしたので、できるだけ少ない計算資源で、並列オンライントランザクション処理のターンアラウンドタイムなどのサービスレベル指標を維持することができる。また、溢れ検知部105によって各振分先に対応する送信キュー103に蓄積されているトランザクション量が上限を超えていないか否かを定期的に監視し、超えている場合には再振分部106によって振分先を再度決定するようにしたので、特定の処理装置20が処理溢れを起こしてターンアラウンドタイムが長くなる等のサービスレベル指標低下を防ぐことが出来る。
 また、負荷制御装置10においてトランザクションの振分先の決定を行い、さらに処理溢れを防止するための調整を行ってから、各処理装置20にトランザクションデータを送信しているため、処理装置20には処理溢れを調整するための機能を設ける必要がなく、計算資源をトランザクション処理に有効利用することができる。
 本実施形態による負荷制御装置10は、大量のデータを保有するデータベースを用いるオンライントランザクションシステムにおける負荷制御を行うのに特に適している。特に、データ競合が起こりにくいようデータベース内のデータがパーティショニングされデータ競合が起こりにくいトランザクション処理の場合、最も処理性能に影響するのは、各々の計算資源のデータに対するアフィニティだからである。
 また、このようなデータ競合が起こりにくいトランザクションでは、個々のトランザクションの負荷の大きさが比較的揃っているため、トランザクションの件数から全体の負荷の見積もりを行いやすく、本実施形態のように、上限テーブルを用いてトランザクション溢れを判断するのに適している。
 本実施形態による負荷制御システムは、複数の処理装置20を有しており、キャッシュ制御部206は、少なくとも1つの他の処理装置20内のキャッシュ制御部206にアクセスすることが可能である。このようなシステムの構成方式の例として、CC-NUMA(cache-coherent Non-Uniform Memory Access)の方式がある。CC-NUMAは、すべてのプロセッサで共通のメモリ・アドレス空間を持つマルチプロセッサ構成であるため、各ノードのプロセッサは他のノードのメモリにもアクセス可能である。各プロセッサはローカルで高速なメモリを有しており、他のプロセッサが持つローカルなメモリへのアクセスはそれより遅くなるという特徴がある。従って、本実施形態のように、各々の計算資源のデータに対するアフィニティに基づいて振分先を決定する負荷制御システムに適している。
 次に、電力消費量を削減するための振分先の構成方法について説明する。
 図10は、電力消費量に基づく振分先の決定方法を説明する図である。「電力消費モデル」の表は、コア(処理装置20の処理部205に相当)毎の稼動時の電力消費量を示している。「コアN」(N=1,・・・,9)の行と「コアN」の列の交差点の数値はコアNを単独で稼動させたときの電力消費量を表し、「コアN」の行と「コアM」(M=1,・・・,9)の列の交差点の数値は、コアNとコアMを同時に稼動させたときの総電力消費量を表している。例えば、コア1とコア2について見ると、単独で稼動させた場合それぞれの電力消費量は「15」であるが、コア1とコア2を同時に稼動させた場合の合計の電力消費量は「17」である。従って、コア1とコア2はそれぞれ単独で稼動させるよりも両方を同時に稼動させたほうが電力消費量を削減することができる。
 一方、コア5について見ると、単独で稼動させた場合の電力消費量は「20」であるが、他のいずれかのコアと共に稼動させることで合計の電力消費量を削減できる組み合わせは無い。
 このように、電力消費モデルに基づいて決定した、電力消費量ができる振分先の構成を示したものが「コア・振分先対応表」である。表に示すように、振分先1,2は2つのコアから構成され、振分先3~7は1つのコアで構成される。
 以上のように、処理装置20を構成するコアの電力消費モデルに基づいて振分先の構成を決定することにより、システムの電力消費量を削減することが可能となる。
 また、電力消費モデル以外に、図11に示すようなシステム内の各々の計算資源(要素)の、電源をオフした場合の電力削減量(削減電力)及びその計算資源の再利用開始までに要する準備時間(復旧時間)の情報に基づいて、振分テーブルを生成する「即時拡張モデル」を用いてもよい。
 トランザクションデータ量によっては、システムの全ての計算資源の電源を常にオンにしておく必要はない。従って、通常は、予想されるトランザクション増加量に対して即時に対応できる範囲でいくつかの計算資源の電源をオフしておくことが望ましい。すなわち、N秒後にS件のトランザクション増加が予想される場合、N秒以内に再利用開始できる計算資源をS件に対応できる分だけ確保しておき、その他の計算資源の電源はオフにする。
 即時拡張モデルを用いる場合、電源オフの状態であった計算資源が利用可能となった直後に振分先の候補を増やす必要があることから、定期的に各計算資源の電源のオンオフ状態を監視する手段が設けられる。新たに利用可能になった振分先が増えたことが検知されたら、可用テーブルが更新される。
 また、即時拡張モデルの変形例として、一部の計算資源の電源をオフしておく代わりに、システムから切り離してリソースプールに戻すようにしてもよい。この場合には、各々の計算資源をリソースプールに戻した場合に削減される利用料及び計算資源の再利用開始までに要する準備時間の情報に基づいて、振分テーブルを生成する。
 なお、処理装置20の構成は、図7に示すものに限られず、例えば図12に示すような構成であってもよい。図12の例は、処理装置20内に2つの処理部205が含まれるマルチコア構成であり、キャッシュ制御部206とデータベース207も2つ含まれている。
 この出願は、2010年2月5日に出願された日本出願特願2010-23943を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 本発明は、できるだけ少ない計算資源及び電力消費量で、並列トランザクション処理のターンアラウンドタイムに代表されるサービスレベル指標を維持することことに適している。
 10 負荷制御装置、20 処理装置、101 受信部、102 振分制御部、103 送信キュー、104 送信部、105 溢れ検知部、106 再振分部、107 タイマー、108 受信部、201 受信部、202 受信キュー、203 制御部、204 送信部、205 処理部、206 キャッシュ制御部、207 データベース

Claims (8)

  1.  複数の計算資源にトランザクション処理を振り分ける負荷制御装置であって、
     トランザクション処理要求を受信する受信部と、
     受信したトランザクションの振分先を選択し、振分先毎に設けられた送信キューに前記トランザクションを格納する振分制御部と、
     前記送信キューに格納されたトランザクションデータを対応する前記振分先に送信する送信部と、
     各振分先に対応する前記送信キューに蓄積されているトランザクション量が上限を超えていないか否かを監視する溢れ検知部と、
     前記溢れ検知部による監視の結果、前記トランザクション量が上限を超えている場合には、上限を超えて格納されたトランザクションの振分先の選択を再度行う再振分部と、を備えた負荷制御装置。
  2.  前記振分先制御部は、前記トランザクションが処理対象とするデータ領域に基づいて、そのデータ領域に対する処理性能が最も高い振分先を選択することを特徴とする、請求項1に記載の負荷制御装置。
  3.  前記再振分部は、前記トランザクションが処理対象とするデータ領域に基づいて、前記送信キューに蓄積されているトランザクション量が上限を超えていない振分先の中から、そのデータ領域に対する処理性能が最も高い振分先を選択することを特徴とする、請求項1または2に記載の負荷制御装置。
  4.  前記振分先が、電力消費量を最小にする前記処理装置の組み合わせにより構成されていることを特徴とする請求項1から3のいずれかに記載の負荷制御装置。
  5.  予想されるトランザクション量に基づいて、各々の計算資源の電源のオンオフ状態が制御され、
     前記振分制御部は、各々の計算資源の電源のオンオフ状態に基づいて、前記振分先を選択することを特徴とする請求項1から4のいずれかに記載の負荷制御装置。
  6.  前記溢れ検知部が各振分先に対応する前記送信キューに蓄積されているトランザクション量を監視するタイミングを決定するタイマーを備え、
     前記振分制御部は、前記タイミングに従って定期的に前記送信キューに蓄積されているトランザクション量を監視することを特徴とする、請求項1から5のいずれかに記載の負荷制御装置。
  7.  複数の計算資源にトランザクション処理を振り分ける負荷制御方法であって、
     トランザクション処理要求を受信する工程と、
     受信したトランザクションの適切な振分先を選択し、振分先毎に設けられた送信キューに前記トランザクションを格納する工程と、
     前記送信キューに格納されたトランザクションデータを対応する前記振分先に送信する工程と、
     各振分先に対応する前記送信キューに蓄積されているトランザクション量が上限を超えていないか否かを監視する工程と、
     前記監視の結果、前記トランザクション量が上限を超えている場合には、上限を超えて格納されたトランザクションの振分先の選択を再度行う工程と、を備えた負荷制御方法。
  8.  コンピュータを、
     複数の計算資源にトランザクション処理を振り分ける負荷制御装置として機能させるプログラムであって、
     トランザクション処理要求を受信する受信部と、
     受信したトランザクションの適切な振分先を選択し、振分先毎に設けられた送信キューに前記トランザクションを格納する振分制御部と、
     前記送信キューに格納されたトランザクションデータを対応する前記振分先に送信する送信部と、
     各振分先に対応する前記送信キューに蓄積されているトランザクション量が上限を超えていないか否かを監視する溢れ検知部と、
     前記溢れ検知部による監視の結果、前記トランザクション量が上限を超えている場合には、上限を超えて格納されたトランザクションの振分先の選択を再度行う再振分部と、して機能させるプログラム。
PCT/JP2011/050261 2010-02-05 2011-01-11 負荷制御装置 WO2011096249A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/576,469 US9086910B2 (en) 2010-02-05 2011-01-11 Load control device
CN2011800079925A CN102782653A (zh) 2010-02-05 2011-01-11 负载控制设备

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010023943A JP5515810B2 (ja) 2010-02-05 2010-02-05 負荷制御装置
JP2010-023943 2010-02-05

Publications (1)

Publication Number Publication Date
WO2011096249A1 true WO2011096249A1 (ja) 2011-08-11

Family

ID=44355259

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/050261 WO2011096249A1 (ja) 2010-02-05 2011-01-11 負荷制御装置

Country Status (4)

Country Link
US (1) US9086910B2 (ja)
JP (1) JP5515810B2 (ja)
CN (1) CN102782653A (ja)
WO (1) WO2011096249A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5586551B2 (ja) * 2011-09-21 2014-09-10 東芝テック株式会社 コンピュータシステム、及びジョブ制御方法
JP6246603B2 (ja) * 2014-01-21 2017-12-13 ルネサスエレクトロニクス株式会社 タスクスケジューラ機構、オペレーティングシステム及びマルチプロセッサシステム
CN109933415B (zh) * 2017-12-19 2021-05-04 中国移动通信集团河北有限公司 数据的处理方法、装置、设备及介质
US11182205B2 (en) * 2019-01-02 2021-11-23 Mellanox Technologies, Ltd. Multi-processor queuing model
CN110049350B (zh) * 2019-04-15 2022-10-11 深圳壹账通智能科技有限公司 视频转码处理方法、装置、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62198949A (ja) * 1986-02-26 1987-09-02 Nec Corp マルチプロセツサ・システムの動作制御方式
JPH0981399A (ja) * 1995-09-13 1997-03-28 Hitachi Ltd バッチシステム
JPH09212467A (ja) * 1996-01-30 1997-08-15 Fujitsu Ltd 負荷分散制御システム
JP2004192612A (ja) * 2002-12-09 2004-07-08 Internatl Business Mach Corp <Ibm> 区分化されたデータ処理システムにおける電力節減
JP2005196262A (ja) * 2003-12-26 2005-07-21 Hitachi Ltd 処理スケジュールの管理方法、リソース情報の作成方法、サーバ、クライアント、処理スケジュールの管理プログラム、リソース情報の作成プログラム
JP2008015888A (ja) * 2006-07-07 2008-01-24 Hitachi Ltd 負荷分散制御システム及び負荷分散制御方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5095421A (en) * 1989-08-17 1992-03-10 International Business Machines Corporation Transaction processing facility within an operating system environment
JPH0887473A (ja) * 1994-09-16 1996-04-02 Toshiba Corp データ処理装置
US6226377B1 (en) * 1998-03-06 2001-05-01 Avaya Technology Corp. Prioritized transaction server allocation
US6578068B1 (en) * 1999-08-31 2003-06-10 Accenture Llp Load balancer in environment services patterns
US7376693B2 (en) * 2002-02-08 2008-05-20 Jp Morgan Chase & Company System architecture for distributed computing and method of using the system
US7096335B2 (en) * 2003-08-27 2006-08-22 International Business Machines Corporation Structure and method for efficient management of memory resources
US7302450B2 (en) * 2003-10-02 2007-11-27 International Business Machines Corporation Workload scheduler with resource optimization factoring
US7430290B2 (en) * 2003-10-23 2008-09-30 Telefonaktiebolaget Lm Ericsson (Publ) Virtual queuing support system and method
JP4265377B2 (ja) 2003-11-12 2009-05-20 日本電気株式会社 負荷分散方法及び装置とシステム並びにプログラム
WO2005083574A1 (ja) * 2004-03-02 2005-09-09 Matsushita Electric Industrial Co., Ltd. 機器制御サーバ及び機器制御方法
US7606154B1 (en) * 2004-04-01 2009-10-20 Juniper Networks, Inc. Fair bandwidth allocation based on configurable service classes
US7712102B2 (en) * 2004-07-30 2010-05-04 Hewlett-Packard Development Company, L.P. System and method for dynamically configuring a plurality of load balancers in response to the analyzed performance data
US7881961B2 (en) * 2005-02-10 2011-02-01 International Business Machines Corporation Method and system of managing a business process
JP4378335B2 (ja) * 2005-09-09 2009-12-02 インターナショナル・ビジネス・マシーンズ・コーポレーション ディスクへのトランザクション・データ書き込みの方式を動的に切り替える装置、切り替える方法、及び切り替えるプログラム
US8036372B2 (en) * 2005-11-30 2011-10-11 Avaya Inc. Methods and apparatus for dynamically reallocating a preferred request to one or more generic queues
JP4605036B2 (ja) * 2006-01-27 2011-01-05 日本電気株式会社 計算機システム、管理サーバ、計算機設定時間を低減する方法およびプログラム
US7992151B2 (en) * 2006-11-30 2011-08-02 Intel Corporation Methods and apparatuses for core allocations
US8037329B2 (en) * 2007-01-31 2011-10-11 Hewlett-Packard Development Company, L.P. Systems and methods for determining power consumption profiles for resource users and using the profiles for resource allocation
US8201219B2 (en) * 2007-09-24 2012-06-12 Bridgewater Systems Corp. Systems and methods for server load balancing using authentication, authorization, and accounting protocols
US8856196B2 (en) 2008-07-22 2014-10-07 Toyota Jidosha Kabushiki Kaisha System and method for transferring tasks in a multi-core processor based on trial execution and core node

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62198949A (ja) * 1986-02-26 1987-09-02 Nec Corp マルチプロセツサ・システムの動作制御方式
JPH0981399A (ja) * 1995-09-13 1997-03-28 Hitachi Ltd バッチシステム
JPH09212467A (ja) * 1996-01-30 1997-08-15 Fujitsu Ltd 負荷分散制御システム
JP2004192612A (ja) * 2002-12-09 2004-07-08 Internatl Business Mach Corp <Ibm> 区分化されたデータ処理システムにおける電力節減
JP2005196262A (ja) * 2003-12-26 2005-07-21 Hitachi Ltd 処理スケジュールの管理方法、リソース情報の作成方法、サーバ、クライアント、処理スケジュールの管理プログラム、リソース情報の作成プログラム
JP2008015888A (ja) * 2006-07-07 2008-01-24 Hitachi Ltd 負荷分散制御システム及び負荷分散制御方法

Also Published As

Publication number Publication date
JP5515810B2 (ja) 2014-06-11
JP2011164736A (ja) 2011-08-25
US9086910B2 (en) 2015-07-21
CN102782653A (zh) 2012-11-14
US20130104131A1 (en) 2013-04-25

Similar Documents

Publication Publication Date Title
US11593152B1 (en) Application hosting in a distributed application execution system
KR101781063B1 (ko) 동적 자원 관리를 위한 2단계 자원 관리 방법 및 장치
US8468246B2 (en) System and method for allocating resources in a distributed computing system
US7877482B1 (en) Efficient application hosting in a distributed application execution system
JP4255457B2 (ja) エラー処理方法
US8671134B2 (en) Method and system for data distribution in high performance computing cluster
US20080282253A1 (en) Method of managing resources within a set of processes
US20090187658A1 (en) System for Allocating Resources in a Distributed Computing System
KR101680109B1 (ko) 복수 코어 장치 및 그의 로드 조정 방법
US9329937B1 (en) High availability architecture
US10305724B2 (en) Distributed scheduler
JP2006350780A (ja) キャッシュ割当制御方法
JP5515810B2 (ja) 負荷制御装置
US9635102B2 (en) Broker module for managing and monitoring resources between internet service providers
US8914582B1 (en) Systems and methods for pinning content in cache
US10606650B2 (en) Methods and nodes for scheduling data processing
KR20200080458A (ko) 클라우드 멀티-클러스터 장치
CN112685167A (zh) 资源使用方法、电子设备和计算机程序产品
JP6191361B2 (ja) 情報処理システム、情報処理システムの制御方法及び制御プログラム
JP2013206041A (ja) 通信システム及び負荷分散処理装置
WO2009113172A1 (ja) ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法
JP5722247B2 (ja) 仮想サーバ管理システム
JP2010146382A (ja) 負荷分散システム、負荷分散方法、および負荷分散プログラム
WO2015155571A1 (en) Elasticity engine for availability management framework (amf)
JP5857144B2 (ja) 仮想サーバ管理システム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180007992.5

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11739598

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13576469

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11739598

Country of ref document: EP

Kind code of ref document: A1