src/jmsg_host.h
src/jmsg_process.c
src/jmsg_process.h
- src/jmsg_task.c
- src/jmsg_task.h
- src/jmsg_synchro.c
- src/jmsg_synchro.h
src/jmsg_rngstream.c
src/jmsg_rngstream.h
+ src/jmsg_synchro.c
+ src/jmsg_synchro.h
+ src/jmsg_task.c
+ src/jmsg_task.h
)
+set(JTRACE_C_SRC
+ src/jtrace.c
+ src/jtrace.h
+)
+
set(JMSG_JAVA_SRC
org/simgrid/msg/Host.java
org/simgrid/msg/HostFailureException.java
org/simgrid/msg/Comm.java
org/simgrid/msg/RngStream.java
)
+set(JTRACE_JAVA_SRC
+ org/simgrid/trace/Trace.java
+)
set(JAVA_EXAMPLES
+ examples/async/AsyncTest.java
+ examples/async/FinalizeTask.java
+ examples/async/Forwarder.java
+ examples/async/Master.java
+ examples/async/Slave.java
examples/bittorrent/Bittorrent.java
examples/bittorrent/Common.java
examples/bittorrent/Connection.java
examples/master_slave_kill/MsKill.java
examples/master_slave_kill/Slave.java
examples/master_slave_kill/FinalizeTask.java
- examples/async/AsyncTest.java
- examples/async/FinalizeTask.java
- examples/async/Forwarder.java
- examples/async/Master.java
- examples/async/Slave.java
- examples/startKillTime/Slave.java
+ examples/migration/Emigrant.java
+ examples/migration/Migration.java
+ examples/migration/Policeman.java
+ examples/mutualExclusion/centralized/MutexCentral.java
+ examples/mutualExclusion/centralized/GrantTask.java
+ examples/mutualExclusion/centralized/Coordinator.java
+ examples/mutualExclusion/centralized/ReleaseTask.java
+ examples/mutualExclusion/centralized/Node.java
+ examples/mutualExclusion/centralized/RequestTask.java
+ examples/pingPong/PingPongTask.java
+ examples/pingPong/Sender.java
+ examples/pingPong/Receiver.java
+ examples/pingPong/PingPongTest.java
examples/startKillTime/Master.java
+ examples/startKillTime/Slave.java
examples/startKillTime/StartKillTime.java
+ examples/tracing/PingPongTask.java
+ examples/suspend/DreamMaster.java
+ examples/suspend/LazyGuy.java
+ examples/suspend/Suspend.java
+ examples/tracing/Sender.java
+ examples/tracing/Receiver.java
+ examples/tracing/TracingTest.java
)
set(CMAKE_SRC
)
set(XML_FILES
- examples/commTime/commTimeDeployment.xml
- examples/mutualExclusion/ring3.xml
- examples/mutualExclusion/centralized/mutex_centralized_deployment.xml
examples/platform.xml
- examples/pingPong/pingPongDeployment.xml
- examples/basic/basicDeployment.xml
- examples/basic/deploy.xml
- examples/master_slave_bypass/platform.xml
- examples/master_slave_kill/platform.xml
examples/async/asyncDeployment.xml
+ examples/tracing/tracingPingPongDeployment.xml
examples/bittorrent/bittorrent.xml
+ examples/commTime/commTimeDeployment.xml
+ examples/masterslave/masterslaveDeployment.xml
+ examples/masterslave/deploy.xml
+ examples/master_slave_bypass/platform.xml
+ examples/master_slave_kill/platform.xml
+ examples/mutualExclusion/ring3.xml
+ examples/mutualExclusion/centralized/mutex_centralized_deployment.xml
+ examples/pingPong/pingPongDeployment.xml
)
set(source_to_pack
COMMENT "Build examples for java"
OUTPUT ${JAVA_EXAMPLES_CLASS}
DEPENDS ${JAVA_EXAMPLES}
- COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/basic/*.java
- COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/async/*.java
- COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/chord/*.java
- COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/commTime/*.java
- COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/master_slave_bypass/*.java
- COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/master_slave_kill/*.java
- COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/mutualExclusion/centralized/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/async/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/bittorrent/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/chord/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/commTime/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/io/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/masterslave/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/master_slave_bypass/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/master_slave_kill/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/migration/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/mutualExclusion/centralized/*.java
COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/pingPong/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/priority/*.java
COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/startKillTime/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/tracing/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/bittorrent/*.java
+ COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/suspend/*.java
+
)
add_custom_target(simgrid_java_examples ALL
ENABLE_TESTING()
ADD_TEST(async ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/async/async.tesh)
- ADD_TEST(basic ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/basic/basic.tesh)
- ADD_TEST(bittorrent ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/bittorrent/bittorrent.tesh)
- ADD_TEST(chord ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/chord/chord.tesh)
- ADD_TEST(pingPong ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/pingPong/pingpong.tesh)
- ADD_TEST(CommTime ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/commTime/commtime.tesh)
- ADD_TEST(mutualExclusion ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/mutualExclusion/mutualexclusion.tesh)
+ ADD_TEST(bittorrent ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/bittorrent/bittorrent.tesh)
ADD_TEST(bypass ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/master_slave_bypass/bypass.tesh)
+ ADD_TEST(commTime ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/commTime/commtime.tesh)
+ ADD_TEST(chord ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/chord/chord.tesh)
ADD_TEST(kill ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/master_slave_kill/kill.tesh)
+ ADD_TEST(masterslave ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/masterslave/masterslave.tesh)
+ ADD_TEST(migration ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/migration/migration.tesh)
+ ADD_TEST(mutualExclusion ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/mutualExclusion/mutualexclusion.tesh)
+ ADD_TEST(pingPong ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/pingPong/pingpong.tesh)
+ ADD_TEST(priority ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/priority/priority.tesh)
ADD_TEST(startKillTime ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/startKillTime/startKillTime.tesh)
- set(test_list basic bittorrent chord async pingPong CommTime mutualExclusion bypass kill startKillTime tracing)
+ ADD_TEST(suspend ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/suspend/suspend.tesh)
+ADD_TEST(tracing ${TESH_BIN_PATH} ${TESH_OPTION} --setenv srcdir=${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/examples/tracing/tracingPingPong.tesh)
+#Don't forget to put new test in this list!!!
-set(test_list async bittorrent bypass chord commTime kill masterslave migration mutualExclusion pingPong priority startKillTime)
+ #Don't forget to put new test in this list!!!
++set(test_list async bittorrent bypass chord commTime kill masterslave migration mutualExclusion pingPong priority startKillTime tracing)
##########################################
# Set the DYLD_LIBRARY_PATH for mac #
- SimGrid-java (3.6.1) unstable; urgency=low
-
- * Introduce msg.simgrid.Mutex, exporting simgrid mutex to Java.
+SimGrid-java (3.8) unstable; urgency=low
+
+ * Introduce org.simgrid.trace.Trace (partial implementation of JAVA bindings
+ for the TRACE API).
+ Although all TRACE methods appear in the Trace class, please not that only
+ few of thems are really implemented at the JNI level (see ./src/jtrace.c
+ for further information).
+
-
+ SimGrid-java (3.7.1) stable; urgency=low
+
+ The "Java aint got to be bloated and slow" release
++
+ Major cleanups:
+ * Various internal cleanups and performance improvement
+ Simulations are expected to run up to twice faster or so
+ * Make Process.kill(process) an instance method, not a static one
+ * User processes are not java.lang.Thread subclasses.
+ This breaks the compatibility (sorry), but previous API was
+ brain-dead, making it impossible to have non-trivial
+ initializations in the process constructor.
+ * Require a full constructor per Process sub-class.
+ Kinda breaks the compatibility (sorry), but this allows a much more
+ efficient way to launch the processes at simulation startup.
* Do not embeed our version of semaphores, java 1.5 can be considered
as sufficiently prevalent for us to not dupplicate its features.
- * Make Process.kill(process) an instance method, not a static one
- * Fix a bug around Process.kill()
- * Add the asynchronous API to the bindings.
- * Add "sleep" in Process with Thread-like syntax/use.
- * Change the way the Process are created in ApplicationHandler: a full
- constructor is now needed for your child classes.
- * Change the way Process are created: Process are no longer a Thread subclass.
- -- $date Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>
+ * Lot of bug fixes
+
+ Extend the API:
+ * Add examples for almost every part of the API
+ We spotted and fixed a lot of bugs in the process
+
+ * New module: asynchronous communication API
+ * New function: Process.sleep()
+ It takes milliseconds as argument, just as java.lang.Thread.sleep()
+ * New module: org.simgrid.msg.Mutex (SimGrid mutexes)
+ * New module: org.simgrid.msg.RngStream (RngStreams random generators)
- SimGrid-java (3.6) unstable; urgency=low
+ -- 2012-06-12 Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>
+
+ SimGrid-java (1.0 (3.6) unstable; urgency=low
* Initial release.
* Split of every thing from simgrid v3.5 into a separate package.