Routines

The 3rd section contains information about every subroutine. For each subroutine, the programmer needs to specify on which memory this routine depends, and in what way (read, write or both). This helps HyCuda to determine which data has to be available on which device at any point in the algorithm. The syntax of the routine-section looks like this:
    function-identifier: memory-identifier (permissions), ...
For example, a function fun1 that will read from array1 and will both read and write to array2 will be declared as
    fun1: array1 (r), array2 (rw)
The memory-identifiers should match those declared in the memory-section, and all functions that are part of the algorithm should be declared here.



Joren Heit 2013-12-17