JP6695942B2 - 情報処理装置、制御方法、及びプログラム - Google Patents

情報処理装置、制御方法、及びプログラム Download PDF

Info

Publication number
JP6695942B2
JP6695942B2 JP2018157591A JP2018157591A JP6695942B2 JP 6695942 B2 JP6695942 B2 JP 6695942B2 JP 2018157591 A JP2018157591 A JP 2018157591A JP 2018157591 A JP2018157591 A JP 2018157591A JP 6695942 B2 JP6695942 B2 JP 6695942B2
Authority
JP
Japan
Prior art keywords
application
signal processing
processing device
command
applications
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
JP2018157591A
Other languages
English (en)
Other versions
JP2020030766A (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.)
Lenovo Singapore Pte Ltd
Original Assignee
Lenovo Singapore Pte 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 Lenovo Singapore Pte Ltd filed Critical Lenovo Singapore Pte Ltd
Priority to JP2018157591A priority Critical patent/JP6695942B2/ja
Priority to US16/549,324 priority patent/US10970806B2/en
Publication of JP2020030766A publication Critical patent/JP2020030766A/ja
Application granted granted Critical
Publication of JP6695942B2 publication Critical patent/JP6695942B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Stored Programmes (AREA)
  • Power Sources (AREA)

Description

本発明は、情報処理装置、制御方法、及びプログラムに関する。
パーソナルコンピュータに、処理能力を向上させるために外付けの信号処理装置が接続される場合がある。例えば、グラフィックコントローラ(GPU:Graphics Processing Unit)を内蔵したパーソナルコンピュータに、さらに外付けのGPU(eGPU:external GPU)が接続される場合がある(例えば、特許文献1参照)。
特表2015−505395号公報
アプリケーションが外付けの信号処理装置を使用している状態で外付けの信号処理装置を取り外して接続を解除すると、アプリケーションやシステムがハングアップしてしまうことがある。これは、外付けの信号処理装置を使用中のアプリケーションがデータの少なくとも一部を外付けの信号処理装置内のメモリに保存しているため、参照できなくなるためである。そのため、従来は、外付けの信号処理装置の接続を解除する場合、接続を解除する前に、外付けの信号処理装置を使用中のアプリケーションのリストを表示し、ユーザにアプリケーションの終了を促すことにより、正常に接続を解除できるようにしている。
しかしながら、リスト表示したアプリケーションの全てをユーザが終了してくれるとは限らない。また、アプリケーションを一つ一つデータを保存しながら終了するのは、操作が煩雑であり、利便性が損なわれていた。
本発明は、上記した事情に鑑みてなされたもので、外付けの信号処理装置との接続を解除する際の煩わしい操作を軽減し利便性を向上する情報処理装置、制御方法、及びプログラムを提供することを目的の一つとする。
本発明は上記の課題を解決するためになされたものであり、本発明の第1態様に係るアプリケーションを実行可能な情報処理装置は、アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得する要求情報取得部と、前記アプリケーションで作業中のファイルを保存可能な記憶部と、前記要求情報取得部が前記接続解除要求情報を取得した場合、実行中の前記アプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションに対して、作業中のファイルを前記記憶部に保存してから終了する指示を示す第1コマンドを発行する終了制御部と、を備える。
上記情報処理装置は、前記信号処理装置との接続が解除されたことが検出された場合、前記終了制御部が前記第1コマンドを発行したアプリケーションに対して、前記記憶部に保存されているファイルを読み込んで起動するレジュームモードで再起動させる指示を示す第2コマンドを発行する起動制御部、を備えてもよい。
上記情報処理装置は、実行中の前記アプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションのリストを取得するリスト取得部と、前記リスト取得部が取得したアプリケーションのリストに基づいて、前記信号処理装置による信号処理を使用中のアプリケーションから、当該アプリケーションにおいて定義されている前記第2コマンドに関する情報を取得するコマンド取得部と、を備えてもよい。
前記終了制御部は、前記リスト取得部が取得したアプリケーションのリストのうち、前記コマンド取得部が前記第2コマンドに関する情報を取得したアプリケーションについては、前記第1コマンドを発行し、前記リスト取得部が取得したアプリケーションのリストのうち、前記コマンド取得部が前記第2コマンドに関する情報を取得できなかったアプリケーションについては、ユーザに対して作業中のファイルを保存してから終了する操作を促してもよい。
上記情報処理装置は、前記信号処理装置との接続が解除された後に再び接続されたことが検出された場合、前記終了制御部が前記第1コマンドを発行したアプリケーションに対して、前記記憶部に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示す第2コマンドを発行する起動制御部、を備えてもよい。
上記情報処理装置は、アプリケーションを実行することにより行われる信号処理を実行する第1信号処理部、を内部に備え、前記信号処理装置は、前記第1信号処理部より高い処理能力を有する第2信号処理部を備えてもよい。
また、本発明の第2態様に係るアプリケーションを実行可能な情報処理装置は、アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得する要求情報取得部と、前記要求情報取得部が前記接続解除要求情報を取得したときに実行中の前記アプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションのリストを取得するリスト取得部と、前記アプリケーションで作業中のファイルを保存可能な記憶部と、前記信号処理装置との接続が解除されたことが検出された場合、前記リスト取得部が取得したリストに含まれるアプリケーションであって且つ作業中のファイルを前記記憶部に保存してから終了したアプリケーションに対して、当該記憶部に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示すコマンドを発行する起動制御部と、を備える。
また、本発明の第3態様に係るアプリケーションを実行可能な情報処理装置における制御方法は、要求情報取得部が、アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得するステップと、終了制御部が、前記要求情報取得部が前記接続解除要求情報を取得した場合、実行中のアプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションに対して、作業中のファイルを記憶部に保存してから終了する指示を示す第1コマンドを発行するステップと、を有する。
また、本発明の第4態様に係るプログラムは、アプリケーションを実行可能な情報処理装置としてのコンピュータに、アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得するステップと、前記接続解除要求情報を取得した場合、実行中のアプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションに対して、作業中のファイルを記憶部に保存してから終了する指示を示す第1コマンドを発行するステップと、を実行させる。
また、本発明の第5態様に係るアプリケーションを実行可能な情報処理装置における制御方法は、要求情報取得部が、アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得するステップと、リスト取得部が、前記要求情報取得部が前記接続解除要求情報を取得したときに実行中のアプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションのリストを取得するステップと、起動制御部が、前記信号処理装置との接続が解除されたことが検出された場合、前記リスト取得部が取得したリストに含まれるアプリケーションであって且つ作業中のファイルを記憶部に保存してから終了したアプリケーションに対して、当該記憶部に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示すコマンドを発行するステップと、を有する。
また、本発明の第6態様に係るプログラムは、アプリケーションを実行可能な情報処理装置としてのコンピュータに、実行されるアプリケーションによる信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得するステップと、前記接続解除要求情報を取得したときに実行中のアプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションのリストを取得するステップと、前記信号処理装置との接続が解除されたことが検出された場合、前記リストに含まれるアプリケーションであって且つ作業中のファイルを記憶部に保存してから終了したアプリケーションに対して、当該記憶部に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示すコマンドを発行するステップと、を実行させる。
本発明の上記態様によれば、外付けの信号処理装置との接続を解除する際の煩わしい操作を軽減し利便性を向上することができる。
実施形態に係る情報処理システムの一例を示すブロック図。 実施形態に係るパーソナルコンピュータおよび外付GPU装置の内部構成を示すブロック図。 実施形態に係るCPU112の機能構成の一例を示すブロック図。 GPUを使用中のアプリケーションのリストを取得する処理の説明図。 eGPUを使用中のアプリケーションからレジュームコマンドに関する情報を取得する処理の説明図。 eGPUを使用中のアプリケーションを保存終了させる処理の説明図。 eGPUアプリによる表示画面の一例を示す図。 レジュームモードに非対応のアプリケーションを終了させる処理の説明図。 レジュームモード対応アプリケーションを再起動させる処理の説明図。 レジュームモード非対応のアプリケーションを再起動させる処理の説明図。 実施形態に係るeGPU接続解除処理の一例を示すフローチャート。
以下、図面を参照しながら本発明の実施形態について詳しく説明する。なお、各図において同一部分には同一符号を付している。
図1は、本実施形態に係る情報処理システムの一例を示すブロック図である。情報処理システム1は、例えば、パーソナルコンピュータ100と、外付GPU(Graphics Processing Unit)装置200と、表示装置300とを備えている。パーソナルコンピュータ100と外付GPU装置200とは、第1接続ケーブル10によりデータ通信可能に接続される。外付GPU装置200と表示装置300とは、第2接続ケーブル20によりデータ通信可能に接続される。
パーソナルコンピュータ100は、キーボード112、タッチパッド116、表示部110を備えたラップトップ型のパーソナルコンピュータである。例えば、パーソナルコンピュータ100は、内蔵のGPUを備えているが、外付GPU装置200を接続することで外付GPU装置200に描画処理を行わせることもできる。
外付GPU装置200は、パーソナルコンピュータ100がアプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する信号処理装置の一例である。例えば、外付GPU装置200は、パーソナルコンピュータ100に接続される外付けのGPU(所謂eGPU:external GPU)を含み、表示する映像を描画するための描画処理を行う描画処理装置である。一例として、外付GPU装置200は、パーソナルコンピュータ100の内蔵GPUよりも処理能力が高く、高速なグラフィックパフォーマンスが得られる。外付GPU装置200は、パーソナルコンピュータ100への接続及び切断が可能であり、必要に応じてパーソナルコンピュータ100へ動的に追加できる。
例えば、外付GPU装置200は、映像データに対して描画処理を行った映像信号を外付GPU装置200に接続されている表示装置300に第2接続ケーブル20を介して出力する。表示装置300は、外付けのディスプレイであり、例えば、液晶ディスプレイパネル、有機EL(ElectroLuminescence)ディスプレイパネルなどを含んで構成される。表示装置300は、外付GPU装置200から出力される映像信号に基づく映像を表示する。例えば、表示装置300は、パーソナルコンピュータ100に備えられている表示部110よりも大画面且つ高精細な表示が可能である。
なお、外付GPU装置200は、描画処理を行った映像信号を外付GPU装置200に接続されているパーソナルコンピュータ100へ第1接続ケーブル10を介して出力して、パーソナルコンピュータ100の表示部110に表示させてもよい。つまり、外付GPU装置200から出力される映像信号に基づく映像は、表示装置300とパーソナルコンピュータ100の表示部110とのいずれに表示させてもよい。つまり、図1に示した情報処理システム1は、表示装置300を備えるが、これに限定されず、少なくともパーソナルコンピュータ100と外付GPU装置200とを備えていればよく、表示装置300を備えていなくてもよい。
図2は、本実施形態に係るパーソナルコンピュータおよび外付GPU装置の内部構成を示すブロック図である。図示するパーソナルコンピュータ100は、第1入出力部102と、第1入出力制御部104と、第1記憶部106と、操作受付部108と、表示部110と、CPU(Central Processing Unit)112とを備えている。パーソナルコンピュータ100は、情報処理装置の一例である。情報処理装置は、ラップトップ型のパーソナルコンピュータに限定されず、デスクトップ型やタブレット型のパーソナルコンピュータ、スマートフォンなどであってもよい。
第1入出力部102は、データの入出力を行うインターフェースである。例えば、第1入出力部102は、第1接続ケーブル10を介して外付GPU装置200に接続可能である。第1入出力部102は、例えば、Thunderbolt(登録商標)3規格に準じたインターフェースであり、USB(Universal Serial Bus)Type-C規格のコネクタを含んで構成されている。
第1入出力制御部104は、第1入出力部102の動作を制御する。例えば、第1入出力制御部104は、第1入出力部102に第1接続ケーブル10を介して外付GPU装置200が接続された場合、外付GPU装置200が接続されたことを検出する。そして、第1入出力制御部104は、外付GPU装置200が接続されたことを検出すると、第1入出力部102を介して行う外付GPU装置200と通信動作を制御する。また、第1入出力部102は、第1入出力部102に第1接続ケーブル10を介して接続されていた外付GPU装置200が取り外されると、外付GPU装置200との接続が切断されたことを検出する。
また、第1入出力制御部104は、表示部110に映像信号を出力するか否かを制御する。例えば、パーソナルコンピュータ100の内蔵モニタの表示がONに設定された場合、第1入出力制御部104は、表示部110に映像信号を出力する。また、パーソナルコンピュータ100の内蔵モニタの表示がOFFに設定された場合、第1入出力制御部104は、表示部110に映像信号を出力しない。内蔵モニタの表示のON/OFFの設定は、キーボード112に対するユーザの操作や、OS(Operating System)が提供する設定画面に対するユーザの操作によって設定される。
第1記憶部106は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、ROM(Read-Only Memory)、RAM(Random Access Memory)などを含み、パーソナルコンピュータ100が処理する各種情報や映像データ、プログラム等を記憶する。なお、第1記憶部106は、パーソナルコンピュータ100に内蔵されるものに限らず、USB等のデジタル入出力ポート等によって接続された外付けの記憶装置がふくまれてもよい。
操作受付部108は、パーソナルコンピュータ100に設けられたキーボード112やタッチパッド116に対するユーザの操作を受け付け、受け付けた操作に基づく操作信号を出力する。なお、表示部110がタッチパネルとして構成されている場合には、操作受付部108は、タッチパネルに対するユーザの操作を受け付けてもよい。また、USBなどにより接続されるマウスなどの外付けの操作デバイスに対するユーザの操作を受け付けてもよい。
表示部110は、映像やテキスト等の情報を表示するディスプレイであり、例えば、液晶ディスプレイパネル、有機ELディスプレイパネルなどを含んで構成される。
CPU112は、第1記憶部106に記憶されているOSのプログラムや各種のアプリケーションのプログラムを実行することにより各種の演算や制御、処理などを行う。また、CPU112は、例えば、各種のアプリケーションを実行することにより行われる処理において、表示する映像を描画するための描画処理を行う内蔵GPU112aを備えている。内蔵GPU112aは、映像データに対して描画処理を行うことで映像信号を生成する。CPU112は、生成した映像信号を第1入出力制御部104に出力する。また、CPU112は、表示する映像を描画するための描画処理を外付GPU装置200に行わせる場合、上記の内蔵GPU112aが行う描画処理前の映像データを第1入出力制御部104に出力する。これにより、第1入出力制御部104は、第1入出力部102に接続された第1接続ケーブル10を介して外付GPU装置200に映像データを出力する。
外付GPU装置200は、例えば、第2入出力部202と、第3入出力部204と、第2入出力制御部206と、eGPU208と、第2記憶部210とを備えている。
第2入出力部202は、データの入出力を行うインターフェースである。例えば、第2入出力部202は、第1接続ケーブル10を介して外付GPU装置200に接続可能である。なお、第2入出力部202は、例えば、Thunderbolt(登録商標)3規格に準じたインターフェースであり、USB(Universal Serial Bus)Type-C規格のコネクタを含んで構成されている。
第3入出力部204は、第2接続ケーブル20を介して接続される表示装置300に映像信号を出力する。例えば、第3入出力部204は、例えば、Thunderbolt(登録商標)3規格に準じたインターフェースであり、USB(Universal Serial Bus)Type-C規格のコネクタを含んで構成されている。なお、第3入出力部204は、Display PortやHDMI(登録商標)(High−Definition Multimedia Interface)に準拠した出力専用のインターフェースを採用してもよい。
第2入出力制御部206は、第2入出力部202及び第3入出力部204の動作を制御する。例えば、第2入出力制御部206は、第2入出力部202に第1接続ケーブル10を介して接続されたパーソナルコンピュータ100から映像データを取得する。また、第2入出力制御部206は、取得した映像データに対してeGPU208が描画処理を行うことにより生成された映像信号を、第3入出力部204に接続される第2接続ケーブル20を介して表示装置300に出力する。なお、第2入出力制御部206は、生成された映像信号を第2入出力部202に接続された第1接続ケーブル10を介してパーソナルコンピュータ100へ出力してもよい。
eGPU208は、映像を描画する描画処理に特化した演算装置(プロセッサ)である。パーソナルコンピュータ100から出力された映像データに対して、表示する映像を描画するための描画処理を行う。
第2記憶部210は、揮発性メモリ(例えば、RAM(Random Access Memory))であり、eGPU208が描画処理を行う際のフレームバッファなどとして利用される。例えば、第2記憶部210には、eGPU208が描画処理を行う映像データ(パーソナルコンピュータ100から出力された映像データ)や、eGPU208が行う描画処理後のデータなどが保存される。
ここで、パーソナルコンピュータ100で実行されているアプリケーションが外付GPU装置200を使用している状態で、外付GPU装置200との接続を解除すると、アプリケーションやシステムがハングアップしてしまう。これは、外付GPU装置200を使用中のアプリケーションがデータの少なくとも一部を外付GPU装置200内の第2記憶部210に保存しているため、そのデータを参照できなくなるためである。
そこで、本実施形態では、外付GPU装置200の接続を解除する際に、接続の解除の前に、外付GPU装置200を使用しているアプリケーションで開いていたファイルを自動でパーソナルコンピュータ100内に保存してから終了させ、外付GPU装置200の接続が解除された後に、終了させたアプリケーションをレジュームモードで再起動させるよう処理を行う。この外付GPU装置200の接続を解除する際の処理のことを、以下では「eGPU接続解除処理」と称する。レジュームモードとは、終了直前の状態に復帰させるモードである。例えば、Windows Vista(登録商標)以降では、アプリケーションに対するレジューム方法実装のRequirement(Application Resume & Restart)が定義されており、アプリケーションの多くがこの定義に対応(即ち、レジュームモードに対応)している。
eGPU接続解除処理は、例えば、外付GPU装置200に対応付けて提供されるプログラム(デバイスドライバやアプリケーションなど)を、パーソナルコンピュータ100にインストールして実行することにより実現される。なお、この外付GPU装置200に対応付けて提供されるデバイスドライバやアプリケーションは、パーソナルコンピュータ100を起動することにより実行されて常駐する。この外付GPU装置200に対応付けて提供されるデバイスドライバやアプリケーションのことを、以下では「eGPUアプリ」と総称する。
次に、図3を参照して、CPU112がeGPUアプリを実行することにより実現されるeGPU接続解除処理に関する機能構成について説明する。図3は、本実施形態に係るCPU112の機能構成の一例を示すブロック図である。CPU112は、eGPU接続解除処理に関する機能構成として、要求情報取得部1121と、リスト取得部1122と、コマンド取得部1123と、終了制御部1124と、接続解除部1125と、起動制御部1126とを備えている。
要求情報取得部1121は、ユーザの操作に基づいて、外付GPU装置200との接続の解除を要求する接続解除要求情報を取得する。ユーザの操作とは、外付GPU装置200との接続解除(取り外し)を指示する操作である。外付GPU装置200との接続解除を指示する操作とは、例えば、eGPUアプリにより画面上に表示される、外付GPU装置200との接続解除を指示するボタン(ソフトウェアボタン)に対する操作である。
なお、上記操作は、OSのデスクトップ画面でインジケータ内に表示される接続デバイスのアイコンに対して取り外しを指示する操作(例えば、マウスの右クリックで表示される選択肢の中から「取り外し」を選択する操作)であってもよい。また、上記操作は、外付GPU装置200との接続解除を指示する物理的なボタン(ハードウェアボタン)が外付GPU装置200の筐体に設けられている場合には、そのボタンに対する操作であってもよい。また、上記操作は、外付GPU装置200との接続解除を指示する物理的なボタンがパーソナルコンピュータ100のキーボード112の一つとして設けられている場合には、そのボタンに対する操作であってもよい。また、外付GPU装置200の接続が誤って解除されてしまわないように当該接続を一時的に固定する機構を備えている場合(例えば、外付GPU装置200を台の上に載置することにより第1接続ケーブル10との接続を固定するドッキングステーションなど)、その固定を解除する物理的なボタンやレバーなどに対する操作であってもよい。
リスト取得部1122は、外付GPU装置200がパーソナルコンピュータ100に接続されている状態で、パーソナルコンピュータ100において実行中のアプリケーションのうち外付GPU装置200による描画処理を使用中のアプリケーション(eGPUを使用中のアプリケーション)のリストを取得する。図4は、eGPUを使用中のアプリケーションのリストを取得する処理の説明図である。図示する例では、アプリケーション1、アプリケーション2、アプリケーション3、及びアプリケーション4が実行中のアプリケーションである。その中で、eGPUを使用中のアプリケーションは、アプリケーション1、アプリケーション3、及びアプリケーション4である。例えば、リスト取得部1122は、外付GPU装置200で定義されているコマンドのうちeGPUを使用中のアプリケーションのリストを取得するコマンドを発行することにより、アプリケーション1、アプリケーション3、及びアプリケーション4がeGPUを使用中のアプリケーションとして返答される。
コマンド取得部1123は、リスト取得部1122が取得したアプリケーションのリストに基づいて、eGPUを使用中のアプリケーションから、当該アプリケーションにおいて定義されているレジュームコマンドに関する情報を取得する。レジュームコマンドとは、レジュームモードで再起動させるコマンドであり、各アプリケーションで独自に定められている。コマンド取得部1123は、eGPUを使用中のアプリケーションを終了させた後にレジュームモードで再起動させることができるように、eGPUを使用中のアプリケーションからそれぞれで定義されているレジュームコマンドの記述内容を取得する。
図5は、eGPUを使用中のアプリケーションからレジュームコマンドに関する情報を取得する処理の説明図である。例えば、コマンド取得部1123は、OSで定義されている、レジュームコマンドを取得するコマンド(例えば、Windows(登録商標)で定義されている「GetApplicationRestartSettings API;)を、eGPUを使用中のアプリケーションを選択的に指定して発行することにより、eGPUを使用中のアプリケーションのそれぞれで定義されているレジュームコマンドの記述内容を取得する。つまり、コマンド取得部1123は、実行中のアプリケーションの全てではなく、実行中のアプリケーションのうちeGPUを使用中のアプリケーションのみに対して、レジュームコマンドを取得するコマンドを発行する。
図示する例では、アプリケーション1は、「“Application1.exe /resume”」をレジュームコマンドの記述内容として返答する。アプリケーション2は、「“Application3.exe /mode2”」をレジュームコマンドの記述内容として返答する。なお、レジュームモードでの再起動に対応していないアプリケーションがあった場合には、エラーとして返答する。ここでは、アプリケーション4がレジュームモードでの再起動に対応していないアプリケーションであった場合の例を示している。eGPUを使用中のアプリケーションが全てレジュームモードでの再起動に対応している場合には、eGPUを使用中のアプリケーションの全てがそれぞれで定義されているレジュームコマンドの記述内容を返答する。
終了制御部1124は、要求情報取得部1121が接続解除要求情報を取得した場合、実行中のアプリケーションのうちeGPUを使用中のアプリケーションに対して、作業中のファイルを第1記憶部106に保存してから終了する指示を示す保存後終了コマンドを発行する。例えば、終了制御部1124は、リスト取得部1122が取得したアプリケーションのリストのうち、コマンド取得部1123がレジュームコマンドに関する情報を取得したアプリケーション(即ち、レジュームモードに対応しているアプリケーション)に対して、保存後終了コマンドを発行する。保存後終了コマンドが発行されたアプリケーションは、アプリケーションの機能を用いて、作業中のファイルを第1記憶部106に保存してから終了する。
図6は、eGPUを使用中のアプリケーションを保存終了させる処理の説明図である。例えば、終了制御部1124は、Windows(登録商標)で定義されている「WM_ENDSESSION」に、次回起動時にレジュームモードによる起動を行う特殊な終了メッセージフラグ(ENDSESSION_CLOSEAPP)を付けた保存後終了コマンドを、eGPUを使用中のアプリケーションに対してのみ選択的に発行する。なお、この保存後終了コマンドは、例えば、Windowsアップデートの再起動前に全ての実行中のアプリケーションに対してブロードキャスト発行されるコマンドである。
また、終了制御部1124は、リスト取得部1122が取得したアプリケーションのリストのうち、コマンド取得部1123がレジュームコマンドに関する情報を取得できなかったアプリケーション(即ち、レジュームモードに対応していないアプリケーション)については、ユーザに対して作業中のファイルを保存してから終了する操作を促す情報を表示させる。レジュームモードに対応していないアプリケーションとは、例えば、Windows Vista(登録商標)以降で定義されている、アプリケーションに対するレジューム方法実装のRequirement(Application Resume & Restart)に対応していないアプリケーションである。
図7は、eGPUアプリによる表示画面の一例を示す図である。この図は、レジュームモードに対応していないアプリケーションがあった時の表示例である。図示する表示画面の符号R10が示す領域には、eGPUを使用中のアプリケーションのうちレジュームモードに対応していないアプリケーションのリストが表示される(ここでは、アプリケーション4)。また、ボタンB10は、外付GPU装置200との接続解除を指示するボタン(ソフトウェアボタン)の一例である。なお、この表示画面には、「作業中のファイルを保存してから終了してください」などのようなユーザに対して操作を促す情報がさらに表示されてもよい。
ユーザがアプリケーション4の終了を指示する操作を行うと、終了制御部1124は、通常の終了コマンドを発行する。図8は、レジュームモードに非対応のアプリケーションを終了させる処理の説明図である。図示ずるように、終了制御部1124は、レジュームモードに対応していないアプリケーションに対しては、通常の終了コマンド(例えば、Windows(登録商標)で定義されている「WM_CLOSE」)を、アプリケーション4に対してのみ発行する。
接続解除部1125は、eGPUを使用中のアプリケーションが終了すると、外付GPU装置200との接続を解除する。例えば、接続解除部1125は、外付GPU装置200で定義されている接続解除のコマンド或いはデバイスの無効化APIにより、外付GPU装置200との接続を解除する。
起動制御部1126は、外付GPU装置200の接続が解除されたことが検出された場合、終了制御部1124が保存後終了コマンドを発行したレジュームモードに対応しているアプリケーションに対して、第1記憶部106に保存されているファイルを読み込んで起動するレジュームモードで再起動させる指示を示すレジュームコマンドを発行する。このとき各アプリケーションに対して発行するレジュームコマンドは、コマンド取得部1123が取得したそれぞれのレジュームコマンドが用いられる。
図9は、レジュームモードに対応しているアプリケーションをレジュームモードで再起動させる処理の説明図である。例えば、起動制御部1126は、アプリケーション1をレジュームモードで起動させるレジュームコマンドとして、コマンド取得部1123が取得した「“Application1.exe /resume”」を発行する。また、起動制御部1126は、アプリケーション3をレジュームモードで起動させるレジュームコマンドとして、コマンド取得部1123が取得した「“Application3.exe /mode2”」を発行する。レジュームコマンドが発行されたアプリケーション1及びアプリケーション3は、それぞれ再起動して、終了直前に保存されたファイルを自動で読み込む。
一方、起動制御部1126は、レジュームモードに対応していないアプリケーションについては、そのアプリケーションを起動する起動コマンドを発行し、再起動のみさせる。図10は、レジュームモードに非対応のアプリケーションを再起動させる処理の説明図である。例えば、起動制御部1126は、レジュームモードに対応していないアプリケーション4を起動させる起動コマンド「“Application4.exe”」を発行する。起動コマンドが発行されたアプリケーション4は、再起動のみする。終了直前に保存されたファイルの読み込みは、再起動したアプリケーション4においてユーザが手動で行うことになる。
(処理の動作)
次に図11を参照して、パーソナルコンピュータ100のCPU112が実行するeGPU接続解除処理の動作について説明する。図11は、本実施形態に係るeGPU接続解除処理の一例を示すフローチャートである。
(ステップS101)CPU112は、ユーザの操作に基づいて外付GPU装置200との接続解除(eGPUとの接続解除)を要求する接続解除要求情報を取得すると、ステップS103の処理に進む。
(ステップS103)CPU112は、現在eGPUを使用中のアプリケーションのリストを取得し、eGPUを使用中のアプリケーションがあるか否かを判定する。eGPUを使用中のアプリケーションが無いと判定された場合(NO)、ステップS113の処理に進む。一方、eGPUを使用中のアプリケーションがあると判定された場合(YES)、ステップS105の処理に進む。
(ステップS105)CPU112は、eGPUを使用中のアプリケーションに対してレジュームコマンドを取得するコマンドを発行し、GPUを使用中のアプリケーションのそれぞれで定義されているレジュームコマンドの記述内容を取得する。そして、ステップS107の処理に進む。
(ステップS107)CPU112は、レジュームモードに対応したアプリケーションのみに対して保存後終了コマンドを発行し、作業中のファイルを保存させてから終了させる。レジュームモードに対応したアプリケーションとは、ステップS105においてレジュームコマンドの記述内容を取得できたアプリケーションである。そして、ステップS109の処理に進む。
(ステップS109)CPU112は、eGPUを使用中のアプリケーションの中に、レジュームモードに非対応のアプリケーションがあるか否かを判定する。レジュームモードに非対応のアプリケーションとは、ステップS105において保存後終了コマンドを発行したにもかかわらずレジュームコマンドの記述内容を取得できなかったアプリケーションである。レジュームモードに非対応のアプリケーションがないと判定された場合(NO)、ステップS113の処理に進む。一方、レジュームモードに非対応のアプリケーションがあると判定された場合、ステップS111の処理に進む。
(ステップS111)CPU112は、レジュームモードに非対応のアプリケーションについて、作業中のファイルを保存してから終了する操作をユーザに促す情報を表示させる。そして、ユーザがレジュームモードに非対応のアプリケーションで作業中のファイルを手動で保存して終了すると、ステップS113の処理に進む。
(ステップS113)CPU112は、eGPUを使用中のアプリケーションが無い状態になると、外付GPU装置200との接続を解除し(eGPUの接続解除)、ステップS115の処理に進む。
(ステップS115)CPU112は、外付GPU装置200が接続解除(eGPUが接続解除)されたか否かを判定する。接続解除されていないと判定された場合(NO)、この判定処理を継続する。接続解除されたと判定された場合(YES)、ステップS117の処理に進む。
(ステップS117)CPU112は、レジュームモードに対応しているアプリケーションに対して、終了直前に保存されたファイルを読み込んで起動するレジュームモードで再起動させる。
(ステップS119)レジュームモードに非対応のアプリケーションがあった場合(ステップS109でYESの場合)、CPU112は、そのアプリケーションを再起動飲みさせる。終了直前に保存されたファイルの読み込みは、再起動したアプリケーション4においてユーザが手動で行うことになる。
なお、ステップS109でNOの場合、レジュームモードに非対応のアプリケーションがeGPUを使用中のアプリケーションの中に無いため、このステップS119の処理は実行されないで、eGPU接続解除処理を終了する。
また、ステップS103でNOの場合、eGPUを使用中のアプリケーションが無いため、ステップS117及びステップS119のいずれの処理も実行されないで、eGPU接続解除処理を終了する。
以上説明したように、本実施形態に係るパーソナルコンピュータ100(情報処理装置の一例)は、アプリケーション(アプリケーションプログラム)を実行可能であり、要求情報取得部1121と、終了制御部1124とを備えている。要求情報取得部1121は、実行されるアプリケーションによる描画処理を実行する外付GPU装置200(信号処理装置の一例)との接続の解除を要求する接続解除要求情報を取得する。終了制御部1124は、要求情報取得部1121が接続解除要求情報を取得した場合、実行中のアプリケーションのうち外付GPU装置200による描画処理を使用中のアプリケーションに対して、作業中のファイルをパーソナルコンピュータ100が内部に備える第1記憶部106に保存してから終了する指示を示す保存後終了コマンド(第1コマンドの一例)を発行する。
これにより、パーソナルコンピュータ100は、外付GPU装置200との接続を解除する際に、使用中のアプリケーションをユーザが手動で一つひとつ保存して終了しなくても、各アプリケーションが開いていた作業中のファイルを自動で保存して終了することができる。よって、パーソナルコンピュータ100は、外付けのGPU(eGPU)との接続を解除する際の煩わしい操作や手間を軽減し利便性を向上することができる。また、パーソナルコンピュータ100のシステムの再起動を必要としないため、外付けのGPU(eGPU)の高速な接続解除が可能となる。また、パーソナルコンピュータ100は、外付けのGPU(eGPU)の接続解除時にアプリケーションやシステムがハングアップしてしまう懸念があるという安全性の不安を低減することができ、外付けのGPU(eGPU)の普及にも効果がある。
例えば、パーソナルコンピュータ100(情報処理装置の一例)は、アプリケーションを実行することにより行われる処理により映像データに対する描画処理を実行する内蔵GPU(第1描画処理部の一例)、を内部に備えている。一方、外付GPU装置200(信号処理装置の一例)は、内蔵GPU112aより高い処理能力を有するeGPU208(第2描画処理部の一例)を備えている。
これにより、パーソナルコンピュータ100は、必要なときにだけ、外付けのGPU(eGPU)を接続することで内蔵GPUより高速なグラフィックパフォーマンスを得ることができ、不要なときには、煩わしい操作をしなくても接続を解除できるため、利便性が良い。
また、パーソナルコンピュータ100(情報処理装置の一例)は、外付GPU装置200(信号処理装置の一例)との接続が解除されたことが検出された場合、終了制御部1124が保存後終了コマンド(第1コマンドの一例)を発行したアプリケーションに対して、パーソナルコンピュータ100が内部に備える第1記憶部106に保存されているファイルを読み込んで起動するレジュームモードで再起動させる指示を示すレジュームコマンド(第2コマンドの一例)を発行する起動制御部1126を備えている。
これにより、パーソナルコンピュータ100は、外付けのGPU(eGPU)の接続を解除した後に、解除前に外付けのGPU(eGPU)を使用していたアプリケーションが自動でレジュームモードで再起動するため、利便性が良い。例えば、外付けのGPU(eGPU)に接続して作業していたが、eGPUを外して作業場所を変えて作業を続けたいときなどに、作業していたファイルが自動で開くため、ユーザの作業の助けとなり利便性が良い。
また、パーソナルコンピュータ100(情報処理装置の一例)は、さらにリスト取得部1122と、コマンド取得部1123とを備えている。リスト取得部1122は、外付GPU装置200(信号処理装置の一例)がパーソナルコンピュータ100に接続されている状態で、実行中のアプリケーションのうち外付GPU装置200による描画処理を使用中のアプリケーションのリストを取得する。なお、アプリケーションのリストを取得するとは、単にアプリケーションを特定可能な情報(例えば、識別情報)を取得することも含まれる。コマンド取得部1123は、リスト取得部1122が取得したアプリケーションのリストに基づいて、外付GPU装置200による描画処理を使用中のアプリケーションから、当該アプリケーションにおいて定義されているレジュームコマンド(第2コマンドの一例)に関する情報を取得する。
これにより、パーソナルコンピュータ100は、外付けのGPU(eGPU)を使用中のアプリケーションのみを選択して、外付けのGPU(eGPU)との接続が解除された後にレジュームモードで再起動させることができる。
また、終了制御部1124は、リスト取得部1122が取得したアプリケーションのリストのうち、コマンド取得部1123がレジュームコマンド(第2コマンドの一例)に関する情報を取得したアプリケーションについては、保存後終了コマンド(第1コマンドの一例)を発行する。一方、終了制御部1124は、リスト取得部1122が取得したアプリケーションのリストのうち、コマンド取得部1123がレジュームコマンドに関する情報を取得できなかったアプリケーションについては、ユーザに対して作業中のファイルを保存してから終了する操作を促す。
これにより、外付けのGPU(eGPU)を使用中のアプリケーションのうち、レジュームモードに対応していないアプリケーション(例えば、Windows Vista(登録商標)以降で定義されている、アプリケーションに対するレジューム方法実装のRequirement(Application Resume & Restart)に対応していないアプリケーション)がある場合、そのアプリケーションについてのみは、ユーザに対して作業中のファイルを保存してから終了する操作を促すため、外付けのGPU(eGPU)の接続解除時にシステムのアプリケーションやシステムがハングアップしてしまうことを防ぐことができる。
[変形例]
なお、パーソナルコンピュータ100(情報処理装置の一例)は、例えば少なくとも要求情報取得部1121と、リスト取得部1122と、起動制御部1126とを備えた構成としてもよい。要求情報取得部1121は、外付GPU装置200(信号処理装置の一例)との接続の解除を要求する接続解除要求情報を取得する。リスト取得部1122は、要求情報取得部1121が接続解除要求情報を取得したときに実行中のアプリケーションのうち外付GPU装置200による描画処理を使用中のアプリケーションのリストを取得する。なお、アプリケーションのリストを取得するとは、単にアプリケーションを特定可能な情報(例えば、識別情報)を取得することも含まれる。起動制御部1126は、外付GPU装置200との接続が解除されたことが検出された場合、リスト取得部1122が取得したリストに含まれるアプリケーションであって且つ作業中のファイルをパーソナルコンピュータ100が内部に備える第1記憶部106に保存してから終了したアプリケーションに対して、当該第1記憶部106に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示すレジュームコマンド(コマンドの一例)を発行する。
これにより、パーソナルコンピュータ100は、外付けのGPU(eGPU)を使用中だったアプリを自動または手動にかかわらず保存して終了した後にeGPUが取り外された場合、当該使用中だったアプリをレジュームモードで起動させることができるため、ユーザの作業の助けとなり利便性がよい。
また、上記実施形態では、外付GPU装置200(信号処理装置の一例)との接続が解除されたことが検出されたことを条件にレジュームモードで起動させる例を説明したが、接続が解除されたことを条件とするのに代えて、再び接続されたことを条件としてもよい。例えば、起動制御部1126は、外付GPU装置200(信号処理装置の一例)との接続が解除された後に再び接続されたことが検出された場合、終了制御部1124が保存後終了コマンド(第1コマンドの一例)を発行したアプリケーションに対して、パーソナルコンピュータ100(情報処理装置の一例)が内部に備える第1記憶部106に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示すレジュームコマンド(第2コマンドの一例)を発行してもよい。
これにより、パーソナルコンピュータ100は、外付けのGPU(eGPU)を接続させたときに、前回接続を解除する前にeGPUを使用していたアプリケーションを、自動で再起動させ、最後に開いていたファイルを自動で開くことができる。よって、ユーザの作業の助けとなり利便性が良い。
また、上記実施形態では、Windows Vista(登録商標)以降のOSの例に説明したが、OSの種類はこれに限定されるものではなく、レジュームモードについての定義がされていれば、他のOSについても本実施形態を適用することができる。
また、上記実施形態では、レジュームモードに対応していないアプリケーションについては、ユーザに対して作業中のファイルを保存してから終了する操作を促す例を説明したが、これに限られるものではない。例えば、レジュームモードに対応していないアプリケーションであっても、保存してから終了する指示(例えば、上述した保存後終了コマンド)に対応さえしていれば、終了制御部1124は、当該指示を行う(例えば、保存後終了コマンドを発行する)ことにより、レジュームモードに対応していないアプリケーションについても自動で作業中のファイルを保存してから終了させてもよい。これにより、パーソナルコンピュータ100は、外付けのGPU(eGPU)との接続を解除する際の煩わしい操作を軽減し利便性を向上することができる。
また、上記実施形態では、パーソナルコンピュータ100と外付GPU装置200との通信接続インターフェースがThunderbolt(登録商標)3規格に準じたインターフェースである例を説明したが、一例であって、他の規格に準じたインターフェースであってもよい。
なお、上述した各実施形態に係るパーソナルコンピュータ100および外付GPU装置200それぞれの一部又は全部を1つ、または複数のプロセッサを備えたコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータが読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。
なお、ここでいう「コンピュータシステム」とは、パーソナルコンピュータ100および外付GPU装置200に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、上述した各実施形態に係るパーソナルコンピュータ100および外付GPU装置200の一部、又は全部を典型的には集積回路であるLSIとして実現してもよいし、チップセットとして実現してもよい。また、上述した各実施形態や変形例におけるパーソナルコンピュータ100および外付GPU装置200の各機能ブロックは個別にチップ化してもよいし、一部、又は全部を集積してチップ化してもよい。また、集積回路化の手法は、LSIに限らず専用回路、および/または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いることも可能である。
なお、上記実施形態では、パーソナルコンピュータ100に接続される外付けの信号処理装置の一例として、描画処理を行う外付GPU装置200の例を説明したが、外付GPU装置200に限られるものではない。外付GPU装置200に代えて、描画処理の用途以外の処理を行う外付けの信号処理装置としてもよい。例えば、いわゆる仮想通貨の発掘(マイニング)とよばれる計算や、DeepLearningの演算など、グラフィクスとは関係のない計算のアクセラレータなどが外付けの信号処理装置として、外付GPU装置200に代えてパーソナルコンピュータ100に接続される構成としても同様に、本実施形態を適用することができる。
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。また、本発明の一態様は、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。また、上記各実施形態や変形例に記載された要素であり、同様の効果を奏する要素同士を置換した構成も含まれる。
1 情報処理システム、10 第1接続ケーブル、20 第2接続ケーブル、100 パーソナルコンピュータ、102 第1入出力部、104 第1入出力制御部、106 第1記憶部、108 操作受付部、110 表示部、112 CPU、114 キーボード、116 タッチパッド、1121 要求情報取得部、1122 リスト取得部、1123 コマンド取得部、1124 終了制御部、1125 接続解除部、1126 起動制御部、200 外付GPU装置、202 第2入出力部、204 第3入出力部、206 第2入出力制御部、208 eGPU、210 第2記憶部、300 表示装置

