「整数関数」の版間の差分

提供: Tommy6
移動: 案内検索
34行: 34行:
 
{{!-}}
 
{{!-}}
 
{{!}} [[mad_hi]]
 
{{!}} [[mad_hi]]
{{!}}  
+
{{!}} [[mul_hi]](''a'', ''b'') + c を求めます。
 
{{!-}}
 
{{!-}}
 
{{!}} [[mad_sat]]
 
{{!}} [[mad_sat]]

2011年5月13日 (金) 22:18時点における版

整数関数はスカラもしくはベクトル引数をとります。

ベクトル版の整数関数では、演算はベクトルの要素ごとに行われます。それぞれの関数の解説は、各要素で行われる操作についてです。

関数の一覧

1.1 : OpenCL 1.1で追加・変更

関数 概要
abs 絶対値を求めます。
abs_diff オーバーフローが発生しないようにしながら |x| - |y| を求めます。
add_sat x + y を求めます。結果には飽和が適用されます。
hadd 中間の和でオーバーフローが発生しないようにしながら (x + y) >> 1 を求めます。
rhadd 中間の和でオーバーフローが発生しないようにしながら (x + y + 1) >> 1 を求めます。
clamp min(max(x, minval), maxval) を返します。
clz 最上位ビットから連続する 0 のビットの数を数えます。
mad_hi mul_hi(a, b) + c を求めます。
mad_sat
max
min
mul_hi
rotate
sub_sat
upsample

変更記録


―――― Version 1.1, The OpenCL Specification より翻訳