10.7 NONLINEAR PROJECTION OPERATION
The linear projection operation in combination with the scheduling function determines the workload assigned to each thread or PE at any given time step. The linear projection operation is simple but not too flexible. We do not have control over how much calculations could be performed by each thread or PE at a given time step.
We modify the linear projection operation as follows:
(10.48)
![]()
where m is the desired number of points in
that will be allocated to one thread or PE. The floor(.) function finds the largest integer smaller than the division operation. We can therefore control the workload allocated to each thread or PE per time step as
(10.49)
![]()
For a concrete example, assume that our scheduling vector and projection direction are given by
(10.50)
![]()
(10.51)
![]()
We also assume that N = 1,024, n = 2, and m = 8. In that case, the global workload per time step to be done by all threads is equal to nN = 2,048, and in that case, the output samples ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access