Kernel dimensions feedback

Hi,

I am trying to schedule the following kernel

<%pyfr:kernel name='wspeed' ndim='1'
                usol='in fpdtype_t[${str(nupts)}][${str(nvars)}]'
                clen='in fpdtype_t'
                wsp='inout fpdtype_t[${str(nupts)}]'>

where

usol.ioshape = (27, 5, 18954)
clen.ioshape = (1, 18954)
wsp.ioshape = (27, 18954)
neles = 18954

and the kernel is registered

self.backend.kernel('kname', tplargs, dims=[neles], usol=usol, clen=clen, wsp=wsp

Is this scheduling correct?
I need to update wsp for each upts and I want each upts of the soln to see the same value of clen.
Hence the update I am looking for is something like:

wsp[i] = f(clen, [usol[i][j] for j in nvars & for i in nupts])

Is it correct?

Yes, this should be what you want assuming each wsp depends on every usol and clen point inside of an element. If the dependency is just pointwise you can use a two dimensional kernel which will be more efficient.

Regards, Freddie.