JP2013140596A - メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法 - Google Patents

メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法 Download PDF

Info

Publication number
JP2013140596A
JP2013140596A JP2013000261A JP2013000261A JP2013140596A JP 2013140596 A JP2013140596 A JP 2013140596A JP 2013000261 A JP2013000261 A JP 2013000261A JP 2013000261 A JP2013000261 A JP 2013000261A JP 2013140596 A JP2013140596 A JP 2013140596A
Authority
JP
Japan
Prior art keywords
operating system
application
dynamic reconfiguration
function
many
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013000261A
Other languages
English (en)
Inventor
Cai Shi Lin
采 石 林
cheng yuan Li
承 遠 李
Shi-Hwa Lee
時 和 李
Zai Dui Li
在 敦 李
Niang Kui Zheng
旻 奎 鄭
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2013140596A publication Critical patent/JP2013140596A/ja
Pending legal-status Critical Current

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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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/22Microcontrol or microprogram arrangements
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • 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]
    • 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/5055Allocation 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 software capabilities, i.e. software resources associated or available to the machine

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Logic Circuits (AREA)

Abstract

【課題】 メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法を提供する。
【解決手段】 実行されるアプリケーションの形態を決定するアプリケーション形態決定部と、決定されたアプリケーションの形態に基づいて、オペレーティングシステムの少なくとも1つ以上の機能を非アクティブ化させ、オペレーティングシステムを再構成するオペレーティングシステム再構成部とを備える、メニーコアシステムのためのオペレーティングシステム動的再構成装置である。
【選択図】 図3

Description