Claims (10)

  1. アプリケーションを実行可能な情報処理装置であって、
    アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得する要求情報取得部と、
    前記アプリケーションで作業中のファイルを保存可能な記憶部と、
    前記要求情報取得部が前記接続解除要求情報を取得した場合、実行中の前記アプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションに対して、作業中のファイルを前記記憶部に保存してから終了する指示を示す第1コマンドを発行する終了制御部と、
    前記信号処理装置との接続が解除されたことが検出された場合、前記終了制御部が前記第1コマンドを発行したアプリケーションに対して、前記記憶部に保存されているファイルを読み込んで起動するレジュームモードで再起動させる指示を示す第2コマンドを発行する起動制御部と、
    を備える情報処理装置。
  2. 実行中の前記アプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションのリストを取得するリスト取得部と、
    前記リスト取得部が取得したアプリケーションのリストに基づいて、前記信号処理装置による信号処理を使用中のアプリケーションから、当該アプリケーションにおいて定義されている前記第2コマンドに関する情報を取得するコマンド取得部と、
    を備える請求項に記載の情報処理装置。
  3. 前記終了制御部は、
    前記リスト取得部が取得したアプリケーションのリストのうち、前記コマンド取得部が前記第2コマンドに関する情報を取得したアプリケーションについては、前記第1コマンドを発行し、
    前記リスト取得部が取得したアプリケーションのリストのうち、前記コマンド取得部が前記第2コマンドに関する情報を取得できなかったアプリケーションについては、ユーザに対して作業中のファイルを保存してから終了する操作を促す、
    請求項に記載の情報処理装置。
  4. 前記信号処理装置との接続が解除された後に再び接続されたことが検出された場合、前記終了制御部が前記第1コマンドを発行したアプリケーションに対して、前記記憶部に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示す第2コマンドを発行する起動制御部、
    を備える請求項1に記載の情報処理装置。
  5. アプリケーションを実行することにより行われる信号処理を実行する第1信号処理部、を内部に備え、
    前記信号処理装置は、前記第1信号処理部より高い処理能力を有する第2信号処理部を備えている、
    請求項1から請求項のいずれか一項に記載の情報処理装置。
  6. アプリケーションを実行可能な情報処理装置であって、
    アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得する要求情報取得部と、
    前記要求情報取得部が前記接続解除要求情報を取得したときに実行中の前記アプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションのリストを取得するリスト取得部と、
    前記アプリケーションで作業中のファイルを保存可能な記憶部と、
    前記信号処理装置との接続が解除されたことが検出された場合、前記リスト取得部が取得したリストに含まれるアプリケーションであって且つ作業中のファイルを前記記憶部に保存してから終了したアプリケーションに対して、当該記憶部に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示すコマンドを発行する起動制御部と、
    を備える情報処理装置。
  7. アプリケーションを実行可能な情報処理装置における制御方法であって、
    要求情報取得部が、アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得するステップと、
    終了制御部が、前記要求情報取得部が前記接続解除要求情報を取得した場合、実行中のアプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションに対して、作業中のファイルを記憶部に保存してから終了する指示を示す第1コマンドを発行するステップと、
    起動制御部が、前記信号処理装置との接続が解除されたことが検出された場合、前記終了制御部が前記第1コマンドを発行したアプリケーションに対して、前記記憶部に保存されているファイルを読み込んで起動するレジュームモードで再起動させる指示を示す第2コマンドを発行するステップと、
    を有する制御方法。
  8. アプリケーションを実行可能な情報処理装置としてのコンピュータに、
    アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得するステップと、
    前記接続解除要求情報を取得した場合、実行中のアプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションに対して、作業中のファイルを記憶部に保存してから終了する指示を示す第1コマンドを発行するステップと、
    前記信号処理装置との接続が解除されたことが検出された場合、前記第1コマンドが発行されたアプリケーションに対して、前記記憶部に保存されているファイルを読み込んで起動するレジュームモードで再起動させる指示を示す第2コマンドを発行するステップと、
    を実行させるためのプログラム。
  9. アプリケーションを実行可能な情報処理装置における制御方法であって、
    要求情報取得部が、アプリケーションを実行することにより行われる処理のうち少なくとも一部の信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得するステップと、
    リスト取得部が、前記要求情報取得部が前記接続解除要求情報を取得したときに実行中のアプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションのリストを取得するステップと、
    起動制御部が、前記信号処理装置との接続が解除されたことが検出された場合、前記リスト取得部が取得したリストに含まれるアプリケーションであって且つ作業中のファイルを記憶部に保存してから終了したアプリケーションに対して、当該記憶部に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示すコマンドを発行するステップと、
    を有する制御方法。
  10. アプリケーションを実行可能な情報処理装置としてのコンピュータに、
    実行されるアプリケーションによる信号処理を実行する外付けの信号処理装置との接続の解除を要求する接続解除要求情報を取得するステップと、
    前記接続解除要求情報を取得したときに実行中のアプリケーションのうち前記信号処理装置による信号処理を使用中のアプリケーションのリストを取得するステップと、
    前記信号処理装置との接続が解除されたことが検出された場合、前記リストに含まれるアプリケーションであって且つ作業中のファイルを記憶部に保存してから終了したアプリケーションに対して、当該記憶部に保存されているファイルを読み込んで起動するレジュームモードで起動させる指示を示すコマンドを発行するステップと、
    を実行させるためのプログラム。
