Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
9 years ago

Compile kernel as task not as NDRange

Hi,

My design has multiple kernels communicating through channels forming a chain like this:

Kga -> Kconf -> Kene -> Kst

It is running correctly in emulation, but some information in the optimization report seems strange to me:

Specifically, one kernel (Kga) is compiled as NDRange, although no work-item function is used in any kernel.

Is there any function/statement that is causing this kernel to be compiled as NDRange?

5 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Thanks for the info.

    I added that attribute, but unfortunately that kernel is still being compiled as ND-Range.

    The log shows warnings:

    "Compiler Warning: Channel ordering barrier insertion in X of Kernel Kga, but kernels may hang as a result"

    I don´t know how to interpret this warning. Have you experienced something like this before?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    An alternative to using __attribute__((max_global_work_dim(0))) is also __attribute__((task)) which should also do the same thing