update path and modern main definition
authorEric Bohm <ebohm@illinois.edu>
Mon, 30 Jul 2012 23:00:29 +0000 (18:00 -0500)
committerEric Bohm <ebohm@illinois.edu>
Tue, 31 Jul 2012 15:58:57 +0000 (10:58 -0500)
examples/charm++/PUP/pupDisk/Makefile [new file with mode: 0644]
examples/charm++/PUP/pupDisk/pupDisk.ci [new file with mode: 0644]

diff --git a/examples/charm++/PUP/pupDisk/Makefile b/examples/charm++/PUP/pupDisk/Makefile
new file mode 100644 (file)
index 0000000..b6183c2
--- /dev/null
@@ -0,0 +1,24 @@
+CHARMC=../../../../bin/charmc $(OPTS)
+
+OBJS = pupDisk.o
+
+all: pupDisk
+
+pupDisk: $(OBJS)
+       $(CHARMC) -language charm++ -o pupDisk $(OBJS)
+
+pupDisk.decl.h: pupDisk.ci
+       $(CHARMC)  pupDisk.ci
+
+clean:
+       rm -f *.decl.h *.def.h conv-host *.o pupDisk charmrun
+
+pupDisk.o: pupDisk.C pupDisk.h someData.h pupDisk.decl.h
+       $(CHARMC) -c pupDisk.C
+
+test: all
+       ./charmrun pupDisk +p4 10 20 4 $(TESTOPTS)
+       ./charmrun pupDisk +p4 10 20 4 r $(TESTOPTS)
+
+bgtest: all
+       ./charmrun pupDisk +p4 10 +x2 +y2 +z1
diff --git a/examples/charm++/PUP/pupDisk/pupDisk.ci b/examples/charm++/PUP/pupDisk/pupDisk.ci
new file mode 100644 (file)
index 0000000..f348706
--- /dev/null
@@ -0,0 +1,48 @@
+////////////////////////////////////////////////
+//
+//  pupDisk.ci
+//
+//  Interface file for pupDisk
+//
+//  Author: Eric Bohm
+//  Date: 2012/1/23
+//
+////////////////////////////////////////////////
+
+mainmodule pupDisk {
+  include "someData.h";
+  readonly CkCallback icb;
+  readonly CkCallback wcb;
+  readonly CkCallback rcb;
+  readonly CkCallback vcb;
+  readonly CProxy_userData userDataProxy;
+  readonly CProxy_pupDisk pupDiskProxy;
+  readonly int numElementsPer;
+  mainchare main {
+    entry main(CkArgMsg *m);
+    entry void done(CkReductionMsg *);
+    entry void initialized(CkReductionMsg *);
+    entry void written(CkReductionMsg *);
+    entry void read(CkReductionMsg *);
+
+  };
+  group pupDiskMap : CkArrayMap {
+          entry pupDiskMap(int maxFiles);
+  };
+
+  array [1D] userData{
+    entry userData(int howbig, int numElements, int maxFiles);
+    entry void init();
+    entry void write();
+    entry void read();
+    entry void verify();    
+    entry void acceptData(someData &inData);
+  };
+
+  array [1D] pupDisk{
+    entry pupDisk(int howbig, int numElements, int maxFiles);
+    entry void write(int sender, someData &data);
+    entry void read(int sender);
+  };
+
+};