JP2018157591A 2018-08-24 2018-08-24 情報処理装置、制御方法、及びプログラム Active JP6695942B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018157591A JP6695942B2 (ja) 2018-08-24 2018-08-24 情報処理装置、制御方法、及びプログラム
US16/549,324 US10970806B2 (en) 2018-08-24 2019-08-23 External GPU management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018157591A JP6695942B2 (ja) 2018-08-24 2018-08-24 情報処理装置、制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2020030766A JP2020030766A (ja) 2020-02-27
JP6695942B2 true JP6695942B2 (ja) 2020-05-20

Family

ID=69586164

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018157591A Active JP6695942B2 (ja) 2018-08-24 2018-08-24 情報処理装置、制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US10970806B2 (ja)
JP (1) JP6695942B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020018065A1 (en) * 2018-07-16 2020-01-23 Hewlett-Packard Development Company, L.P. Docks for external graphical processor units
US11029966B1 (en) * 2020-01-21 2021-06-08 Dell Products L.P. Dynamically configuring a computing system to operate with an external GPU connected via USB-C

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1011109A (ja) 1996-06-25 1998-01-16 Omron Corp 制御装置
JPH1165720A (ja) 1997-08-21 1999-03-09 Toshiba Corp コンピュータおよびコンピュータシステム
JPH11203231A (ja) 1998-01-09 1999-07-30 Fuji Xerox Co Ltd 電子装置拡張システム
JP4748188B2 (ja) 2008-07-11 2011-08-17 ソニー株式会社 情報処理装置、情報処理方法及びそのプログラム
US8368702B2 (en) * 2010-01-06 2013-02-05 Apple Inc. Policy-based switching between graphics-processing units
JP2012090064A (ja) 2010-10-19 2012-05-10 Canon Inc 画像形成装置、インストール方法及びプログラム
US8692833B2 (en) * 2011-08-09 2014-04-08 Apple Inc. Low-power GPU states for reducing power consumption
CN103988190A (zh) 2011-12-16 2014-08-13 英特尔公司 用于通过外部显示-数据i/o端口来扩展图形处理的方法、设备及系统
US9372814B2 (en) * 2014-08-11 2016-06-21 Dell Products, Lp System and method for transferring an active state between a powerful processor and a less powerful processor
US9971708B2 (en) * 2015-12-02 2018-05-15 Advanced Micro Devices, Inc. System and method for application migration between docking station and dockable device

