#pragma nosimd ディレクティブはコンパイラーに、このディレクティブのすぐ後に続くループで VMX (Vector Multimedia Extension) 命令を生成しない よう命令します。
>>-#--pragma--nosimd-------------------------------------------><
このディレクティブは VMX をサポートするアーキテクチャーに対してのみ、 -qhot=simd オプションと共に使用された場合に効果を持ちます。これらのコンパイラー・オプションが有効な場合、コンパイラーは 1 つの配列の連続するエレメントのループで実行される特定の操作を、VMX (Vector Multimedia Extension) 命令への呼び出しに変換します。この呼び出しは 1 度にいくつかの結果を計算するため、それぞれの結果を順次計算するよりも高速です。
#pragma nosimd ディレクティブは、while、do while、および for ループにのみ適用されます。
#pragma nosimd ディレクティブはそのすぐ後に続くループにのみ適用されます。このディレクティブは、指定されたループ内にネストされている可能性のある他のループには何の効果も持ちません。
#pragma nosimd ディレクティブは、特定の最適化レベルを必要とせずに、ループ最適化および OpenMP ディレクティブと混用することができます。
関連情報