aboutsummaryrefslogtreecommitdiff
path: root/tests/bench/rss/a100.zc
diff options
context:
space:
mode:
Diffstat (limited to 'tests/bench/rss/a100.zc')
-rw-r--r--tests/bench/rss/a100.zc11
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/bench/rss/a100.zc b/tests/bench/rss/a100.zc
new file mode 100644
index 0000000..f869026
--- /dev/null
+++ b/tests/bench/rss/a100.zc
@@ -0,0 +1,11 @@
+namespace;
+include rt, actor;
+typecheck on;
+int work(int n) { rt.syscall(48, 500, 0, 0); return n + 1; }
+fn main() {
+ let n = 100, i = 0, sum = 0;
+ actor.Actor<int, int>*[101] as;
+ while (i < n) { as[i] = rt.new(actor.Actor<int, int>); as[i].spawn(work); as[i].recv(fn(int v) { sum = sum + v; return 0; }); as[i].send(i); i++; }
+ i = 0; while (i < n) { as[i].await(); as[i].close(); i++; }
+ rt.put_n(sum); rt.put_c(10); return 0;
+}