本発明は、動的に再構成ができる効率的なリソース管理方法を提供するメニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法に関する技術的な思想を開示する。
アプリケーションの高性能化及び省電力化に対する要求が大きくなるにつれて複数のプロセッシングコア(processing core)を用いるメニーコアシステムが増加する傾向にある。メニーコアシステムのリソースを効率よく管理するために、これをさらに小さいサイズに分割して個別アプリケーションに割り当てる方法が多く用いられている。
図1A及び図1Bは、それぞれ従来技術に係るハイパーバイザ(Hypervisor)基盤のメニーコアOS、及びマイクロカーネル(microkernel)基盤のメニーコアOSを説明するための図である。
図1Aに示す方式は、ハイパーバイザ110を用いてリソースを分割した後、分割ごとにOS120及びアプリケーション130を実行することで分割がシステム及びOS120の初期化時に固定されるという短所がある。
図1Bに示す方式は、マイクロカーネル140を用いてリソース管理及びコア間の通信の最小機能のみを提供し、残りのOS150の機能は別途の分割でサービス形態に提供することで、アプリケーションの要求に応じて分割が動的に割り当てられる。
しかし、OS専用の分割を固定して割り当てなければならないため、コアの活用性は落ちてしまう。このように従来技術の問題は、(1)(全体あるいは一部)コアの役割が固定されてコアの活用性が落ちることである。また、(2)(マイクロカーネルまたはハイパーバイザなど)レイヤが追加されることによってOSシステムコール(system call)の応答時間が長くなる短所もある。
本発明の目的は、メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法を提供することである。
本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置は、実行されるアプリケーションの形態を決定するアプリケーション形態決定部と、前記決定されたアプリケーションの形態に基づいて、オペレーティングシステムの少なくとも1つ以上の機能を非アクティブ化させ、前記オペレーティングシステムを再構成するオペレーティングシステム再構成部とを備える。
本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法は、実行されるアプリケーションの形態を決定するステップと、前記決定されたアプリケーションの形態に基づいてオペレーティングシステムの少なくとも1つ以上の機能を非アクティブ化させ、前記オペレーティングシステムを再構成するステップとを含む。
本発明によると、メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法を提供することができる。
従来技術に係るハイパーバイザ基盤のメニーコアOSを説明する図である。 従来技術に係るマイクロカーネル基盤のメニーコアOSを説明する図である。 本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を説明する図である。 本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置に16−コアシステムを適用した実施形態を説明する図である。 本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を通したアプリケーションの形態に係るOSパーティションの設定実施形態を説明する図である。 本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を通したアプリケーションの形態を説明する実施形態を説明する図である。 本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を介して既存のアプリケーションが終了して新しいアプリケーションを開始する実施形態を説明する図である。 本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法を説明するフローチャートである。 本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を通した効果を説明する図である。 本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を通した効果を説明する図である。
以下、本発明に係る好適な実施形態を添付する図面を参照しながら詳細に説明する。
本発明の説明において、関連の公知機能または構成に対する具体的な説明が本発明の要旨を不要に曖昧にすると判断される場合にはその詳細な説明を省略する。そして、本明細書で用いられる用語(terminology)は本発明の好適な実施形態を適切に表現するために用いられた用語であって、ユーザ、運用者の意図または本発明が属する分野の慣例などによって変わり得る。したがって、本用語に対する定義は本明細書の全般にわたる内容に基づいて下されなければならない。各図面に提示された同一の参照符号は同一の部材を示す。
本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置は、実行されるアプリケーションの形態を決定するアプリケーション形態の決定部と、決定されたアプリケーションの形態に基づいてオペレーティングシステムの少なくとも1つ以上の機能のみをアクティブ化し、オペレーティングシステムを再構成するオペレーティングシステム再構成部とを備える。
このような本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置は、アプリケーションの形態によってアプリケーションで使用しないオペレーティングシステム機能に対して非アクティブ化してシステムオーバーヘッドを除去することで、全体的なシステム性能を向上させることができる。
以下は、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法について具体的に説明する。
図2は、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を用いる場合の効果を説明する図である。
本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を利用すれば、全てのコアをアプリケーションの実行のために割り当てられるためコアの活用性が高い。それだけではなく、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置は別途のレイヤを必要としないため、オペレーティングシステムシステムコール(OS system call)の応答時間が長くなる問題もない。
また、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を利用すれば、実行するアプリケーションの特性に応じて分割ごとのオペレーティングシステム230の機能を動的に再設定することができる。
例えば、同図に示すように、ストリームアプリケーション210を実行する分割はコア当たり1つのタスク220だけを割り当て、マルチタスク(multitasking)機能などを除くことでOS実行のオーバーヘッドを減少することができる。
図3は、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置に16−コアシステムを適用した実施形態を説明する図である。
本発明の技術がリソースの個に制約はないが、ここで、システム310はcore16個とDRAM4個のリソースで構成されていると仮定する。
本実施形態は次のようなシナリオで動作する。
(1)ユーザがApplication0 320を開始する。ここで、アプリケーションの形態は、本発明の一実施形態に係るアプリケーション決定部によって確認することができる。Application0 320はストリームプロセッシング形態のアプリケーションである。
例えば、前記アプリケーション決定部は、実行されるアプリケーションを確認し、前記確認されたアプリケーションに対してストリームプロセッシング、データ並列プロセッシング、及びマルチスレッディングのうち少なくとも1つの形態に決定してもよい。
(2)本発明の一実施形態に係るオペレーティングシステム再構成部は、決定されたアプリケーションの形態に基づいて、システムで割当可能なオペレーティングシステムパーティションを割り当て、割り当てられたオペレーティングシステムパーティションを再構成する。
すなわち、本発明の一実施形態に係るオペレーティングシステム再構成部は、Application0 320のためにリソースパーティションの割り当てを担当する。コアの数、メモリの大きさなどのリソース要求量は、ユーザまたはローダー(loader)が決定してリクエストし、本発明の一実施形態に係るオペレーティングシステム再構成部がシステムの使用可能リソースを把握して適切に割り当ててもよい。ここでは、core4個(core0、core1、core4、core5)に隣接するDRAM0のメモリを割り当てる。core4個とDRAM0のメモリはOSパーティション0 330のリソースとなる。
(3)本発明の一実施形態に係るオペレーティングシステム再構成部は、アプリケーションの形態(stream processing)に応じて該当OSパーティションをパイプライニング(pipelining)に設定する。同じ方式によりユーザがマルチスレッディング形態のApplication1 340を開始すれば、リソースを割り当てた後(core2、core3、core6、core7、DRAM1)、該当のOSパーティション0 350をSMP(Symmetric Multi−Processing)に設定する。
すなわち、本発明の一実施形態に係るオペレーティングシステム再構成部は、割り当てられたオペレーティングシステムパーティションをパイプライン(pipelining)、スキャタ−ギャザー(scatter−gather)、及び対称型マルチプロセッシング(SMP、Symmetric Multi−Processing)のうち少なくとも1つに設定し、オペレーティングシステムを再構成することができる。
図4は、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を通したアプリケーションの形態に係るOSパーティションの設定実施形態を説明する図である。
また、図5は、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を通したアプリケーションの形態を説明する実施形態を説明する図である。
本発明の一実施形態に係るアプリケーション決定部は、図4に示す図面符号410のように実行されるアプリケーションを確認し、前記確認されたアプリケーションに対してストリームプロセッシング、データ並列プロセッシング、及びマルチスレッディングのうち少なくとも1つの形態に決定してもよい。
ここで、オペレーティングシステム再構成部は、図4に示す図面符号420のように、決定されたオペレーティングシステム形態を確認し、割り当てられたオペレーティングシステムパーティションをパイプライン、スキャタ−ギャザー、及び対称型マルチプロセッシング(SMP)のうち少なくとも1つに設定して前記オペレーティングシステムを再構成することができる。
図4に示すように、多様な関数がオペレーティングシステム再構成部によって設定されたオペレーティングシステムパーティションに基づいてアクティブ化されたり非アクティブ化されてもよい。
図4に示す図面符号430に示された多様な関数は、チックハンドリング(tick handling)、マルチタスキング、ロードバランス、IPC(Inter−Process Communication)及びシンクロナイゼーションを含んでもよい。
図4に示す「X」は非アクティブ化状態の関数を、「O」はアクティブ化状態の関数を定義する。
もし、オペレーティングシステム再構成部が前記割り当てられたオペレーティングシステムパーティションをパイプラインに設定する場合、オペレーティングシステムのタスク間のデータ分配機能及びロードバランス機能のみをアクティブ化させて再構成してもよい。
もし、オペレーティングシステム再構成部が割り当てられたオペレーティングシステムパーティションをスキャタ−ギャザーに設定する場合、オペレーティングシステムのタスク間の通信機能及びタスク間の同期化機能のみをアクティブ化させて再構成してもよい。
もし、オペレーティングシステム再構成部が割り当てられたオペレーティングシステムパーティションを対称型マルチプロセッシング(SMP)に設定する場合、オペレーティングシステムの全ての機能をアクティブ化させて再構成してもよい。
具体的に説明すると、アプリケーションが図5に示すように、ストリームプロセッシングの形態510であれば、オペレーティングシステム再構成部は、図4の図面符号440に示すように割り当てられたオペレーティングシステムパーティションをパイプラインに設定する。
ここで、オペレーティングシステム再構成部は、コアにタスクを1つずつ実行してタスク間の通信及び同期化する機能以外の全ての機能を非アクティブ化させてもよい。
特定機能を非アクティブ化させれば、該当機能の実行時間オーバーヘッドが減少することでその分アプリケーションの性能が向上する。
もし、アプリケーションがデータ並列プロセッシング(data−parallel processing)の形態520であれば、オペレーティングシステム再構成部は、割り当てられたオペレーティングシステムパーティションをスキャタ−ギャザーに設定してオペレーティングシステムを再構成してもよい。
オペレーティングシステム再構成部が割り当てられたオペレーティングシステムパーティションをスキャタ−ギャザーに設定する場合、オペレーティングシステムにタスク間の通信機能及びタスク間の同期化機能のみをアクティブ化させて再構成してもよい。
オペレーティングシステム再構成部が割り当てられたオペレーティングシステムパーティションをスキャタ−ギャザーに設定する場合には、コアにワーカー(worker)タスクを1つずつ実行してタスク間のデータ分配が動的に行われ、追加的にロードバランス(load balancing)機能が必要である。
残りの機能は全て非アクティブ化される。これは図4に示す図面符号450に基づいて説明される。
オペレーティングシステム再構成部が割り当てられたオペレーティングシステムパーティションをマルチスレッディング形態530に設定すると、オペレーティングシステム再構成部は、割り当てられたオペレーティングシステムパーティションを対称型マルチプロセッシング(SMP)に設定する。ここで、オペレーティングシステム再構成部は、オペレーティングシステムの全ての機能をアクティブ化させ得る。図4の図面符号460に説明したように、チックハンドリング関数、マルチタスキング関数、ロードバランス関数、及びIPC、及びシンクロナイゼーション関数がアクティブ化される。
図6は、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を介して既存のアプリケーションが終了して新しいアプリケーションを開始する実施形態を説明する図である。
図6に示すように、システム610において、Application0が終了し、Application2 620が開始すれば、OSパーティション0のリソースcore0、core1、core4、core5、DRAM0は返還され、再びOSパーティション2 630のリソースcore0、core1、core4、core5、core8、core9、core12、core13、DRAM0、DRAM2が割り当てられる。
このようにリソースは、特定アプリケーション及びOSに固定されずに必要に応じて効率よく活用されることができる。
該当OSパーティションはアプリケーションの形態(data−parallel processing)に応じてスキャタ−ギャザーに設定されてもよい。
図7は、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法を説明するフローチャートである。
本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法は、まず、以前応用アプリケーションが終了する場合にリソースをオペレーティングシステムに返還する(S701)。
本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法は、新しいアプリケーション選択し(S702)、選択されたアプリケーションを開始する(S703)。
ここで、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法は、オペレーティングシステムによってコアまたはDRAMなどのリソースに前記実行されているアプリケーションを割り当てる(S704)。
次に、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法は、以前応用アプリケーションの形態からステップS703で新しく実行されている応用アプリケーションの形態が変更されたかを判断する(S705)。
ステップS705における判断結果の形態が変更されれば、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法は実行される応用アプリケーションの形態を決定し(S706)、前記決定された形態に基づいてオペレーティングシステムを再構成する(S707)。
もし、ステップS705における判断結果の形態が変更されていなければ、オペレーティングシステムを再構成せずに実行される応用アプリケーションを処理することができる。
図8A及び図8Bは、本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置を通した効果を説明する図である。
図8A及び図8Bを参照して本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法を用いる場合に期待される効果について説明する。
OSはアプリケーションに多様なシステムサービスを提供するために、図8Aに示すように、周期的なオーバーヘッド(tick handling810、load monitoring820など)を引き起こす。
もし、アプリケーションの形態に応じて、このようなOS機能が必要でなければ、該当オーバーヘッドを除去してシステム性能を向上させることができる。
アプリケーションのタスクが実行中に(データを待機するか同期化問題などによって)ブロック(block)されれば、図8Bに示すようにタスクスイッチ(task switch)が発生する。その後、ブロックされた部分が解決されて再びresumeする時もタスクスイッチ530が発生する。もし、アプリケーションの形態に応じて実行可能なタスクが1つに限定されれば、タスクスイッチ530を行わないことによって該当のオーバーヘッドを除去することでタスクの応答時間を早めることができる。
本発明の一実施形態に係るメニーコアシステムのためのオペレーティングシステム動的再構成方法は、多様なコンピュータ手段によって実行されるプログラム命令形態で実現され、コンピュータで読み取り可能な媒体に記録されてもよい。前記コンピュータで読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含んでもよい。前記媒体に記録されるプログラム命令は、本発明のために特別に設計されて構成されたものであってもよく、コンピュータソフトウェア当業者に公示されて使用可能なものであってもよい。
上述したように、本発明は限定された実施形態と図面によって説明されたが、本発明が上述した実施形態に限定されることはなく、本発明が属する分野において通常の知識を有する者であれば、このような記載から多様な修正および変形が可能である。
したがって、本発明の範囲は、説明された実施形態に限定されて決定されてはならず、添付する特許請求の範囲だけでなく、この特許請求の範囲と均等なものなどによって定められなければならない。
310 リソース
320 Application0
330 OS partition0
340 Application1
350 OS partition1