Also Published As

Publication number Publication date
US20200065934A1 (en) 2020-02-27
US10970806B2 (en) 2021-04-06
JP2020030766A (ja) 2020-02-27

Similar Documents

Publication Publication Date Title
US8094159B2 (en) Method and apparatus for frame buffer management
EP3223152A1 (en) Method and server for presenting initialization degree of hardware in server
US11086635B2 (en) Electronic device, method for controlling electronic device, and program
US8589905B2 (en) Game device and information processing apparatus
JP2009181419A (ja) 通信装置、方法及びプログラム
JP6695942B2 (ja) 情報処理装置、制御方法、及びプログラム
TWI450090B (zh) 關於改變程式之啟動列表以判定電腦系統性能是否增進之方法及系統
US20100229114A1 (en) User Interface for Interaction with Virtual Machine
US20120311490A1 (en) Methods for launching applications with efficient user impression
US20170199733A1 (en) Method for terminal to update operating system, terminal and system
US9565049B2 (en) Communication apparatus, communication method, and computer product for sharing data
US9047040B2 (en) Method for running computer program on video card selected based on video card preferences of the program
US8334875B2 (en) Operation displaying device and image forming device
US11907599B2 (en) Information processing method, apparatus, electronic device, and storage medium
US20230030973A1 (en) Change of firmware settings
US10585557B2 (en) Running computer program on video card selected based on video card preferences of the computer program
JP2011096132A (ja) 情報処理装置および表示制御方法
JP4425321B1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2008009659A (ja) デバイス接続方法とホスト機器およびデバイス機器接続用プログラム
JP7130724B2 (ja) 情報処理装置、情報処理システム、及び制御方法
US11138024B2 (en) Multiple independent lifecycle states
CN111142979B (zh) 应用程序运行方法、装置、计算机设备和存储介质
US10795728B2 (en) Sharing expansion device, controlling method and computer using the same
CN109284133B (zh) 移动终端开机图片加载处理方法、移动终端及存储介质
WO2019137437A1 (zh) 视频播放方法及装置、终端设备及计算机可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191125

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200422

R150 Certificate of patent or registration of utility model

Ref document number: 6695942

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250