jzhou [Sat, 18 Sep 2010 20:08:58 +0000 (20:08 +0000)]
Initial version of cache adaption for mutator
jjenista [Thu, 16 Sep 2010 21:54:42 +0000 (21:54 +0000)]
modularize core prof correctly, starting mem pool strat for task records
jjenista [Thu, 16 Sep 2010 21:53:40 +0000 (21:53 +0000)]
mini test to mimic SOR for mem pool testing
jjenista [Thu, 16 Sep 2010 18:11:14 +0000 (18:11 +0000)]
temporarily disabling this coreprof event, it appears to have a significant impact compared to system overhead, only put back in when we really need it
jzhou [Thu, 16 Sep 2010 00:04:23 +0000 (00:04 +0000)]
Make the statistic data for cache adaption irrelavent with the timer counter. Use smaller page for cache adaption version. Also make the cache policy decision modular
jzhou [Wed, 15 Sep 2010 22:38:32 +0000 (22:38 +0000)]
Add code for change the cache policy for the mutator. In each round of gc, decide the new policy for each page according to the gathered statistic data and adapt the new policies right before finishing gc.
jjenista [Wed, 15 Sep 2010 21:16:05 +0000 (21:16 +0000)]
this micro benchmark does not accurately imitate OOOjava, just checking in current code for possible reuse later
jjenista [Sun, 12 Sep 2010 21:23:31 +0000 (21:23 +0000)]
a self-contained test of the mempool strategy, doesnt seem promising yet
stephey [Sat, 11 Sep 2010 01:37:47 +0000 (01:37 +0000)]
Work In Progress Commit.
Added logic that will print out when traverser needs to look in waitingQueue/HashStructure. Separated enumeration of heaproots and printing of C methods (for the very end). Added TEMP functions that will create an array of HashStructures to simulate threadlocal variables (so that it's easier to debug)
Next Steps: Modify and Complete C-side. Test/Debug C-side. Connected both sides. Test/Debug both sides together.
Next Next Step: Work with Jim/YongHun to integrate RCR into main project.
jjenista [Fri, 10 Sep 2010 19:44:57 +0000 (19:44 +0000)]
change parser to match runtime changes, still some kooky issue where child events appear to take infinity perfent of parent sometimes, strange
jjenista [Fri, 10 Sep 2010 19:44:11 +0000 (19:44 +0000)]
task execute, dispatch, reture and work grabbing events debugged
stephey [Fri, 10 Sep 2010 10:01:11 +0000 (10:01 +0000)]
Work In Progress Commit.
Added supporting data structures and logic for keeping track of what needs to be entered into a waitingQueue upon 'stopping' the traverser. Need to write code that spits out the correct C-code with waitingQueue stuff (halfway done)
Next steps: Do the above, separate the enumeration of heaproots and printing of C-methods until the very end, and modify/write C-side stuff to correctly respond to the generated calls.
stephey [Thu, 9 Sep 2010 01:38:32 +0000 (01:38 +0000)]
Added logic for determining weakly connected groups of Heaproots and changed traverser invocation/generation method header to support resuming traversal from predefined points (incomplete, still need to modify addChecker to take advantage of the new header).
jjenista [Wed, 8 Sep 2010 22:46:11 +0000 (22:46 +0000)]
Changed parsing of coreprof data to keep parent/child event relationships, breaks parent into percentage spent in each child
stephey [Wed, 8 Sep 2010 22:39:34 +0000 (22:39 +0000)]
Jim told me to change the int hashCodeSpecific() function to return id.hashCode() instead of id itself.
jjenista [Tue, 7 Sep 2010 19:47:04 +0000 (19:47 +0000)]
Changed coreprof macros to match coreprof.h, altered output to print self-time as a percentage of total time.
jjenista [Tue, 7 Sep 2010 19:40:31 +0000 (19:40 +0000)]
Several changes:
-Can control space allocated for coreprof events with a buildscript option.
-Attempted to exit ooojava worker threads gracefully with pthread_cleanup_XXX
and pthread_cancel in asynchronous mode. Cleanup doesn't trigger from asynch
cancel, so this doesn't do the trick. The reason this is nice is that COREPROF_EXIT
is never called by worker threads, so the timestamp of the MAIN duration is being
fudged by using the last timestamp of a sub event. If we wanted to add more
interesting functionality to COREPROF_EXIT we can't use the workaround and we'll
have to revisit this--left the commented pthread code as a starting point for later.
-Adjusted event IDs and the baseshift so same number of bits are used, but
it is easier to look at the coreprof output file in a hex editor to visually
inspect the raw data, for debugging.
jjenista [Tue, 7 Sep 2010 19:32:34 +0000 (19:32 +0000)]
a test case for shutting down ooojava work threads gracefully
stephey [Fri, 3 Sep 2010 01:54:09 +0000 (01:54 +0000)]
Added some extra logic for rehashing all effects by allocsite and (incomplete) logic to assing heap region #'s for weakly connected groups.
jzhou [Thu, 2 Sep 2010 22:59:29 +0000 (22:59 +0000)]
remove unnecessary dtlb flush
jzhou [Thu, 2 Sep 2010 18:57:58 +0000 (18:57 +0000)]
Fix the 'markbit' bug of cache-adapt multicoregc version. In the compact phase, some cores might need to move some local objects to some other remote cores. There could be cache incoherent problem caused by the mark bit. To fix it, in the mark phase, whenever the mark bit is changed, flush it to the main memory and after the mark phase is finished add a 'barrier' before starting the compact phase
jzhou [Thu, 2 Sep 2010 17:04:11 +0000 (17:04 +0000)]
Clean multicore version code
stephey [Thu, 2 Sep 2010 06:50:13 +0000 (06:50 +0000)]
Quick Change: Moved some misplaced comments.
stephey [Thu, 2 Sep 2010 06:41:30 +0000 (06:41 +0000)]
Contains first sketch of waiting queue logic. The WaitingQueue struct will be removed in the future and the array be integrated into the Hashtable.
jzhou [Thu, 2 Sep 2010 00:47:44 +0000 (00:47 +0000)]
Add code for GC_CACHE_ADAPT version. Now the 61-1gc version works for RayTracer. Currently only change to use local caching for gc. Will work on cache adaption for mutator's execution based on sampling statistics
stephey [Wed, 1 Sep 2010 02:31:06 +0000 (02:31 +0000)]
Very, very rough draft of the hash structure to be used in the upcomming version of RuntimeConflictResolver. Only includes add logic that has not been finalized yet.
jjenista [Thu, 26 Aug 2010 18:51:55 +0000 (18:51 +0000)]
convenient run script
jjenista [Thu, 26 Aug 2010 16:16:40 +0000 (16:16 +0000)]
a makefile if desired
jzhou [Sat, 21 Aug 2010 00:20:34 +0000 (00:20 +0000)]
Fix a performance bug in the multicore gc version. In hvc files, should not reserve more than 16M for a core's stack+heap. Otherwise the performance would be greatly affected. It is because that all the reserved memory in hvc files will take *wired* DTLB entries. The more these entries are reserved, the less entries the program can use for other memory and thus the more DTLB miss would happen during execution. Also fixed some small bugs that break non-gc version and add codes for DTLB flushing
stephey [Wed, 18 Aug 2010 17:56:10 +0000 (17:56 +0000)]
Split debug flag for Java/C sides. Added logic to prevent duplicate traverse invocations to be processed/generated. Added support for StallSite invocations. Fixed logic for case: generation for c-side. Fixed logic for propogating conflict flags in the event of a revisited node. Updated method for generating csideinvocations.
stephey [Wed, 18 Aug 2010 17:49:48 +0000 (17:49 +0000)]
Added StallSite RuntimeConflictResolver invocations. Placed RCR c-side init code in correct position. Added Guards to .dot debug printouts for RCR.
stephey [Wed, 18 Aug 2010 02:09:28 +0000 (02:09 +0000)]
Changed variable type to make more compatible with RCR
yeom [Tue, 17 Aug 2010 22:33:42 +0000 (22:33 +0000)]
fix wrong condition.
If one is coarse and others are fine item from same sese, just enqueue scc instead.
stephey [Tue, 17 Aug 2010 06:55:33 +0000 (06:55 +0000)]
Changed the way conflict flags are propagated (fixed infinite loops, for reals this time). Removed extraneous code. Added tentative stallsite code.
stephey [Tue, 17 Aug 2010 03:26:12 +0000 (03:26 +0000)]
Fixed bug of ignoring multiple effects for same alloc/field effect. Removed ! before checking hash in C.
jzhou [Mon, 16 Aug 2010 23:59:25 +0000 (23:59 +0000)]
Recent code changes: remove redundant code/comment and format the code a little bit
jjenista [Mon, 16 Aug 2010 23:03:10 +0000 (23:03 +0000)]
back out change to separate event type and timestamp streams, one stream supports future variable-length event data easily
jjenista [Mon, 16 Aug 2010 21:35:34 +0000 (21:35 +0000)]
checking bug fix for memory queue, the jury is still out on the formal verification of this fix
jjenista [Mon, 16 Aug 2010 19:15:26 +0000 (19:15 +0000)]
change garbage.c initial heap size to a macro, configurable with a new buildscript option
stephey [Sat, 14 Aug 2010 01:32:09 +0000 (01:32 +0000)]
Changes. Contains bug where not all effects are saved into datastructure; checkin to create checkpoint to restore to if bugfix fails.
yeom [Fri, 13 Aug 2010 02:46:16 +0000 (02:46 +0000)]
changes. add coarse case into our previous changes that we did for SOR benchmarks.
stephey [Fri, 13 Aug 2010 00:28:09 +0000 (00:28 +0000)]
Temporarily integrates Runtime Conflict Resolution into buildCode and runtime with -rcr flag
stephey [Thu, 12 Aug 2010 23:34:02 +0000 (23:34 +0000)]
fixed some include bugs
stephey [Thu, 12 Aug 2010 09:28:25 +0000 (09:28 +0000)]
Added Changes requested by Jim. Fixed problem of infinite loop when reachGraph contains cycles. Fixed counter for parents with conflicts. Attempted to make methods with no traveral simply put a return (failed, will try again tomorrow). Builds Headerfile with guard. Correctly finds supplementry header files.
stephey [Wed, 11 Aug 2010 02:54:30 +0000 (02:54 +0000)]
Generates syntatically correct code but appears to have problems with nesting multiple if statements (pushing processing into parent). Works fine if only pushing only 1 child into parent.
jjenista [Wed, 11 Aug 2010 00:54:44 +0000 (00:54 +0000)]
fix sese garbage collection bug calculating offsets to dependent sese pointers
jjenista [Tue, 10 Aug 2010 23:36:31 +0000 (23:36 +0000)]
Some tests that are helping with SESE garbage collection, incidentally the mlp regression test defeats our current ooo java runtime as well, gotta track that down some day
stephey [Tue, 10 Aug 2010 00:39:06 +0000 (00:39 +0000)]
Mostly works, but has bug of not checking primative types for conflicts
jjenista [Mon, 9 Aug 2010 22:20:53 +0000 (22:20 +0000)]
did something I shouldnt have, mixed changes for two different projects at once, hard to back out now so heres a commit and ill physically check with everyone for immediate broken environemnts. change 1, updating the coreprof system, in progress but stable for anyone not using coreprof and change 2, add an allocsite field to Objects in generated c code that is populated at allocation, stephen can use it, and maybe future ooojava subsystems, to tell what site an object was allocated at
yeom [Mon, 9 Aug 2010 21:46:34 +0000 (21:46 +0000)]
fix to handle stall site properly for generating conflicts effect set.
yeom [Fri, 6 Aug 2010 18:29:53 +0000 (18:29 +0000)]
interface to grab the conflict effect set for Stephen,
yeom [Fri, 6 Aug 2010 16:59:51 +0000 (16:59 +0000)]
changes to have proper path of coreprof.h
yeom [Fri, 6 Aug 2010 00:11:51 +0000 (00:11 +0000)]
introduces new flag for runtime conflict resolver.
stephey [Thu, 5 Aug 2010 23:17:23 +0000 (23:17 +0000)]
Completed version before tying in with system and debug
yeom [Thu, 5 Aug 2010 20:27:12 +0000 (20:27 +0000)]
fixes on FlatWriteDynamicVarNode to handle properly branch node.
yeom [Thu, 5 Aug 2010 20:26:07 +0000 (20:26 +0000)]
fixes on tracking benchmark.
jzhou [Thu, 5 Aug 2010 18:36:08 +0000 (18:36 +0000)]
Fix bug in multicore gc: the master core should send msgs to all the other cores and tell them to stop for gc as soon as it finds that there is no more shared memory
jzhou [Thu, 5 Aug 2010 18:33:41 +0000 (18:33 +0000)]
fix some bug found by Yonghun
stephey [Thu, 5 Aug 2010 00:20:26 +0000 (00:20 +0000)]
Changes.
jjenista [Wed, 4 Aug 2010 18:12:20 +0000 (18:12 +0000)]
document OOOJava and Disjoint options
yeom [Tue, 3 Aug 2010 18:47:33 +0000 (18:47 +0000)]
polish source code + last changes.
yeom [Tue, 3 Aug 2010 18:03:23 +0000 (18:03 +0000)]
polish source code and add test data
yeom [Tue, 3 Aug 2010 17:50:30 +0000 (17:50 +0000)]
last changes to power benchmark
bdemsky [Tue, 3 Aug 2010 09:50:03 +0000 (09:50 +0000)]
do subtraction
bdemsky [Tue, 3 Aug 2010 09:46:00 +0000 (09:46 +0000)]
bug fixes for coreprof
bdemsky [Tue, 3 Aug 2010 09:45:13 +0000 (09:45 +0000)]
fix bugs
bdemsky [Tue, 3 Aug 2010 08:22:38 +0000 (08:22 +0000)]
accidental update
bdemsky [Tue, 3 Aug 2010 08:20:02 +0000 (08:20 +0000)]
change
bdemsky [Tue, 3 Aug 2010 08:13:26 +0000 (08:13 +0000)]
error in buildscript
bdemsky [Tue, 3 Aug 2010 08:05:54 +0000 (08:05 +0000)]
more changes
bdemsky [Tue, 3 Aug 2010 08:04:54 +0000 (08:04 +0000)]
changes
bdemsky [Mon, 2 Aug 2010 23:09:17 +0000 (23:09 +0000)]
checking outstanding changes in my CVS
starting coreprof extension
yeom [Mon, 2 Aug 2010 05:59:59 +0000 (05:59 +0000)]
changes.
yeom [Mon, 2 Aug 2010 04:53:32 +0000 (04:53 +0000)]
changes.
yeom [Mon, 2 Aug 2010 01:09:47 +0000 (01:09 +0000)]
changes.
yeom [Sun, 1 Aug 2010 21:20:50 +0000 (21:20 +0000)]
changes.
bdemsky [Sun, 1 Aug 2010 10:10:36 +0000 (10:10 +0000)]
check in bug fixes...yong-hun, these are already in your directory
bdemsky [Sun, 1 Aug 2010 04:55:34 +0000 (04:55 +0000)]
small change to clean up allocation
bdemsky [Sun, 1 Aug 2010 04:06:27 +0000 (04:06 +0000)]
new benchmark
yeom [Sun, 1 Aug 2010 03:52:23 +0000 (03:52 +0000)]
changes.
yeom [Sun, 1 Aug 2010 03:48:36 +0000 (03:48 +0000)]
add tracking benchmark
yeom [Sun, 1 Aug 2010 02:33:30 +0000 (02:33 +0000)]
changes.
bdemsky [Sun, 1 Aug 2010 02:31:18 +0000 (02:31 +0000)]
just java version
jjenista [Sun, 1 Aug 2010 01:06:47 +0000 (01:06 +0000)]
faithful c-port of crypt
yeom [Sat, 31 Jul 2010 23:40:05 +0000 (23:40 +0000)]
*** empty log message ***
jjenista [Sat, 31 Jul 2010 23:24:34 +0000 (23:24 +0000)]
c version output message not matching input, did a C vs Java test of the >> and >>> to make sure that wasn't the problem
jjenista [Sat, 31 Jul 2010 23:10:46 +0000 (23:10 +0000)]
a C version of crypt to compare our compiler to
yeom [Sat, 31 Jul 2010 21:25:55 +0000 (21:25 +0000)]
changes.
jjenista [Sat, 31 Jul 2010 17:13:03 +0000 (17:13 +0000)]
commit micro benchmarks for later experiments
yeom [Sat, 31 Jul 2010 01:39:56 +0000 (01:39 +0000)]
optimized version of raytracer benchmark
yeom [Sat, 31 Jul 2010 01:16:16 +0000 (01:16 +0000)]
modifies makefiles for using -joptimize -noloop -optimize
stephey [Sat, 31 Jul 2010 00:38:26 +0000 (00:38 +0000)]
Very preliminary renaming and removing unused functions/variables.
TODO: implement better hash function && integrate search with adding
jjenista [Sat, 31 Jul 2010 00:28:23 +0000 (00:28 +0000)]
special loop optimization disable for ooojava
stephey [Sat, 31 Jul 2010 00:07:27 +0000 (00:07 +0000)]
Added optimization in switch-case statements. TODO outter loop needs to be constructed && fix tabbing
yeom [Fri, 30 Jul 2010 19:30:56 +0000 (19:30 +0000)]
optimized version of crypt benchmark.
yeom [Fri, 30 Jul 2010 18:41:20 +0000 (18:41 +0000)]
*** empty log message ***
yeom [Fri, 30 Jul 2010 18:38:49 +0000 (18:38 +0000)]
changes.
yeom [Fri, 30 Jul 2010 01:00:54 +0000 (01:00 +0000)]
changes.
stephey [Fri, 30 Jul 2010 00:38:26 +0000 (00:38 +0000)]
Removed redudant code
bdemsky [Fri, 30 Jul 2010 00:23:48 +0000 (00:23 +0000)]
arraycopy method