Claims (16)

  1. 実行されるアプリケーションの形態を決定するアプリケーション形態決定部と、
    前記決定されたアプリケーションの形態に基づいて、オペレーティングシステムの少なくとも1つ以上の機能を非アクティブ化させ、前記オペレーティングシステムを再構成するオペレーティングシステム再構成部と、
    を備えることを特徴とするメニーコアシステムのためのオペレーティングシステム動的再構成装置。
  2. 前記アプリケーション決定部は、前記実行されるアプリケーションを確認し、前記確認されたアプリケーションに対してストリームプロセッシング、データ並列プロセッシング、及びマルチスレッディングのうち少なくとも1つの形態に決定することを特徴とする、請求項1に記載のオペレーティングシステム動的再構成装置。
  3. 前記オペレーティングシステム再構成部は、前記決定されたアプリケーションの形態に基づいて、システムで割当可能なオペレーティングシステムパーティションを割り当て、前記割り当てられたオペレーティングシステムパーティションを再構成することを特徴とする、請求項1または2に記載のオペレーティングシステム動的再構成装置。
  4. 前記オペレーティングシステム再構成部は、前記割り当てられたオペレーティングシステムパーティションをパイプライン、スキャタ−ギャザー、及び対称型マルチプロセッシング(SMP)のうち少なくとも1つに設定し、前記オペレーティングシステムを再構成することを特徴とする、請求項3に記載のオペレーティングシステム動的再構成装置。
  5. 前記オペレーティングシステム再構成部は、前記割り当てられたオペレーティングシステムパーティションをパイプラインに設定する場合、前記オペレーティングシステムのタスク間のデータ分配機能及びロードバランス機能のみをアクティブ化させて再構成することを特徴とする、請求項4に記載のオペレーティングシステム動的再構成装置。
  6. 前記オペレーティングシステム再構成部は、前記割り当てられたオペレーティングシステムパーティションをスキャタ−ギャザーに設定する場合、前記オペレーティングシステムのタスク間の通信機能及びタスク間の同期化機能のみをアクティブ化させて再構成することを特徴とする、請求項4または5に記載のオペレーティングシステム動的再構成装置。
  7. 前記オペレーティングシステム再構成部は、実行されたアプリケーションタイプに対する適切な実行において、不要であると判断されれば、前記少なくとも1つ以上の機能を非アクティブ化させることを特徴とする、請求項4ないし6いずれか一項に記載のオペレーティングシステム動的再構成装置。
  8. 実行されるアプリケーションの形態を決定するステップと、
    前記決定されたアプリケーションの形態に基づいて、オペレーティングシステムの少なくとも1つ以上の機能を非アクティブ化させ、前記オペレーティングシステムを再構成するステップと、
    を含むことを特徴とするメニーコアシステムのためのオペレーティングシステム動的再構成方法。
  9. 前記実行されるアプリケーションの形態を決定するステップは、前記実行されるアプリケーションを確認し、前記確認されたアプリケーションに対してストリームプロセッシング、データ並列プロセッシング、及びマルチスレッディングのうち少なくとも1つの形態に決定するステップを含むことを特徴とする、請求項8に記載のオペレーティングシステム動的再構成方法。
  10. 前記オペレーティングシステムを再構成するステップは、
    前記決定されたアプリケーションの形態に基づいて、システムの割当可能なオペレーティングシステムパーティションを割り当てるステップと、
    前記割り当てられたオペレーティングシステムパーティションを再構成するステップと、
    を含むことを特徴とする、請求項8または9に記載のオペレーティングシステム動的再構成方法。
  11. 請求項8ないし10いずれか一項に記載の方法を行うためのプログラムが記録されたコンピュータで読み出し可能な記録媒体。
  12. メニーコアシステムで実行されるアプリケーションのタイプを決定するステップと、
    前記アプリケーションのタイプに関連する形態を決定するステップと、
    前記決定されたアプリケーションの形態に基づいて、オペレーティングシステムの少なくとも1つ以上の機能を非アクティブ化させるステップと、
    を含むことを特徴とするメニーコアシステムのためのオペレーティングシステム動的再構成方法。
  13. 前記機能はオーバーヘッド機能を含むことを特徴とする、請求項12に記載のオペレーティングシステム動的再構成方法。
  14. 前記機能は少なくとも1つ以上のチックハンドリング機能、マルチタスキング機能、ロードバランス機能、IPC(Inter−Process Communication)及びシンクロナイゼーション機能を含むことを特徴とする、請求項12または13に記載のオペレーティングシステム動的再構成方法。
  15. 実行されたアプリケーションタイプに対する適切な実行において、不要であると判断されれば、前記少なくとも1つ以上の機能を非アクティブ化させるステップをさらに含むことを特徴とする、請求項12ないし14いずれか一項に記載のオペレーティングシステム動的再構成方法。
  16. 請求項12ないし15いずれか一項に記載の方法を行うためのプログラムが記録されたコンピュータで読み出し可能な記録媒体。
JP2013000261A 2012-01-05 2013-01-04 メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法 Pending JP2013140596A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020120001461A KR101867960B1 (ko) 2012-01-05 2012-01-05 매니 코어 시스템을 위한 운영체제 동적 재구성 장치 및 방법
KR10-2012-0001461 2012-01-05

Publications (1)

Publication Number Publication Date
JP2013140596A true JP2013140596A (ja) 2013-07-18

Family

ID=48744782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013000261A Pending JP2013140596A (ja) 2012-01-05 2013-01-04 メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法

Country Status (4)

Country Link
US (1) US9158551B2 (ja)
JP (1) JP2013140596A (ja)
KR (1) KR101867960B1 (ja)
CN (1) CN103226480A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9110731B1 (en) * 2012-08-15 2015-08-18 Xiotech Corporation Hard allocation of resources partitioning
US9755902B2 (en) 2014-05-20 2017-09-05 Via Alliance Semiconductor Co., Ltd. Dynamic system configuration based on cloud-collaborative experimentation
US9575778B2 (en) 2014-05-20 2017-02-21 Via Alliance Semiconductor Co., Ltd. Dynamically configurable system based on cloud-collaborative experimentation
US20160378545A1 (en) * 2015-05-10 2016-12-29 Apl Software Inc. Methods and architecture for enhanced computer performance

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259417A (ja) * 1999-03-12 2000-09-22 Sony Corp データ処理装置、データ処理方法及びプログラム提供媒体
WO2008152967A1 (ja) * 2007-06-12 2008-12-18 Nec Corporation 情報処理装置、実行環境転送方法及びそのプログラム

