float3 -> float4; optional openmp; cpu with sqrlen