JP5921856B2 - 量子コンピュータシステム、量子コンピュータシステムの制御方法及びプログラム - Google Patents
量子コンピュータシステム、量子コンピュータシステムの制御方法及びプログラム Download PDFInfo
- Publication number
- JP5921856B2 JP5921856B2 JP2011258481A JP2011258481A JP5921856B2 JP 5921856 B2 JP5921856 B2 JP 5921856B2 JP 2011258481 A JP2011258481 A JP 2011258481A JP 2011258481 A JP2011258481 A JP 2011258481A JP 5921856 B2 JP5921856 B2 JP 5921856B2
- Authority
- JP
- Japan
- Prior art keywords
- quantum
- program
- computer system
- microcode
- classical
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Superconductor Devices And Manufacturing Methods Thereof (AREA)
- Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
Description
以下、本発明の実施例を、図面を用いて説明する。
本実施例では、量子コンピュータがプログラム可能であることにより、汎用的かつ安定的に利用することができる量子コンピュータシステム100の例を説明する。
ステップS601では、中間データ234の存在、及び、入力データ233に変更があったかを検査する。中間データ234が存在しないということは前処理がまだ行われていないことを意味しており、前処理フェーズS410を実行する必要があるため、ステップS602に進む。また、入力データ233に変更があった場合、中間データ234が存在していたとしても、それは変更前の古い入力データ233に対応するものであるから、前処理フェーズS410を再度実行して中間データ234を更新しなければならない。よって、同様にステップS602に進む。入力データ233に変更がなく、かつ、対応する中間データ234が既に生成されている場合に限り、前処理フェーズS410を省略することができる。よって、この時は前処理フェーズS410を省略してステップS603に進む。
ステップS603では、量子マイクロコード232の存在、及び、中間データ234に変更があったかを検査する。量子マイクロコード232が存在していなければ本処理準備フェーズS420を実行して量子マイクロコード232を生成するために、ステップS604に遷移する。また、量子マイクロコード232が存在していても、中間データ234に変更がある場合には、量子マイクロコード232が中間データ234に依存するために、本処理準備フェーズS420を再度実行するために、ステップS604に遷移する。ステップS601と同様の考え方であるが、量子マイクロコード232が既に存在しており、かつ、中間データ234に変更が無い場合には、本処理準備フェーズS604を省略して、本処理実行フェーズS605に進む。
ステップS605では、前述した本処理実行フェーズS500を実行し、ステップS605に進む。
ステップS607では、前述した後処理フェーズS510を実行し、ステップS608に進む。
本実施例では、プログラム可能であることにより、汎用的かつ安定的に利用することができる量子コンピュータシステム100の、別の実施の形態を説明する。実施例2では、古典コンピュータ機能部と量子コンピュータ機能部からなる量子コンピュータシステムの全体の構成は実施例1と同じく図1に示す構成であるが、常温部101と低温部102の構成が異なる。実施例1で説明した図と同一の符号を付された構成と、同一の機能を有する部分については、説明を省略する。
101 常温部
102 低温部
103 伝送路
201 主記憶装置
202 CPU
203 I/Oアダプタ
210 アプリケーションプログラム
211 古典プログラム
212 量子プログラム
220 システムソフトウェア
221 古典コンパイラ
222 量子コンパイラ
223 実行マネージャ
230 ランタイム情報
231 古典オブジェクト
232 量子マイクロコード
233 入力データ
234 中間データ
235 観測データ
301 マイクロ制御部
302 観測レジスタ
303 I/Oアダプタ
310 量子部
311 制御ゲート
312 量子レジスタ
313 読出しゲート
320 命令バッファ
321 量子マイクロコード
400 キュービットブロック
410 キュービット
411,412 量子ドット
420,421,422,430,431,432 制御ゲート
501,502,503,504 キュービットブロック
511,512,521,522 制御ゲート
531,532 単電子トランジスタ
S400 古典コンパイルフェーズ
S410 前処理フェーズ
S411 前処理実行
S420 本処理準備フェーズ
S421 低温部転送
S490 トレーニングフェーズ
S500 本処理実行フェーズ
S501 量子部実行
S502 常温部転送
S510 後処理フェーズ
S511 後処理実行
S512 実行結果
S701 字句解析
S702 構文解析
S703 意味解析
S704 データ埋め込み
S705 コード生成
S706 最適化
707 ハードウェア機能情報
708 ハードウェア制限情報
1001 常温部
1101 低温部
1102 CPU
1130 主記憶装置
1131 中間データ
1132 量子プログラム
1133 量子コンパイラ
1134 量子マイクロコード
S1200 前処理フェーズ
S1201 低温部転送
S1300 本処理準備フェーズ
S1310 本処理実行フェーズ
4901 トレーニング用マイクロコード
4902 観測レジスタ
S4921 低温部転送
S4922 量子部実行
S4923 常温部転送
S4924 観測結果処理
S4925 ハードウェア制限情報生成。
Claims (20)
- 古典プログラムを実行可能な古典コンピュータ機能部と量子プログラムを実行可能な量子コンピュータ機能部とを備え、
前記量子コンピュータ機能部は、量子部、古典記憶装置及び制御装置を備え、
前記古典記憶装置は前記量子部に対する操作命令の列である量子マイクロコードを記憶しており、該量子マイクロコードは、前記量子プログラムと、前記量子部での処理対象となる入力データと前記古典プログラムとに基づいて生成された中間データとから変換されたものであり、
前記制御装置により、前記量子マイクロコードに記述されたシーケンスに基づいて前記量子部を制御する
ことを特徴とする量子コンピュータシステム。 - 請求項1において、
前記量子部は、
少なくとも1個以上のキュービットから構成される量子レジスタと、
前記量子レジスタに対して操作を行う制御ゲートと、
前記量子レジスタの状態を観測する読出しゲートとを有し、
前記古典記憶装置は、前記量子プログラムから変換され、前記制御ゲートないしは前記読出しゲートに対する操作命令の列である前記量子マイクロコードを記憶し、
前記制御装置は、前記古典記憶装置から前記量子マイクロコードを読み出して前記制御ゲートないしは前記読出しゲートを制御する
ことを特徴とする量子コンピュータシステム。 - 請求項2において、
前記量子プログラムを前記量子マイクロコードに変換する量子コンパイラを有し、
前記量子コンパイラは、前記入力データを前記量子マイクロコード内に埋め込んで出力する
ことを特徴とする量子コンピュータシステム。 - 請求項3において、
前記古典コンピュータ機能部が前記量子コンパイラを有する
ことを特徴とする量子コンピュータシステム。 - 請求項3において、
前記量子コンピュータ機能部が前記量子コンパイラを有する
ことを特徴とする量子コンピュータシステム。 - 請求項3において、
前記制御ゲートないしは前記読出しゲートを前記制御装置が制御することで実現可能な操作の種類や制約を前記量子コンピュータ機能部の機能として定義した、ハードウェア機能情報を有し、
前記量子コンパイラは、前記ハードウェア機能情報で定義された制約を満たす前記量子マイクロコードを生成する
ことを特徴とする量子コンピュータシステム。 - 請求項3において、
前記量子レジスタを構成する前記キュービットの其々について利用可否及びエラーレートの情報を記憶するハードウェア制限情報を有し、
前記量子コンパイラは、前記ハードウェア制限情報で利用可能なキュービットのみを用いた前記量子マイクロコードを生成する
ことを特徴とする量子コンピュータシステム。 - 請求項7において、
前記ハードウェア制限情報は、前記量子レジスタを構成するN個のキュービットの各々に関して、利用可否、ステータス、及び、エラーレートを示す情報を含み、
前記エラーレートは前記キュービットの、観測データと期待値とが異なるエラー率を記録したものであり、
前記ステータスは前記各キュービットのエラーレートの状態を記録したものである
ことを特徴とする量子コンピュータシステム。 - 請求項8において、
前記キュービットの利用可否の判断ないしはエラーレートの測定を行うトレーニング用量子プログラムを有し、
前記トレーニング用量子プログラムを実行して前記ハードウェア制限情報を更新する
ことを特徴とする量子コンピュータシステム。 - 請求項3において、
前記量子レジスタ内の前記キュービットは隣接して配置された前記キュービット間のみで操作を行うことが可能なものであり、
前記制御ゲートは、前記隣接して配置されたキュービット間の状態を交換するスワップ操作を有し、
前記量子コンパイラは、前記量子マイクロコードに前記スワップ操作を挿入する
ことを特徴とする量子コンピュータシステム。 - 請求項3において、
前記量子レジスタは、0,1,もしくは0と1の重ね合わせの状態を保持できる前記キュービットを1個以上有する
ことを特徴とする量子コンピュータシステム。 - 請求項3において、
前記量子コンピュータシステムの量子アルゴリズムが、前処理フェーズ、本処理準備フェーズ、本処理フェーズ、及び後処理フェーズの少なくとも4段階で構成されており、
前記前処理フェーズにおいて、入力データを入力として、古典オブジェクトを実行し、処理結果として中間データを生成し、
前記本処理準備フェーズにおいて、前記中間データを入力とし、前記本処理を担う前記量子プログラムを前記量子コンパイラで量子マイクロコードに変換し量子マイクロコードを生成し、
前記本処理フェーズにおいて、前記量子マイクロコードを前記量子部で実行し、処理結果を観測データとして観測レジスタに取得し、
後処理フェーズにおいて、前記観測データを入力データとして前記古典オブジェクトを実行し、実行結果を取得する
ことを特徴とする量子コンピュータシステム。 - 請求項12において、
前記量子コンピュータシステムは、常温部、低温部、及び前記常温部と前記低温部間の通信を行うための伝送路で構成されており、
前記前処理フェーズ、トレーニングフェーズ、前記本処理準備フェーズ及び前記後処理フェーズを前記常温部で動作する前記古典コンピュータ機能部により実行し、
前記トレーニングフェーズにより、前記量子コンピュータシステムを動作させ、前記量子部を構成する素子の動作を検査し不安定な可能性がある素子の使用を制限するハードウェア制限情報を取得し、
前記本処理フェーズを、前記低温部で動作する前記量子コンピュータ機能部により実行する
ことを特徴とする量子コンピュータシステム。 - 請求項12において、
前記量子コンピュータシステムは、常温部、低温部、及び前記常温部と前記低温部間の通信を行うための伝送路で構成されており、
前記前処理フェーズ、及び前記後処理フェーズを前記常温部で動作する前記古典コンピュータ機能部により実行し、
トレーニングフェーズ、前記本処理準備フェーズ、及び前記本処理フェーズを、前記低温部で動作する前記量子コンピュータ機能部により実行し、
前記トレーニングフェーズにより、前記量子コンピュータシステムを動作させ、前記量子部を構成する素子の動作を検査し不安定な可能性がある素子の使用を制限するハードウェア制限情報を取得する
ことを特徴とする量子コンピュータシステム。 - 量子コンピュータシステムの制御方法であって、
前記量子コンピュータシステムは、古典プログラムを実行可能な古典コンピュータ機能部と量子プログラムを実行可能な量子コンピュータ機能部とを備え、
前記量子コンピュータ機能部は、量子部、古典記憶装置、及び制御装置を備え、
前記量子プログラムと、前記量子部での処理対象となる入力データと前記古典プログラムとに基づいて生成された中間データとを変換して量子マイクロコードを生成し、
該量子マイクロコードを前記古典記憶装置に記憶し、
前記制御装置により、前記量子マイクロコードに記述されたシーケンスに基づいて前記量子部を制御する
ことを特徴とする量子コンピュータシステムの制御方法。 - 請求項15において、
前記量子部は、
少なくとも1個以上のキュービットから構成される量子レジスタと、
前記量子レジスタに対して操作を行う制御ゲートと、
前記量子レジスタの状態を観測する読出しゲートとを有し、
前記制御装置により、前記制御ゲートないしは前記読出しゲートに対する操作命令の列である前記量子マイクロコードを前記古典記憶装置から読み出して前記制御ゲートないしは前記読出しゲートを制御する
ことを特徴とする量子コンピュータシステムの制御方法。 - 請求項15において、
前記量子プログラムを前記量子マイクロコードに変換する量子コンパイラを有し、
前記量子コンパイラは、前記入力データを前記量子マイクロコード内に埋め込んで出力する
ことを特徴とする量子コンピュータシステムの制御方法。 - 古典プログラムと量子プログラムの複合として構成された量子コンピュータシステムのプログラムであって、
前記量子コンピュータシステムは、古典コンピュータ機能部と量子コンピュータ機能部とを備え、
前記古典コンピュータ機能部は、前記古典プログラムを実行可能なCPUを備え、
前記量子コンピュータ機能部は、量子部、古典記憶装置、及び制御装置を備え、
前記古典コンピュータ機能部に、
前記古典プログラム及び入力データを入力として、前記古典プログラムを実行して中間データを生成させる機能を実現させ、
前記量子コンピュータ機能部に、
前記量子プログラム及び前記中間データから変換された量子マイクロコードを前記量子部で実行させて観測データを取得する機能と、
該観測データを前記古典コンピュータ機能部に転送させる機能とを実現させるためのプログラム。 - 請求項18において、
前記量子コンピュータ機能部は、前記量子プログラムを前記量子マイクロコードに変換する量子コンパイラを有し、
前記量子部は、前記量子マイクロコードに記述されている処理を実行するリソースとして、少なくとも1個以上のキュービットから構成される量子レジスタと、制御ゲートと、読出しゲートとを備え、
前記量子コンピュータシステムに、
前記量子コンパイラが、前記量子プログラムと、前記量子プログラムが処理すべき入力データとを入力とし、前記入力データを前記量子マイクロコード内に埋め込んで出力する機能と、
前記制御ゲートないしは前記読出しゲートに対する操作命令の列である前記量子マイクロコードを前記古典記憶装置に記憶する機能と、
前記古典記憶装置から前記量子マイクロコードを読み出して前記制御ゲートないしは前記読出しゲートを制御する機能とを実現させるためのプログラム。 - 請求項19において、
前記量子コンピュータシステムは、
前記制御ゲートないしは前記読出しゲートを前記制御装置が制御することで実現可能な操作の種類や制約を前記量子コンピュータ機能部の機能として定義した、ハードウェア機能情報と、
前記量子レジスタを構成する前記キュービットの其々について利用可否及びエラーレートの情報を記憶するハードウェア制限情報とを有し、
前記量子コンピュータシステムに、
前記量子コンパイラが、前記ハードウェア機能情報で定義された制約を満たし、かつ、前記ハードウェア制限情報で利用可能なキュービットのみを用いた前記量子マイクロコードを生成する機能を実現させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011258481A JP5921856B2 (ja) | 2011-11-28 | 2011-11-28 | 量子コンピュータシステム、量子コンピュータシステムの制御方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011258481A JP5921856B2 (ja) | 2011-11-28 | 2011-11-28 | 量子コンピュータシステム、量子コンピュータシステムの制御方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013114366A JP2013114366A (ja) | 2013-06-10 |
JP5921856B2 true JP5921856B2 (ja) | 2016-05-24 |
Family
ID=48709881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011258481A Expired - Fee Related JP5921856B2 (ja) | 2011-11-28 | 2011-11-28 | 量子コンピュータシステム、量子コンピュータシステムの制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5921856B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021118464A1 (en) * | 2019-12-09 | 2021-06-17 | Horizon Quantum Computing Pte. Ltd. | Systems and methods for unified computing on digital and quantum computers |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6295325B2 (ja) * | 2014-07-09 | 2018-03-14 | 株式会社日立製作所 | 半導体装置及び情報処理システム |
JP6021864B2 (ja) * | 2014-08-29 | 2016-11-09 | 株式会社日立製作所 | 半導体装置および情報処理装置 |
US10073655B2 (en) * | 2014-09-03 | 2018-09-11 | Hitachi, Ltd. | Semiconductor integrated circuit apparatus |
US11797641B2 (en) | 2015-02-03 | 2023-10-24 | 1Qb Information Technologies Inc. | Method and system for solving the lagrangian dual of a constrained binary quadratic programming problem using a quantum annealer |
CA2881033C (en) | 2015-02-03 | 2016-03-15 | 1Qb Information Technologies Inc. | Method and system for solving lagrangian dual of a constrained binary quadratic programming problem |
KR101664173B1 (ko) * | 2015-06-08 | 2016-10-11 | 한국과학기술연구원 | 양자암호 시스템의 안정화 장치 및 방법 |
US9870273B2 (en) * | 2016-06-13 | 2018-01-16 | 1Qb Information Technologies Inc. | Methods and systems for quantum ready and quantum enabled computations |
US10275717B2 (en) * | 2016-06-02 | 2019-04-30 | Google Llc | Training quantum evolutions using sublogical controls |
RU2632129C1 (ru) * | 2016-09-22 | 2017-10-02 | федеральное государственное бюджетное образовательное учреждение высшего образования "Иркутский национальный исследовательский технический университет" (ФГБОУ ВО "ИРНИТУ") | Встраиваемый в классический компьютер электронный блок и используемый в нём способ, основанный на квантовой процедуре счета |
CN109791924A (zh) * | 2016-09-29 | 2019-05-21 | 英特尔公司 | 量子计算组件 |
US10996979B2 (en) * | 2017-09-29 | 2021-05-04 | International Business Machines Corporation | Job processing in quantum computing enabled cloud environments |
US10885678B2 (en) * | 2017-09-29 | 2021-01-05 | International Business Machines Corporation | Facilitating quantum tomography |
US11087232B2 (en) * | 2018-07-18 | 2021-08-10 | IonQ, Inc. | Quantum hybrid computation |
US10657212B2 (en) * | 2018-09-18 | 2020-05-19 | International Business Machines Corporation | Application- or algorithm-specific quantum circuit design |
WO2020255076A1 (en) | 2019-06-19 | 2020-12-24 | 1Qb Information Technologies Inc. | Method and system for mapping a dataset from a hilbert space of a given dimension to a hilbert space of a different dimension |
JP2022547989A (ja) * | 2019-09-13 | 2022-11-16 | ザ・ユニバーシティ・オブ・シカゴ | 量子コンピュータのための変分アルゴリズムにより部分コンパイルするシステム及び方法 |
JP2022173975A (ja) * | 2021-05-10 | 2022-11-22 | 武平 河野 | 強磁性転換された常磁性体、反磁性体の元素並びにその酸化物、化合物並びにその合金、半導体顔料と強磁性体または、フェリ磁性体を構造とする量子回路による量子コンピューター |
JP2022188981A (ja) | 2021-06-10 | 2022-12-22 | 株式会社日立製作所 | 量子コンピュータ及び量子コンピュータの量子状態制御方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4867009B2 (ja) * | 2004-12-09 | 2012-02-01 | 国立大学法人 奈良先端科学技術大学院大学 | 量子コンピュータを含むコンピュータシステムのためのプログラム開発支援装置、プログラム開発支援用プログラム、及びシミュレーション装置 |
JP4718244B2 (ja) * | 2005-05-30 | 2011-07-06 | 日本電信電話株式会社 | 量子プログラム変換装置、その方法、そのプログラム及び記録媒体 |
-
2011
- 2011-11-28 JP JP2011258481A patent/JP5921856B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021118464A1 (en) * | 2019-12-09 | 2021-06-17 | Horizon Quantum Computing Pte. Ltd. | Systems and methods for unified computing on digital and quantum computers |
US11842177B2 (en) | 2019-12-09 | 2023-12-12 | Horizon Quantum Computing Pte. Ltd. | Systems and methods for unified computing on digital and quantum computers |
Also Published As
Publication number | Publication date |
---|---|
JP2013114366A (ja) | 2013-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5921856B2 (ja) | 量子コンピュータシステム、量子コンピュータシステムの制御方法及びプログラム | |
TWI455025B (zh) | 根據迴路***或索引陣列的迴路並列化的方法與電腦可讀取媒體 | |
JP4042604B2 (ja) | プログラム並列化装置,プログラム並列化方法およびプログラム並列化プログラム | |
JP4962564B2 (ja) | 並列化プログラム生成方法、並列化プログラム生成装置、及び並列化プログラム生成プログラム | |
CN111160551B (zh) | 计算图执行方法、计算机设备及存储介质 | |
JP6572610B2 (ja) | 情報処理装置、コンパイル方法およびコンパイルプログラム | |
US20140149719A1 (en) | Arithmetic processing apparatus, control method of arithmetic processing apparatus, and a computer-readable storage medium storing a control program for controlling an arithmetic processing apparatus | |
US9164769B2 (en) | Analyzing data flow graph to detect data for copying from central register file to local register file used in different execution modes in reconfigurable processing array | |
US9977759B2 (en) | Parallel computing apparatus, compiling apparatus, and parallel processing method for enabling access to data in stack area of thread by another thread | |
US20210224185A1 (en) | Data layout optimization on processing in memory architecture for executing neural network model | |
US20150277874A1 (en) | Compiler method and compiler apparatus | |
JP5966509B2 (ja) | プログラム、コード生成方法および情報処理装置 | |
KR20200031150A (ko) | 데이터 처리장치의 데이터 항목들 내의 성분들의 계수 | |
US20230244459A1 (en) | Hybrid compilation apparatus and method for quantum-classical code sequences | |
US20120198425A1 (en) | Management of conditional branches within a data parallel system | |
Jiang et al. | Boyi: A systematic framework for automatically deciding the right execution model of OpenCL applications on FPGAs | |
US20120089813A1 (en) | Computing apparatus based on reconfigurable architecture and memory dependence correction method thereof | |
CN104133668A (zh) | 用于转换多线程程序代码的设备和方法 | |
US20140282594A1 (en) | Distributing processing of array block tasks | |
Katel et al. | High performance gpu code generation for matrix-matrix multiplication using mlir: some early results | |
JP5278538B2 (ja) | コンパイルシステム、コンパイル方法およびコンパイルプログラム | |
US11954563B2 (en) | Apparatus and method for error reduction in distributed quantum systems via fusing-and-decomposing gates | |
Liu et al. | Improving the performance of OpenMP by array privatization | |
KR20230101851A (ko) | 컴파일러를 이용한 고도의 병렬 처리 아키텍처 | |
JP5240200B2 (ja) | データ処理装置および方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140820 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140908 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160106 |
|
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: 20160329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160413 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5921856 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |