Difference between revisions of "Proc"
From Mesham
Jump to navigationJump to searchm |
m (9 revisions imported) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 11: | Line 11: | ||
This will limit execution of a block to a certain process whose rank is guaranteed to be that specified.<br><br> | This will limit execution of a block to a certain process whose rank is guaranteed to be that specified.<br><br> | ||
− | ''Note:'' A variable declared within a proc block and allocated multiple will in fact, by inference, be allocated to the group of processes which contains a single process who's rank is the same as the proc block's | + | ''Note:'' A variable declared within a proc block and allocated multiple will in fact, by inference, be allocated to the group of processes which contains a single process who's rank is the same as the proc block's. |
− | |||
== Example == | == Example == | ||
#include <io> | #include <io> | ||
− | proc 0 { | + | function void main() { |
− | + | proc 0 { | |
− | + | print("Hello from 0\n"); | |
+ | }; | ||
− | + | proc 1 { | |
− | + | print("hello from 1\n"); | |
+ | }; | ||
}; | }; | ||
The code example will run on two processes, the first will display the message ''Hello from 0'', whilst the second will output the message ''hello from 1''. | The code example will run on two processes, the first will display the message ''Hello from 0'', whilst the second will output the message ''hello from 1''. | ||
− | ''Since: | + | ''Since: Version 0.41b'' |
[[Category:Parallel]] | [[Category:Parallel]] |
Latest revision as of 15:44, 15 April 2019
Syntax
proc n
{
process body
}
where n is a variable or value known at compile time.
Semantics
This will limit execution of a block to a certain process whose rank is guaranteed to be that specified.
Note: A variable declared within a proc block and allocated multiple will in fact, by inference, be allocated to the group of processes which contains a single process who's rank is the same as the proc block's.
Example
#include <io> function void main() { proc 0 { print("Hello from 0\n"); }; proc 1 { print("hello from 1\n"); }; };
The code example will run on two processes, the first will display the message Hello from 0, whilst the second will output the message hello from 1.
Since: Version 0.41b