Family Cites Families (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5179702A (en) * 1989-12-29 1993-01-12 Supercomputer Systems Limited Partnership System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
US5303369A (en) * 1990-08-31 1994-04-12 Texas Instruments Incorporated Scheduling system for multiprocessor operating system
KR100294876B1 (ko) * 1995-11-01 2001-09-17 윤종용 동적재구성이가능한운영체제및운영체제의동적재구성방법
NO304626B1 (no) * 1996-12-19 1999-01-18 Ericsson Telefon Ab L M FremgangsmÕte for Õ redusere st°y
JP3027845B2 (ja) * 1997-11-21 2000-04-04 オムロン株式会社 プログラム制御装置および方法
US6609170B1 (en) * 1999-12-29 2003-08-19 Intel Corporation Method and apparatus for BIOS control of electrical device address/identification assignments
US7661107B1 (en) * 2000-01-18 2010-02-09 Advanced Micro Devices, Inc. Method and apparatus for dynamic allocation of processing resources
JP2001344875A (ja) * 2000-05-30 2001-12-14 Ricoh Co Ltd 情報記録システム及び情報記憶媒体
JP4214682B2 (ja) * 2001-01-24 2009-01-28 株式会社日立製作所 計算機およびその入出力手段
US20020103847A1 (en) * 2001-02-01 2002-08-01 Hanan Potash Efficient mechanism for inter-thread communication within a multi-threaded computer system
US7996847B2 (en) * 2006-12-13 2011-08-09 International Business Machines Corporation Method for correlating processor usage to customer billing in an on-demand server with real-time allocation/deallocation of processing resources
US6694419B1 (en) * 2002-04-12 2004-02-17 Barsa Consulting Group, Llc Method and system for automatically measuring partition memory needs in a partitioned computer system
WO2004001597A2 (en) * 2002-06-20 2003-12-31 Matsushita Electric Industrial Co., Ltd. Multitask control device and music data reproduction device
TW573275B (en) * 2002-08-30 2004-01-21 Acer Inc Recovery method and device of computer operating system and method for building computer system with BTC model
US7509644B2 (en) * 2003-03-04 2009-03-24 Secure 64 Software Corp. Operating system capable of supporting a customized execution environment
US7496915B2 (en) * 2003-04-24 2009-02-24 International Business Machines Corporation Dynamic switching of multithreaded processor between single threaded and simultaneous multithreaded modes
US7139855B2 (en) * 2003-04-24 2006-11-21 International Business Machines Corporation High performance synchronization of resource allocation in a logically-partitioned system
US8463996B2 (en) * 2003-08-19 2013-06-11 Oracle America, Inc. Multi-core multi-thread processor crossbar architecture
US7877754B2 (en) * 2003-08-21 2011-01-25 International Business Machines Corporation Methods, systems, and media to expand resources available to a logical partition
US7752470B2 (en) * 2003-12-03 2010-07-06 International Business Machines Corporation Method and system for power management including device controller-based device use evaluation and power-state control
US20050132121A1 (en) * 2003-12-16 2005-06-16 Wind River Systems, Inc. Partitioned operating system tool
US7688746B2 (en) * 2003-12-29 2010-03-30 Intel Corporation Method and system for dynamic resource allocation
US7398380B1 (en) * 2004-02-13 2008-07-08 Fabric7 Systems, Inc. Dynamic hardware partitioning of symmetric multiprocessing systems
US20050289213A1 (en) * 2004-06-25 2005-12-29 International Business Machines Corporation Switching between blocking and non-blocking input/output
JP4148223B2 (ja) * 2005-01-28 2008-09-10 セイコーエプソン株式会社 プロセッサおよび情報処理方法
US20060206891A1 (en) * 2005-03-10 2006-09-14 International Business Machines Corporation System and method of maintaining strict hardware affinity in a virtualized logical partitioned (LPAR) multiprocessor system while allowing one processor to donate excess processor cycles to other partitions when warranted
US7697536B2 (en) * 2005-04-01 2010-04-13 International Business Machines Corporation Network communications for operating system partitions
US7627770B2 (en) * 2005-04-14 2009-12-01 Mips Technologies, Inc. Apparatus and method for automatic low power mode invocation in a multi-threaded processor
US7752620B2 (en) * 2005-06-06 2010-07-06 International Business Machines Corporation Administration of locks for critical sections of computer programs in a computer that supports a multiplicity of logical partitions
US8108787B2 (en) * 2005-07-01 2012-01-31 Microsoft Corporation Distributing input events to multiple applications in an interactive media environment
GB0519981D0 (en) * 2005-09-30 2005-11-09 Ignios Ltd Scheduling in a multicore architecture
JP2007133723A (ja) * 2005-11-11 2007-05-31 Hitachi Ltd マルチプロセッサ、タスクスケジューリング方法、及びコンパイラ
US20110284625A1 (en) * 2005-12-16 2011-11-24 Taylor Smith Digital image capture and processing system supporting multiple third party code plug-ins with configuration files having conditional programming logic controlling the chaining of multiple third-party plug-ins
US7428609B2 (en) * 2005-12-29 2008-09-23 Intel Corporation Method and system to partition hardware resources between operating systems
US8914618B2 (en) * 2005-12-29 2014-12-16 Intel Corporation Instruction set architecture-based inter-sequencer communications with a heterogeneous resource
DE102006008248A1 (de) * 2006-02-22 2007-08-23 Giesecke & Devrient Gmbh Betriebssystem für eine Chipkarte mit einem Multi-Tasking Kernel
US20070204268A1 (en) * 2006-02-27 2007-08-30 Red. Hat, Inc. Methods and systems for scheduling processes in a multi-core processor environment
US20070266391A1 (en) * 2006-04-27 2007-11-15 Hoffman Philip M System and method for separating multi-workload processor utilization on a metered computer system
US8074026B2 (en) * 2006-05-10 2011-12-06 Intel Corporation Scatter-gather intelligent memory architecture for unstructured streaming data on multiprocessor systems
US8146089B2 (en) * 2006-06-14 2012-03-27 Intel Corporation Sharing resources of a partitioned system
JP2008033877A (ja) 2006-06-29 2008-02-14 Mitsubishi Electric Corp 情報処理装置及びos起動方法及びプログラム
JP4476267B2 (ja) * 2006-10-06 2010-06-09 株式会社日立製作所 プロセッサ及びデータ転送ユニット
US20080115150A1 (en) * 2006-11-15 2008-05-15 International Business Machines Corporation Methods for applications to utilize cross operating system features under virtualized system environments
US8127099B2 (en) * 2006-12-26 2012-02-28 International Business Machines Corporation Resource recovery using borrowed blocks of memory
US8336046B2 (en) 2006-12-29 2012-12-18 Intel Corporation Dynamic VM cloning on request from application based on mapping of virtual hardware configuration to the identified physical hardware resources
US7673113B2 (en) * 2006-12-29 2010-03-02 Intel Corporation Method for dynamic load balancing on partitioned systems
KR20080064608A (ko) * 2007-01-05 2008-07-09 삼성전자주식회사 SPI(Simple PriorityInheritance) 방식에 따른 멀티태스킹 방법 및임베디드 시스템
KR101366802B1 (ko) * 2007-01-05 2014-02-21 삼성전자주식회사 실시간 운영체제를 위한 스케쥴링 방법 및 장치
US8056084B2 (en) * 2007-01-25 2011-11-08 Hewlett-Packard Development Company, L.P. Method and system for dynamically reallocating a resource among operating systems without rebooting of the computer system
US8407451B2 (en) 2007-02-06 2013-03-26 International Business Machines Corporation Method and apparatus for enabling resource allocation identification at the instruction level in a processor system
US7844977B2 (en) * 2007-02-20 2010-11-30 International Business Machines Corporation Identifying unnecessary synchronization objects in software applications
JP2008234191A (ja) * 2007-03-19 2008-10-02 Toshiba Corp ハードウエアモニタ管理装置及びハードウエアモニタ機能の実行方法
US7856562B2 (en) * 2007-05-02 2010-12-21 Advanced Micro Devices, Inc. Selective deactivation of processor cores in multiple processor core systems
US20080294866A1 (en) * 2007-05-22 2008-11-27 Hewlett-Packard Development Company, L.P. Method And Apparatus For Memory Management
US8589943B2 (en) * 2007-08-15 2013-11-19 Sony Computer Entertainment Inc. Multi-threaded processing with reduced context switching
JP5210730B2 (ja) 2007-11-28 2013-06-12 株式会社日立製作所 仮想マシンモニタ及びマルチプロセッサシステム
KR100962531B1 (ko) 2007-12-11 2010-06-15 한국전자통신연구원 동적 로드 밸런싱을 지원하는 멀티 쓰레딩 프레임워크를 수행하는 장치 및 이를 이용한 프로세싱 방법
US8151068B2 (en) * 2008-02-04 2012-04-03 Microsoft Corporation Data copy management for faster reads
JP5574394B2 (ja) * 2008-02-20 2014-08-20 日本電気株式会社 Osイメージ縮小プログラムおよびosイメージ縮小プログラムを記録した記録媒体
US8386672B2 (en) * 2008-07-08 2013-02-26 Dell Products L.P. Systems, methods and media for disabling graphic processing units
JP5215779B2 (ja) * 2008-09-01 2013-06-19 キヤノン株式会社 情報処理装置及び情報処理方法
KR101557995B1 (ko) 2008-10-08 2015-10-19 엘지전자 주식회사 다중 운영체제를 지원하는 단말기 및 그 단말기에 대한시스템 자원 할당 방법
US8245233B2 (en) 2008-12-16 2012-08-14 International Business Machines Corporation Selection of a redundant controller based on resource view
US20100169673A1 (en) * 2008-12-31 2010-07-01 Ramakrishna Saripalli Efficient remapping engine utilization
US8271818B2 (en) * 2009-04-30 2012-09-18 Hewlett-Packard Development Company, L.P. Managing under-utilized resources in a computer
US8022526B2 (en) * 2009-08-07 2011-09-20 Advanced Processor Architectures, Llc Distributed computing
US8453122B2 (en) 2009-11-10 2013-05-28 International Business Machines Corporation Symmetric multi-processor lock tracing
US20110161592A1 (en) * 2009-12-31 2011-06-30 Nachimuthu Murugasamy K Dynamic system reconfiguration
US9183109B2 (en) * 2010-05-25 2015-11-10 Intel Corporation Method and system for analyzing the performance of multi-threaded applications
US8458402B1 (en) * 2010-08-16 2013-06-04 Symantec Corporation Decision-making system and method for improving operating system level 2 cache performance
US8656408B2 (en) * 2010-09-30 2014-02-18 International Business Machines Corporations Scheduling threads in a processor based on instruction type power consumption
US8250513B1 (en) * 2010-11-04 2012-08-21 Xilinx, Inc. Parallel process optimized signal routing
US8875148B2 (en) * 2011-06-14 2014-10-28 International Business Machines Corporation Product-specific system resource allocation within a single operating system instance

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259417A (ja) * 1999-03-12 2000-09-22 Sony Corp データ処理装置、データ処理方法及びプログラム提供媒体
WO2008152967A1 (ja) * 2007-06-12 2008-12-18 Nec Corporation 情報処理装置、実行環境転送方法及びそのプログラム

Also Published As

Publication number Publication date
US9158551B2 (en) 2015-10-13
KR20130080587A (ko) 2013-07-15
US20130179674A1 (en) 2013-07-11
CN103226480A (zh) 2013-07-31
KR101867960B1 (ko) 2018-06-18

Similar Documents

Publication Publication Date Title
US10810045B2 (en) Method and apparatus for allocating central processing unit (CPU) resources in a default resource pool
US9588789B2 (en) Management apparatus and workload distribution management method
US9563474B2 (en) Methods for managing threads within an application and devices thereof
US8631403B2 (en) Method and system for managing tasks by dynamically scaling centralized virtual center in virtual infrastructure
US8893148B2 (en) Performing setup operations for receiving different amounts of data while processors are performing message passing interface tasks
US8762999B2 (en) Guest-initiated resource allocation request based on comparison of host hardware information and projected workload requirement
EP3253027B1 (en) Resource allocation method and apparatus for virtual machines
KR101651871B1 (ko) 멀티코어 시스템 상에서 단위 작업을 할당하는 방법 및 그 장치
US8127300B2 (en) Hardware based dynamic load balancing of message passing interface tasks
US20090064168A1 (en) System and Method for Hardware Based Dynamic Load Balancing of Message Passing Interface Tasks By Modifying Tasks
US20090063885A1 (en) System and Computer Program Product for Modifying an Operation of One or More Processors Executing Message Passing Interface Tasks
JP6679146B2 (ja) 電力管理のための論理的にパーティション化された環境のイベント駆動型再最適化
US8352702B2 (en) Data processing system memory allocation
KR20110046719A (ko) 복수 코어 장치 및 그의 로드 조정 방법
US11461120B2 (en) Methods and apparatus for rack nesting in virtualized server systems
EP3274859B1 (en) Cluster computing service assurance apparatus and method
KR20120066189A (ko) 매니코어 시스템에서 응용 프로그램의 상태를 동적으로 재구성하는 장치 및 방법
WO2016092856A1 (ja) 情報処理装置、情報処理システム、タスク処理方法、及び、プログラムを記憶する記憶媒体
US20120144389A1 (en) Optimizing virtual image deployment for hardware architecture and resources
JP2013140596A (ja) メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法
US9015418B2 (en) Self-sizing dynamic cache for virtualized environments
JP6461224B2 (ja) 中央処理装置のリソース割当方法及び計算ノード
KR102014246B1 (ko) 리소스 통합관리를 위한 메소스 처리 장치 및 방법
US10412193B2 (en) Usage-aware standby service in a grid environment
KR20120040088A (ko) 멀티 코어 프로세서 시스템의 동적 가상화 기법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151028

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161115

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170523

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20171219