【手続補正書】
【提出日】平成31年3月22日(2019.3.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
並列プロセッサ上で実行するアプリケーション内のワークグループを含むカーネルのコンカレンシーファクタ（concurrency factor）を決定する方法であって、
前記ワークグループをミニカーネルに分割することであって、各ミニカーネルは、同時に実行するワークグループの数を含み、前記ワークグループの数は、前記ミニカーネルのコンカレンシーファクタであり、少なくとも１つの前記ミニカーネルの前記コンカレンシーファクタは、１よりも大きい、ことと、
前記並列プロセッサが、前記カーネルの少なくとも一部を前記ミニカーネルのシーケンスとして実行することと、
ミニカーネルの各シーケンスのパフォーマンス測定値を決定することと、
前記パフォーマンス測定値に基づいて、前記カーネルの所望のパフォーマンスを達成する特定のシーケンスを前記シーケンスから選択することと、
前記並列プロセッサが、前記カーネルを前記特定のシーケンスで実行することと、を含む、
方法。
【請求項２】
ミニカーネルにおいて同時に実行される全てのワークグループが連続している、請求項１の方法。
【請求項３】
前記シーケンスのうち少なくとも１つのシーケンス内の全てのミニカーネルは、共通のコンカレンシーファクタを有する、請求項１の方法。
【請求項４】
前記アプリケーションの実行中に新たなアプリケーションカーネルが呼び出される毎に、前記カーネルの少なくとも一部を実行することと、前記決定することと、前記選択することと、前記実行することと、を行うことをさらに含む、請求項１の方法。
【請求項５】
前記アプリケーションの実行中に動的に、前記カーネルの少なくとも一部を実行することと、前記決定することと、前記選択することと、前記実行することと、を行うことをさらに含む、請求項１の方法。
【請求項６】
前記所望のパフォーマンスを達成することは、実行時間を最小にすることと、熱的制限内で前記並列プロセッサを維持することと、電力効率及びエネルギー効率のうち少なくとも１つを最大にすることと、前記並列プロセッサ又は前記並列プロセッサを含むシステムの信頼性を最大にすることと、メモリの使用のためにワークグループ間の競合を最小にすることと、のうち少なくとも１つを含む、請求項１の方法。
【請求項７】
前記パフォーマンス測定値は、計算ユニットの感度（compute-unit sensitivity）を含む、請求項１の方法。
【請求項８】
前記アプリケーションの実行結果を、前記実行結果を表示するディスプレイに提供することをさらに含む、請求項１の方法。
【請求項９】
アプリケーション内のワークグループを含むカーネルのコンカレンシーファクタ（concurrency factor）を決定するように構成されたシステムであって、
前記アプリケーションを実行するように構成された並列プロセッサと、
前記並列プロセッサと情報を交換し、前記アプリケーションを記憶し、前記アプリケーションを前記並列プロセッサ内にロードするように構成された第１メモリと、
前記並列プロセッサと情報を交換するように構成された第２メモリと、を備え、
前記並列プロセッサは、
前記ワークグループをミニカーネルに分割することであって、各ミニカーネルは、同時に実行するワークグループの数を含み、前記ワークグループの数は、前記ミニカーネルのコンカレンシーファクタであり、少なくとも１つの前記ミニカーネルの前記コンカレンシーファクタは、１よりも大きい、ことと、
前記カーネルの少なくとも一部を前記ミニカーネルのシーケンスとして実行することと、
ミニカーネルの各シーケンスのパフォーマンス測定値を決定することと、
前記パフォーマンス測定値に基づいて、前記カーネルの所望のパフォーマンスを達成する特定のシーケンスを前記シーケンスから選択することと、
前記カーネルを前記特定のシーケンスで実行することと、
を行うように構成されている、
システム。
【請求項１０】
前記並列プロセッサは、連続しており同時に実行されるワークグループを備えるミニカーネルのシーケンスとして、前記カーネルの少なくとも一部を実行するように構成されている、請求項９のシステム。
【請求項１１】
前記並列プロセッサは、前記カーネルの少なくとも一部をミニカーネルのシーケンスとして実行するように構成されており、前記シーケンスの少なくとも１つのシーケンス内の全てのミニカーネルは、共通のコンカレンシーファクタを含む、請求項９のシステム。
【請求項１２】
前記並列プロセッサは、前記アプリケーションの実行中に新たなアプリケーションカーネルが呼び出される毎に、前記カーネルの少なくとも一部を実行することと、前記決定することと、前記選択することと、前記実行することと、を行うように構成されている、請求項９のシステム。
【請求項１３】
前記並列プロセッサは、前記アプリケーションの実行中に動的に、前記カーネルの少なくとも一部を実行することと、前記決定することと、前記選択することと、前記実行することと、を行うように構成されている、請求項９のシステム。
【請求項１４】
前記並列プロセッサは、実行時間を最小にすることと、熱的制限内で前記システムを維持することと、電力効率及びエネルギー効率のうち少なくとも１つを最大にすることと、前記システムの信頼性を最大にすることと、前記第１メモリ、前記第２メモリ又はこれらの両方のメモリの使用のためにワークグループ間の競合を最小にすることと、のうち少なくとも１つによって、前記カーネルの所望のパフォーマンスを達成する特定のシーケンスを選択するように構成されている、請求項９のシステム。
【請求項１５】
前記並列プロセッサは、前記パフォーマンス測定値として計算ユニットの感度（compute-unit unit sensitivity）を測定するように構成されている、請求項９のシステム。
【請求項１６】
前記アプリケーションの実行結果を提供するように構成された出力デバイスをさらに備える、請求項９のシステム。
【請求項１７】
前記出力デバイスは、視覚的ディスプレイを備える、請求項１６のシステム。
【請求項１８】
前記共通のコンカレンシーファクタは２の累乗である、請求項３の方法。
【請求項１９】
前記計算ユニットの感度は、計算挙動（compute behavior）、メモリ挙動（memory behavior）、１つ以上のランタイム統計、及び、実行するワークグループの数、のうち少なくとも１つに基づいて決定される、請求項７の方法。
【請求項２０】
前記計算ユニットの感度は、計算挙動、メモリ挙動、１つ以上のランタイム統計、及び、実行するワークグループの数、のうち少なくとも１つの線形関数としてモデル化される、請求項７の方法。
【請求項２１】
前記並列プロセッサは、計算挙動、メモリ挙動、１つ以上のランタイム統計、及び、実行するワークグループの数、のうち少なくとも１つに基づいて、前記計算ユニットの感度を測定するように構成されている、請求項１５のシステム。
【請求項２２】
前記並列プロセッサは、計算挙動、メモリ挙動、１つ以上のランタイム統計、及び、実行するワークグループの数、のうち少なくとも１つの線形関数として前記計算ユニットの感度を測定するように構成されている、請求項１５のシステム。
【請求項２３】
前記共通のコンカレンシーファクタは２の累乗である、請求項１１のシステム。