jnf
产品支持情况
产品 |
是否支持 |
|---|---|
Ascend 950PR/Ascend 950DT |
√ |
x |
|
x |
|
x |
|
x |
|
x |
|
x |
功能说明
获取输入数据x的n阶第一类贝塞尔函数jn的值。

函数原型
1 | inline float jnf(int n, float x) |
参数说明
参数名 |
输入/输出 |
描述 |
|---|---|---|
n |
输入 |
源操作数。 |
x |
输入 |
源操作数。 |
返回值说明
输入数据的n阶第一类贝塞尔函数jn的值。
- 当n<0时,返回值为nan。
- 当x=inf或-inf时,返回值为0。
- 当x=nan时,返回值为nan。
约束说明
- 使用本接口时,配置的线程数不应超过256,否则有栈溢出风险。
- n的最大取值为128。
需要包含的头文件
使用该接口需要包含"simt_api/math_functions.h"头文件。
1 | #include "simt_api/math_functions.h" |
调用示例
- SIMT编程场景:
1 2 3 4 5
__global__ __launch_bounds__(256) void KernelJn(float* dst, int* n, float* x) { int idx = threadIdx.x + blockIdx.x * blockDim.x; dst[idx] = jnf(n[idx], x[idx]); }
- SIMD与SIMT混合编程场景:
1 2 3 4 5
__simt_vf__ __launch_bounds__(256) inline void KernelJn(__gm__ float* dst, __gm__ int* n, __gm__ float* x) { int idx = threadIdx.x + blockIdx.x * blockDim.x; dst[idx] = jnf(n[idx], x[idx]); }
父主题: float类型数学库函数