-
Notifications
You must be signed in to change notification settings - Fork 34
Open
Description
This kernel:
task-bench/core/core_kernel.cc
Line 234 in e241152
| A[i] = _mm256_fmadd_pd(A[i], A[i], A[i]); |
repeatedly applies
A = A*A + A (i.e. fmadd(A, A, A))
which quickly escalates to A=NaN.
To avoid this, the kernel can be changed to
A = -A*A + A (i.e. fnmsub(A, A, A)).
This makes the iteration equivalent to the Logistic map with r=1.
Adjusting the initial condition to A = 0.7 (or anything between 0 and 1) makes the iterations converge slowly to 0 over time.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels