HPC Magazine Mars 2014 - OpenSPL, le langage de programmation spatiale

Listing 3 - Exemple de noyau control flow dans data flow.


class MovingAvgSimpleKernel extends Kernel {
  MovingAvgSimpleKernel() {
    SCSVar x = io.input("x", scsFloat(7, 17));
    SCSVar prev = stream.offset(x, --1);
    SCSVar next = stream.offset(x, 1);
    SCSVar sum = prev + x + next;
    SCSVar result = (sum / 3);
    io.output("y", result, scsFloat(7, 17));
  }
}