
PTX Код (пример 2)
PTX Код (пример 2)
CUDA
PTX
CUDA
PTX
sub.f32 $f18, $f1, $f15;
sub.f32 $f19, $f3, $f16;
__device__ void
interaction(
float4
b0,
float4
b1,
float3
*accel)
$
, $ , $
;
sub.f32 $f20, $f5, $f17;
mul.f32 $f21, $f18, $f18;
mul.f32 $f22, $f19, $f19;
{
r.x = b1.x - b0.x;
r.y = b1.y - b0.y;
r z = b1 z - b0 z;
mul.f32 $f23, $f20, $f20;
add.f32 $f24, $f21, $f22;
add.f32 $f25, $f23, $f24;
r.z = b1.z - b0.z;
float
distSqr = r.x * r.x + r.y * r.y + r.z * r.z;
float
s = 1.0f/sqrt(distSqr);
accel->x += r.x * s;
rsqrt.f32 $f26, $f25;
mad.f32 $f13, $f18, $f26, $f13;
mov.f32 $f14, $f13;
d f32
$f11 $f19 $f26 $f11
accel->y += r.y * s;
accel->z += r.z * s;
}
mad.f32 $f11, $f19, $f26, $f11;
mov.f32 $f12, $f11;
mad.f32 $f9, $f20, $f26, $f9;
f32
$f10 $f9
mov.f32 $f10, $f9;