【事件の表示】
　特願２０１３−５４４７３６「システムコール要求の通信の最適化」拒絶査定不服審判事件〔平成２４年　６月２１日国際公開、ＷＯ２０１２／０８２８６７、平成２５年１２月２６日国内公表、特表２０１３−５４６１０５、請求項の数（２０）〕について、次のとおり審決する。
【結　論】
　原査定を取り消す。
　本願の発明は、特許すべきものとする。
【理　由】
第１　手続の経緯
　本件審判請求に係る出願（以下，「本願」という。）は，２０１１年１２月１４日（パリ条約による優先権主張外国庁受理２０１０年１２月１４日（以下，「優先日」という。），米国，２０１１年１１月３０日，米国）を国際出願日とする出願であって，その手続の経緯は以下のとおりである。
　　平成２５年　６月１４日　　　：国内書面の提出
　　平成２５年　８月１２日　　　：翻訳文の提出
　　平成２６年１２月１５日　　　：出願審査請求書，手続補正書の提出
　　平成２７年　１月２０日付け　：拒絶理由の通知
　　平成２７年　５月２６日　　　：意見書，手続補正書の提出
　　平成２７年　８月　４日付け　：拒絶査定
　　平成２７年１２月１１日　　　：審判請求書の提出
　　平成２９年　２月２４日付け　：拒絶理由の通知（当審）
　　平成２９年　５月３０日　　　：意見書，手続補正書の提出
第２　本願発明
　本願請求項１−２０に係る発明（以下，それぞれ「本願発明１」−「本願発明２０」という。）は，平成２９年５月３０日付けの手続補正で補正された特許請求の範囲の請求項１−２０に記載された事項により特定される発明であり，以下のとおりの発明である。
「　　【請求項１】
　ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップと，
　前記ＳＩＭＤエレメントをＳＩＭＤベクトルとしてまとめるステップと，
　前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信するステップと，
　各ワークアイテムについての結果を受信するステップと，
　を含む，方法。
　　【請求項２】
　前記ＳＩＭＤベクトルを，中央処理装置（ＣＰＵ）が認識することが可能な高優先度キュー内にエンキューするステップをさらに含む，
　請求項１の方法。
　　【請求項３】
　各ＳＩＭＤエレメントは，関数セレクタと，引数リストと，前記結果用のメモリ空間とを含む，
　請求項１の方法。
　　【請求項４】
　前記ＳＩＭＤベクトルは，複数のウェーブフロントからのシステムコール要求を含む，
　請求項１の方法。
　　【請求項５】
　少なくとも１つのプロセッサを有するコンピュータシステムで実行される方法であって，
　ウェーブフロント内の各ワークアイテムからのシステムコール要求に対応する単一命令複数データ（ＳＩＭＤ）エレメントを含むＳＩＭＤベクトルを受信するステップと，
　各ＳＩＭＤエレメントの各システムコール要求を実行するステップと，
　各システムコールの結果を，前記ＳＩＭＤベクトルを用いて，前記ウェーブフロント内の各ワークアイテムに送信するステップと，
　を含む，方法。
　　【請求項６】
　前記受信するステップは，前記コンピュータシステム内のグラフィックス処理デバイスが認識することが可能な高優先度キュー内の前記ＳＩＭＤベクトルを受信するステップを含む，
　請求項５の方法。
　　【請求項７】
　ウェーブフロント内のワークアイテムごとのシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するように構成されたメモリと，
　ＣＰＵとを含み，
　前記ＳＩＭＤエレメントは，ＳＩＭＤベクトルとしてまとめられ，
　前記ＣＰＵは，
　前記ＳＩＭＤエレメントに記憶された各システムコール要求を実行することと，
　各システムコール要求の結果を，前記ウェーブフロント内の各ワークアイテムに送信することと，
　を行うように構成されている，
　システム。
　　【請求項８】
　前記メモリは，前記ＳＩＭＤベクトルをエンキューするように構成された高優先度キューであり，前記高優先度キューは，ＣＰＵによって認識可能である，
　請求項７のシステム。
　　【請求項９】
　各ＳＩＭＤエレメントは，関数セレクタと，引数リストと，前記結果用のメモリ空間とを含む，
　請求項７のシステム。
　　【請求項１０】
　前記ＳＩＭＤベクトルは，複数のウェーブフロントからのシステムコール要求を含む，
　請求項８のシステム。
　　【請求項１１】
　メモリと，
　ＣＰＵとを含み，
　前記ＣＰＵは，
　情報を含む単一命令複数データ（ＳＩＭＤ）エレメントを含むＳＩＭＤベクトルを受信して，対応するシステムコール要求をウェーブフロント内の各ワークアイテムごとに処理することと，
　前記ＳＩＭＤベクトルに記憶された各システムコールを実行することと，
　各システムコールの結果を，前記ウェーブフロント内の各ワークアイテムに送信することと，
　を行うように構成されている，
　システム。
　　【請求項１２】
　前記ＣＰＵは，
　高優先度キューから前記ＳＩＭＤベクトルを受信すること，を行うように構成されている，
　請求項１１のシステム。
　　【請求項１３】
　コンピュータ記憶デバイスに記憶された命令であって，前記命令がコンピューティングデバイスによって実行されると，
　対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶して，ウェーブフロント内のワークアイテムごとにシステムコール要求を処理することと，
　前記ＳＩＭＤエレメントをＳＩＭＤベクトルとしてまとめて，システムコール要求データ構造を生成することと，
　前記ＳＩＭＤベクトルを，実行対象として前記コンピューティングデバイス内のプロセッサに送信することと，
　前記ウェーブフロント内の各ワークアイテムについての結果を受信することと，
　を前記コンピューティングデバイスに実行させる，
　命令。
　　【請求項１４】
　前記ＳＩＭＤベクトルを，前記プロセッサが認識することが可能な高優先度キュー内にエンキューすることをさらに含む，
　請求項１３の命令。
　　【請求項１５】
　コンピュータ記憶デバイスに記憶された命令であって，前記命令がコンピューティングデバイスによって実行されると，
　ウェーブフロント内の各ワークアイテムからのシステムコール要求に対応する単一命令複数データ（ＳＩＭＤ）エレメントを含むＳＩＭＤベクトルを受信することと，
　前記ＳＩＭＤベクトルからの各システムコール要求を実行することと，
　各システムコールの結果を，前記ウェーブフロント内の各ワークアイテムに送信することと，
　を前記コンピューティングデバイスに実行させる，
　命令。
　　【請求項１６】
　前記受信することは，グラフィックス処理デバイスが認識することが可能な高優先度キュー内の前記ＳＩＭＤベクトルを受信することを含む，
　請求項１５の命令。
　　【請求項１７】
　コンピュータ記憶デバイスであって，前記デバイスには命令が記憶されており，前記命令がコンピューティングデバイスによって実行されると，
　対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶して，ウェーブフロント内のワークアイテムごとにシステムコール要求を処理することと，
　前記記憶されたシステムコールを，ＳＩＭＤベクトルを用いて，実行対象として前記コンピューティングデバイス内のプロセッサに送信することであって，前記ＳＩＭＤベクトルは，単一データ構造としてまとめられた前記ＳＩＭＤエレメントを含むことと，
　前記送信に応じて，前記ウェーブフロント内の各ワークアイテムについての結果を受信することと，
　を前記コンピューティングデバイスに実行させる，
　コンピュータ記憶デバイス。
　　【請求項１８】
　前記ＳＩＭＤベクトルを，前記プロセッサが認識することが可能な高優先度キュー内にエンキューすることをさらに含む，
　請求項１７のコンピュータ記憶デバイス。
　　【請求項１９】
　コンピュータ記憶デバイスであって，前記デバイスには命令が記憶されており，前記命令がコンピューティングデバイスによって実行されると，
　ウェーブフロント内の各ワークアイテムからのシステムコール要求に対応する単一命令複数データ（ＳＩＭＤ）エレメントを含むＳＩＭＤベクトルを受信することと，
　前記ＳＩＭＤベクトルからの各システムコール要求を実行することと，
　各システムコールの結果を，前記ウェーブフロント内の各ワークアイテムに送信することと，
　を前記コンピューティングデバイスに実行させる，
　コンピュータ記憶デバイス。
　　【請求項２０】
　前記ＳＩＭＤベクトルは，グラフィックス処理デバイスが認識することが可能な高優先度キューから受信される，
　請求項１９のコンピュータ記憶デバイス。」
第３　引用文献，引用発明等
１　引用文献１について
　原査定の拒絶の理由に引用された引用文献１（特開２００９−１４０４９１号公報）には，図面とともに次のＡ−Ｃの事項が記載されている。
Ａ　「【０１７９】
　[0190]プロセッサは，実行コアの中に一以上のＤＦＭＡユニットを含んでいてもよい。例えば，スーパースケーラ命令発行方式（すなわち，１サイクルあたり二つ以上の命令を発行する）又はＳＩＭＤ命令発行方式が望ましい場合，複数のＤＦＭＡユニットを実施することができ，異なるＤＦＭＡユニットが，異なる機能の組合せをサポートすることができる。さらに，プロセッサは，複数の実行コアを含んでいてもよく，コアのそれぞれが自身の（一つ以上の）ＤＦＭＡユニットを有することができる。
【０１８０】
　[0191]いくつかの実施形態においては，実行コアがＳＩＭＤ命令発行をサポートし，一つのＤＦＭＡパイプラインにおいて複数のデータセットを連続的に処理することができるように，一つのＤＦＭＡユニットを，入力の順序付け及び出力収集のための適切な論理回路と組み合わせて使用することができる。」
Ｂ　「【０１８１】
　[0192]図１１は，本発明の実施形態による，ＤＦＭＡ機能ユニット１１０２を含む実行コア１１００のブロック図である。ＤＦＭＡユニット１１０２は，上述したＤＦＭＡユニット３２０に類似するユニット，又は同じユニットとすることができる。コア１１００はＳＩＭＤ命令を発行する，すなわち，Ｐ組の異なるセットの単精度オペランドを有する同じ命令を，Ｐ個のセットの単精度ＳＩＭＤユニット１１０４に並列に発行することができる。ＳＩＭＤユニット１１０４のそれぞれは，同じオペコードと，異なるセットのオペランドとを受け取る。Ｐ個のＳＩＭＤユニット１１０４は，並列に動作してＰ個の結果を生成する。ＤＦＭＡユニット１１０２には，Ｐ−ｗａｙ　ＳＩＭＤ命令が，Ｐ個の一連のＳＩＳＤ（単一命令単一データ）命令として発行される。
【０１８２】
　[0193]入力マネージャ１１０６（命令発行ユニットの一部とすることができる）は，ＳＩＭＤ命令のオペランドを集め，ＳＩＭＤ命令のＰ個のセットのオペランド全てが集まったとき，それらオペランド及び適用可能なオペコードを，Ｐ個のＳＩＭＤユニット１１０４又はＤＦＭＡユニット１１０２のいずれかに提供する。出力収集器１００８は，ＳＩＭＤユニット１１０４又はＤＦＭＡユニット１１０２からの結果を集め，それらの結果を，結果バス１１１０を介してレジスタファイル（図１１には示していない）に提供する。いくつかの実施形態においては，結果バス１１１０は，入力マネージャ１１０６へのバイパス経路も提供し，従って，結果を次の命令において使用することができるように，結果をレジスタファイルに提供するのと並列に入力マネージャ１１０６に提供することができる。一つのＤＦＭＡユニット１１０２を使用して，見かけ上のＳＩＭＤ動作を提供する目的で，入力マネージャ１１０６は，例えば，Ｐ個の連続するクロックサイクルのそれぞれにおいて，異なるセットのオペランドを有する同じオペコードを発行することによって，ＤＦＭＡユニット１１０２への命令の発行をシリアル化することが有利である。」
Ｃ　「【図１１】
」
２　したがって，上記引用文献１には次の発明（以下，「引用発明」という。）が記載されていると認められる。
「入力マネージャとＰ個のセットの単精度ＳＩＭＤユニットとＤＦＭＡユニットと出力収集器とを含む実行コアにおける方法であって，
　前記入力マネージャは，ＳＩＭＤ命令のオペランドを集め，ＳＩＭＤ命令のＰ個のセットのオペランド全てが集まったとき，それらオペランド及び適用可能なオペコードを，Ｐ個の前記ＳＩＭＤユニット又はＤＦＭＡユニットのいずれかに提供し，
　前記Ｐ個のＳＩＭＤユニットのそれぞれは，前記入力マネージャから，同じオペコードと，異なるセットのオペランドとを受け取り，並列に動作してＰ個の結果を生成し，
　前記ＤＦＭＡユニットは，前記入力マネージャから，Ｐ−ｗａｙ ＳＩＭＤ命令を，Ｐ個の一連のＳＩＳＤ（単一命令単一データ）命令として受け取り，前記ＳＩＳＤ命令を実行し，
　前記出力収集器は，前記ＳＩＭＤユニット又は前記ＤＦＭＡユニットからの結果を集め，それらの結果を，結果バスを介してレジスタファイルに提供する，
ことを含む方法。」
　
第４　対比・判断
１　本願発明１について
（１）対比
　本願発明１と引用発明とを対比すると，次のことがいえる。
ア　引用発明では，「ＳＩＭＤ命令」により「オペランド及び適用可能なオペコード」が「Ｐ個の前記ＳＩＭＤユニット又はＤＦＭＡユニットのいずれかに提供」されるところ，「ＳＩＭＤ命令」を実行するための同じ「オペコード」によるＰ個のワークアイテムが，「Ｐ個の前記ＳＩＭＤユニット又はＤＦＭＡユニット」に提供されるといえるから，引用発明における「ＳＩＭＤ命令」の「オペコード」による各ワークアイテムが，本願発明１の「ウェーブフロント内のワークアイテム」に相当するといえる。
イ　引用発明では，「ＳＩＭＤ命令」を実行する「オペコード」によるＰ個のワークアイテムに対応して，「入力マネージャは，ＳＩＭＤ命令のオペランドを集め」，「同じオペコードと異なるセットのオペランドをＰ個のＳＩＭＤユニットに提供」するところ，「同じオペコードと，異なるセットのオペランド」は“単一命令複数データ（ＳＩＭＤ）エレメント”とみることができるから，Ｐ個の“ワークアイテム”の処理に対応して，“単一命令複数データ（ＳＩＭＤ）エレメント”として情報を収集するといえる。
　一方，本願発明１では，「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶する」ところ，「（ＳＩＭＤ）エレメントに情報を記憶する」ことは，「ワークアイテム」ごとの処理のための情報を収集することに他ならないから，“ウェーブフロント内のワークアイテムごとに処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントとして情報を収集する”といえる。
　そうすると，引用発明の「入力マネージャは，ＳＩＭＤ命令のオペランドを集め，ＳＩＭＤ命令のＰ個のセットのオペランド全てが集」まることと，
　本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」とは，後記する点で相違するものの，
　“ウェーブフロント内のワークアイテムごとに処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントとして情報を収集する”点で共通しているといえる。
ウ　引用発明では，「ＳＩＭＤ命令のＰ個のセットのオペランド全てが集まったとき，それらオペランド及び適用可能なオペコードを，Ｐ個の前記ＳＩＭＤユニット又はＤＦＭＡユニットのいずれかに提供し」，「Ｐ個のＳＩＭＤユニットのそれぞれは，前記入力マネージャから，同じオペコードと，異なるセットのオペランドとを受け取り，並列に動作してＰ個の結果を生成」するところ，Ｐ個の「ＳＩＭＤユニット」は「同じオペコードと，異なるセットのオペランド」，すなわち，“単一命令複数データ（ＳＩＭＤ）エレメント”を実行するといえ，加えて，「Ｐ個のＳＩＭＤユニット」は“プロセッサ”の態様の１つであるといえる。
　そうすると，引用発明の「ＳＩＭＤ命令のＰ個のセットのオペランド全てが集まったとき，それらオペランド及び適用可能なオペコードを，Ｐ個の前記ＳＩＭＤユニット又はＤＦＭＡユニットのいずれかに提供」することと，
　本願発明１の「前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信するステップ」とは，後記する点で相違するものの，
　“前記ＳＩＭＤエレメントを，実行対象としてプロセッサに送信するステップ”点で共通しているといえる。
エ　引用発明では，「出力収集器は，前記ＳＩＭＤユニット又は前記ＤＦＭＡユニットからの結果を集め，それらの結果を，結果バスを介してレジスタファイルに提供する」ところ，各「ＳＩＭＤユニット」が実行した「ＳＩＭＤ命令」，すなわち，“ワークアイテム”についての結果を「出力収集器」が受信するとみることができる。
　そうすると，引用発明の「出力収集器は，前記ＳＩＭＤユニット又は前記ＤＦＭＡユニットからの結果を集め，それらの結果を，結果バスを介してレジスタファイルに提供する」ことと，本願発明１の「各ワークアイテムについての結果を受信するステップ」とに実質的な違いはないといえる。
　したがって，本願発明１と引用発明との間には，次の一致点，相違点があるといえる。
（一致点）
「　ウェーブフロント内のワークアイテムごとに処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントとして情報を収集するステップと，
　前記ＳＩＭＤエレメントを，実行対象としてプロセッサに送信するステップと，
　各ワークアイテムについての結果を受信するステップと，
　を含む，方法。」
（相違点）
（相違点１）
　ＳＩＭＤエレメントの情報の収集に関し，本願発明１では，「ウェーブフロント内のワークアイテムごと」の「システムコール要求を処理するために」，「ワークアイテムごとに」「対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶する」のに対して，
　引用発明では，「ＳＩＭＤ命令」のＰ個の処理に対応して，「ＳＩＭＤ命令のオペランドを集め」るものの，システムコール要求の処理を目的とすることについて言及されていない点。
（相違点２）
　本願発明１では，「ＳＩＭＤエレメントをＳＩＭＤベクトルとしてまとめる」のに対して，
　引用発明では，「ＳＩＭＤ命令のＰ個のセットのオペランド」を「ＳＩＭＤベクトル」としてまとめることについて言及されていない点。
（相違点３）
　ＳＩＭＤエレメントのプロセッサへの送信に関し，本願発明１では，「ＳＩＭＤエレメント」をまとめた「ＳＩＭＤベクトルを，実行対象としてプロセッサに送信する」のに対して，
　引用発明では，「それらオペランド及び適用可能なオペコードを，Ｐ個の前記ＳＩＭＤユニット又はＤＦＭＡユニットのいずれかに提供」するものの，「ＳＩＭＤベクトル」を送信することについて言及されていない点
（２）相違点についての判断
ア　相違点１について
　引用発明では，「ＳＩＭＤ命令」を構成するＰ個の処理に対応して，「入力マネージャは，ＳＩＭＤ命令のオペランドを集め」るところ，ＳＩＭＤエレメントとして「同じオペコードと，異なるセットのオペランド」を収集するのは，「同じオペコード」によるＰ個の処理を対応するＰ個のＳＩＭＤユニットに依頼するためであり，システムコール要求の処理を依頼することを目的とするものとは認められない。
　また，コンピュータシステムにおいて，システムコール要求の処理をＯＳに依頼することが本願の優先日前に当該技術分野の周知技術であったとしても，引用発明において，システムコール要求の処理を依頼するために，ＳＩＭＤエレメントにシステムコール要求に係る情報を収集することの動機付けを直ちに見い出すことはできない。ＳＩＭＤ方式を採用するプロセッサにおいて，ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，ＳＩＭＤエレメントに情報を記憶することが，当該技術分野の周知技術であったとも認められない。
　そうすると，引用発明において，ＳＩＭＤ命令を構成するＰ個のワークアイテムごとにシステムコール要求を処理するために，ＳＩＭＤエレメントに情報を記憶すること，すなわち，上記相違点１に係る構成とすることは，当業者が適宜なし得たものであるとすることはできない。
イ　相違点２，３について
　上記相違点２と相違点３とは関連しているので，併せて検討すると，
　引用発明では，「ＳＩＭＤ命令のＰ個のセットのオペランド全てが集まったとき，それらオペランド及び適用可能なオペコードを，Ｐ個の前記ＳＩＭＤユニット又はＤＦＭＡユニットのいずれかに提供」し，「Ｐ個のＳＩＭＤユニットのそれぞれは，前記入力マネージャから，同じオペコードと，異なるセットのオペランドとを受け取」るところ，「同じオペコードと，異なるセットのオペランド」は異なる「ＳＩＭＤユニット」に提供するものであり，「同じオペコードと，異なるセットのオペランド」のＰ個のセットをまとめてＳＩＭＤベクトルを構成し，ＳＩＭＤベクトルを，実行対象としてプロセッサに送信する動機付けを見い出すことはできない。
　また，上記アで検討のとおり，引用発明は，ワークアイテムごとにシステムコール要求の処理を依頼することを目的とするものとは認められないから，システムコール要求の処理を依頼するための「ＳＩＭＤベクトル」を構成することを，設計的事項とすることはできない。
　そうすると，引用発明において，同じオペコードと異なるセットのオペランド，すなわち，ＳＩＭＤエレメントをＰ個のＳＩＭＤユニットに提供することに代えて，ＳＩＭＤエレメントをＳＩＭＤベクトルとしてまとめて，前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信すること，すなわち，上記相違点２，３に係る構成とすることは，当業者が適宜なし得たものであるとすることはできない。
　したがって，上記ア，イでの検討から，本願発明１は，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
２　本願発明２−４について
　本願発明２−４も，本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」，「前記ＳＩＭＤエレメントをＳＩＭＤベクトルとしてまとめるステップ」，及び「前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信するステップ」と同一の構成を備えるものであるから，本願発明１と同じ理由により，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
３　本願発明５−６について
　本願発明５−６は，本願発明１−２に対応し，「少なくとも１つのプロセッサを有するコンピュータシステムで実行される方法」として特定した発明であり，本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」，及び「前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信するステップ」に対応する構成を備えるものであるから，本願発明１と同じ理由により，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
４　本願発明７−１０について
　本願発明７−１０は，本願発明１−４に対応する「システム」の発明であり，本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」，及び「前記ＳＩＭＤエレメントをＳＩＭＤベクトルとしてまとめるステップ」に対応する構成を備えるものであるから，本願発明１と同じ理由により，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
５　本願発明１１−１２について
　本願発明１１−１２は，本願発明１−２に対応する「システム」の発明であり，本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」，及び「前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信するステップ」に対応する構成を備えるものであるから，本願発明１と同じ理由により，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
６　本願発明１３−１４について
　本願発明１３−１４は，本願発明１−２に対応する「命令」の発明であり，本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」，及び「前記ＳＩＭＤエレメントをＳＩＭＤベクトルとしてまとめるステップ」に対応する構成を備えるものであるから，本願発明１と同じ理由により，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
７　本願発明１５−１６について
　本願発明１５−１６は，本願発明１−２に対応する「命令」の発明であり，本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」，及び「前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信するステップ」に対応する構成を備えるものであるから，本願発明１と同じ理由により，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
８　本願発明１７−１８について
　本願発明１７−１８は，本願発明１−２に対応する「コンピュータ記憶デバイス」の発明であり，本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」，「前記ＳＩＭＤエレメントをＳＩＭＤベクトルとしてまとめるステップ」，及び「前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信するステップ」に対応する構成を備えるものであるから，本願発明１と同じ理由により，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
９　本願発明１９−２０について
　本願発明１９−２０は，本願発明１−２に対応する「コンピュータ記憶デバイス」の発明であり，本願発明１の「ウェーブフロント内のワークアイテムごとにシステムコール要求を処理するために，対応する単一命令複数データ（ＳＩＭＤ）エレメントに情報を記憶するステップ」，及び「前記ＳＩＭＤベクトルを，実行対象としてプロセッサに送信するステップ」に対応する構成を備えるものであるから，本願発明１と同じ理由により，当業者であっても，引用発明に基づいて容易に発明できたものとはいえない。
第５　原査定の概要及び原査定についての判断
　原査定は，請求項１−２０について上記引用文献１に基づいて，当業者が容易に発明できたものであるから，特許法第２９条第２項の規定により特許を受けることができないというものである。
　しかしながら，上記のとおり，本願発明１−２０は，上記引用文献１に記載された発明に基づいて，当業者が容易に発明できたものではない。したがって，原査定を維持することはできない。
第６　当審拒絶理由について
＜特許法第３６条第６項第２号について＞
（１）当審では，請求項１３，１５の「コンピュータ記憶デバイスを含む製品」という記載の意味が不明確であるとの拒絶の理由を通知しているが，平成２９年５月３０日付けの補正において，「コンピュータ記憶デバイスに記憶された命令」と補正された結果，この拒絶の理由は解消した。
（２）当審では，請求項１３−１６の「製品」という記載の意味が不明確であるとの拒絶の理由を通知しているが，平成２９年５月３０日付けの補正において，「命令」と補正された結果，この拒絶の理由は解消した。
第７　むすび
　以上のとおり，本願発明１−２０は，当業者が引用発明に基づいて容易に発明をすることができたものではない。したがって，原査定の理由によっては，本願を拒絶することはできない。
　また，他に本願を拒絶すべき理由を発見しない。
　よって，結論のとおり審決する。