stephey [Sat, 22 Jan 2011 00:58:26 +0000 (00:58 +0000)]
We fixed the bug of where to find the stallsite reachgraph. \n\n We found an even BIGGER, SYSTEM-WIDE BUG whereby the Conflict Graph of stallsites were stored with the stallsite's parent's parent. However, since many components rely on this bug, we decided to leave it alone but left giant notes explaining the situation.
stephey [Fri, 21 Jan 2011 04:11:23 +0000 (04:11 +0000)]
Corrected reach graph issue with SESE BLOCKS ONLY. There seems to be an error with stallsites that I'll fix with Jim later. I've merged some redundant functions and broke up complicated ones. There's just more organizational work to do now for it to make more intuitive sense.
stephey [Thu, 20 Jan 2011 07:49:49 +0000 (07:49 +0000)]
Split graph construction into 2 steps (one for pruned creation and one for marking conflicts). Dumbed down the logic in ConcreteRuntimeObjNode. Found a inefficiency whereby the graph is recreated with EVERY INSET VARIABLE, but I'll fix that another night.
stephey [Fri, 14 Jan 2011 01:58:39 +0000 (01:58 +0000)]
RCR was only one using Tuple.java so I renamed it to Pair.java. Checked that nothing broke.
jjenista [Wed, 12 Jan 2011 22:46:28 +0000 (22:46 +0000)]
tests for playing around with analysis with respect to empty reach states
jjenista [Mon, 10 Jan 2011 23:31:49 +0000 (23:31 +0000)]
just a little change to keep genreach debug node from getting wiped out during optimization
jjenista [Mon, 10 Jan 2011 23:29:26 +0000 (23:29 +0000)]
test that the genreach flat node doesn't get wiped away by java optimization
jjenista [Mon, 10 Jan 2011 22:55:43 +0000 (22:55 +0000)]
just checking that the genreach debug statement works
jjenista [Mon, 10 Jan 2011 19:41:07 +0000 (19:41 +0000)]
put optional stuff for debugging disjoint reachability analysis into the makefile
jjenista [Mon, 10 Jan 2011 19:40:35 +0000 (19:40 +0000)]
enforce monotonicity in heap contributions from call sites
jjenista [Mon, 10 Jan 2011 19:39:50 +0000 (19:39 +0000)]
make reach graph visualizations tractable
jzhou [Mon, 10 Jan 2011 18:25:25 +0000 (18:25 +0000)]
Add support for try-catch-finally statement for MGC version. Do not fully support exceptions yet. Only guarantee the execution when there are no exceptions
stephey [Sun, 9 Jan 2011 00:04:56 +0000 (00:04 +0000)]
Checking in the small changes before I work on the big ones.
jzhou [Fri, 7 Jan 2011 01:48:43 +0000 (01:48 +0000)]
Add support for Enum type for mgc version and also add default constructor. Comment out InitializerTest in unit test as there is some problem for the test.
david [Thu, 6 Jan 2011 23:21:20 +0000 (23:21 +0000)]
*** empty log message ***
david [Thu, 6 Jan 2011 23:16:19 +0000 (23:16 +0000)]
This update adds initializers, but not for arrays
jjenista [Wed, 5 Jan 2011 22:32:28 +0000 (22:32 +0000)]
we should keep this
stephey [Wed, 5 Jan 2011 21:37:29 +0000 (21:37 +0000)]
Refactoring in progress. Done with about the first 250 lines.
stephey [Tue, 4 Jan 2011 02:41:05 +0000 (02:41 +0000)]
Made the option for showing RCR compile-time debug printout accessible in makefile
yeom [Fri, 17 Dec 2010 21:57:21 +0000 (21:57 +0000)]
adds new target 'single-remake-c' for OoOJava makefile. it's good to have this one.
yeom [Wed, 15 Dec 2010 23:48:04 +0000 (23:48 +0000)]
fix: lastcr idx could be larger than the value of (string.length-1). so appends remaining chars when lastcr idx is less than string.length.
jzhou [Thu, 2 Dec 2010 18:43:50 +0000 (18:43 +0000)]
A test case for static inner class
jjenista [Wed, 1 Dec 2010 01:27:59 +0000 (01:27 +0000)]
no functional changes, just notes during a code review
jzhou [Tue, 30 Nov 2010 23:49:59 +0000 (23:49 +0000)]
Missing files
jjenista [Tue, 30 Nov 2010 23:45:04 +0000 (23:45 +0000)]
some outstanding changes
jjenista [Tue, 30 Nov 2010 23:42:43 +0000 (23:42 +0000)]
we changed the micro benchmark, but why, to get the tasks out of the main method?
jzhou [Wed, 24 Nov 2010 23:56:24 +0000 (23:56 +0000)]
Enable Switch-case statement for mgc version
yeom [Wed, 24 Nov 2010 18:25:49 +0000 (18:25 +0000)]
updates run scripts for OoOJava
bdemsky [Mon, 22 Nov 2010 22:37:02 +0000 (22:37 +0000)]
Indent the code a little better by default...isn't perfect, but better than it was...
bdemsky [Mon, 22 Nov 2010 22:06:39 +0000 (22:06 +0000)]
just a little hack after reading the output of the compiler...
yeom [Fri, 19 Nov 2010 04:53:56 +0000 (04:53 +0000)]
adjust # of work item in accordance with 22 worker. get a better speedup (14x->18x).
yeom [Fri, 19 Nov 2010 04:16:47 +0000 (04:16 +0000)]
bug fix: RBlockRelationAnalysis failed to set a non-bogus parent when sese is located inside of main method(=main sese).
yeom [Fri, 19 Nov 2010 03:05:16 +0000 (03:05 +0000)]
new configuration for mergesort
bdemsky [Fri, 19 Nov 2010 02:01:57 +0000 (02:01 +0000)]
checkin
yeom [Fri, 19 Nov 2010 01:47:39 +0000 (01:47 +0000)]
adds new option '-nostalltr' that turns off rcr traversers that only handle conflicts between task and stallsite
jjenista [Thu, 18 Nov 2010 22:30:42 +0000 (22:30 +0000)]
close this file so it actually writes out
jjenista [Thu, 18 Nov 2010 22:30:06 +0000 (22:30 +0000)]
some tweaks to number of workers and workloads
yeom [Thu, 18 Nov 2010 22:14:55 +0000 (22:14 +0000)]
introduces stall site in front of loop body. later it should be done by the optimization phase.
yeom [Thu, 18 Nov 2010 18:17:42 +0000 (18:17 +0000)]
adds missing run scripts
yeom [Thu, 18 Nov 2010 06:30:52 +0000 (06:30 +0000)]
provides 'corepin' flag for mergesort
bdemsky [Thu, 18 Nov 2010 06:30:28 +0000 (06:30 +0000)]
change
yeom [Thu, 18 Nov 2010 06:19:37 +0000 (06:19 +0000)]
add 'corepin' flag
yeom [Thu, 18 Nov 2010 06:18:59 +0000 (06:18 +0000)]
add flag "corepin" for core pinning
jjenista [Thu, 18 Nov 2010 06:14:53 +0000 (06:14 +0000)]
force oid increment to be a prime number
yeom [Thu, 18 Nov 2010 05:47:32 +0000 (05:47 +0000)]
add run script for non-scratchpad labyrinth
bdemsky [Thu, 18 Nov 2010 05:46:23 +0000 (05:46 +0000)]
buildall file
jjenista [Thu, 18 Nov 2010 05:43:30 +0000 (05:43 +0000)]
labyrinth run updates, both inputs
bdemsky [Thu, 18 Nov 2010 05:42:45 +0000 (05:42 +0000)]
runall script
yeom [Thu, 18 Nov 2010 05:32:01 +0000 (05:32 +0000)]
adds labyrinth without using scratchpad
yeom [Thu, 18 Nov 2010 04:19:45 +0000 (04:19 +0000)]
run script for labyrinth
jjenista [Thu, 18 Nov 2010 04:08:54 +0000 (04:08 +0000)]
a few little benchmark tweaks
yeom [Thu, 18 Nov 2010 04:05:20 +0000 (04:05 +0000)]
fix: keeps SESEstatus for either case(TRUE/FALSE)
yeom [Thu, 18 Nov 2010 03:11:35 +0000 (03:11 +0000)]
changes on SOR benchmark
yeom [Thu, 18 Nov 2010 03:09:02 +0000 (03:09 +0000)]
changes: collects a set of collect effects and generates a stall site over the method context
yeom [Wed, 17 Nov 2010 20:24:05 +0000 (20:24 +0000)]
new run script for moldyn. it creates work items with multiples of 23.
jjenista [Wed, 17 Nov 2010 20:14:32 +0000 (20:14 +0000)]
allow each benchmark to use the master makefile but twiddle number of work threads independently, also default for RCR should be 24, the main thread should stall after dispatching workers, so 23 active workers and one stalled, plus the traverser core keeps all processors busy
bdemsky [Wed, 17 Nov 2010 07:31:18 +0000 (07:31 +0000)]
add header files
bdemsky [Wed, 17 Nov 2010 07:27:23 +0000 (07:27 +0000)]
affinity call
yeom [Wed, 17 Nov 2010 03:40:43 +0000 (03:40 +0000)]
grabs a lock when it tries to reset
yeom [Wed, 17 Nov 2010 03:40:36 +0000 (03:40 +0000)]
assigns workerID to the workerTR
jjenista [Wed, 17 Nov 2010 00:31:44 +0000 (00:31 +0000)]
add RCR targets to micro benchmark makefile
jjenista [Wed, 17 Nov 2010 00:17:52 +0000 (00:17 +0000)]
bug fixes that prevent RCR from reclaiming task records when there is an empty traverser
yeom [Sun, 14 Nov 2010 01:53:05 +0000 (01:53 +0000)]
fix: had a bug when one coarse entry handles more than one parameter conflicts
yeom [Sat, 13 Nov 2010 18:09:28 +0000 (18:09 +0000)]
moldyn: increases workload per parallel task
mergesort: provides its own makefile to tune the number of worker
yeom [Sat, 13 Nov 2010 06:11:43 +0000 (06:11 +0000)]
BuildCode.java: removes (1) the calls to build a traverser thread (2) the calls to enqueueTR when SESE only has empty traversers.
FlatSESEEnterNode.java CallGraph.java, RblockRelationAnalysis.java: maintains additional DS having a set of SESE that is the first reachable SESE from the current SESE through transitive method invocations
RuntimeConflictResolver.java : add helper function that checks if the given SESE only has empty traversers.
yeom [Sat, 13 Nov 2010 04:07:38 +0000 (04:07 +0000)]
removes unnecessary LOCKXCHG operation to optimize.
yeom [Sat, 13 Nov 2010 04:06:40 +0000 (04:06 +0000)]
fixes on hashStructure : when parent bin is ready, it should not be inserted to the table.
yeom [Fri, 12 Nov 2010 22:09:41 +0000 (22:09 +0000)]
changes on KMeans: remove System.exit(). It caused a forced termination so it couldn't generate coreprof data
yeom [Fri, 12 Nov 2010 21:30:41 +0000 (21:30 +0000)]
fix: retireHashTable clears its own readbin out of order first, and then iterates over bin array to resolve the rest of them.
stephey [Fri, 12 Nov 2010 06:02:22 +0000 (06:02 +0000)]
Added a generated labyrinth input file that provides a big win for RCR by inverting the grid dimentions so that RCR does less checks. Should be as valid as random-x512-y512-z7-n512.txt since a 512x512x7 grid can be treated as a 7x512x512 or 512x7x512 grid. Averaged running times: Single-3m:53s, ooo-41s, rcr-30s
yeom [Fri, 12 Nov 2010 02:38:19 +0000 (02:38 +0000)]
changes on MolDyn: increases workload and re-arranges unnecessary stall sites.
yeom [Fri, 12 Nov 2010 00:56:40 +0000 (00:56 +0000)]
changes: generates WT_BIN_CASE only in the case that the read effect has downstream conflicts.
jjenista [Thu, 11 Nov 2010 18:38:14 +0000 (18:38 +0000)]
display elapsed time to help choose plot parameters and add arrow heads, remove palette mode for line colors
yeom [Thu, 11 Nov 2010 04:13:16 +0000 (04:13 +0000)]
check rcrstatus before invoking the following traversals since the granularity of rctstatus is a task
yeom [Thu, 11 Nov 2010 04:02:46 +0000 (04:02 +0000)]
index field of rentry is only for RCR, add guard condition to accessing index field.
jjenista [Thu, 11 Nov 2010 01:35:46 +0000 (01:35 +0000)]
have to consider an empty, ready read bin in front of you if you are inserting a write bin
jjenista [Wed, 10 Nov 2010 23:41:08 +0000 (23:41 +0000)]
coreprof in RCR, just one event for now showing begin and end of traverse call
jjenista [Wed, 10 Nov 2010 23:16:07 +0000 (23:16 +0000)]
poolalloc with no poolfree should be benign, but it causes wacky behavior in moldyn. It could just be altering the timing and exposing a latent bug, but for now lets go back to strict MALLOC
jjenista [Wed, 10 Nov 2010 22:36:04 +0000 (22:36 +0000)]
back out pool alloc for now, fix it right when its clear we need it
stephey [Wed, 10 Nov 2010 22:25:36 +0000 (22:25 +0000)]
Added build output to include Weakly Connected Heaproots and their IDs (Note: IDs correspond to which hashtable the heaproots will be inserting thier effects into). Introduced more debug printout guards to help clean up the overflow of output that we had before.
jjenista [Wed, 10 Nov 2010 21:53:23 +0000 (21:53 +0000)]
pool allocate RCR obj-conflict hash table bin items
stephey [Wed, 10 Nov 2010 21:39:36 +0000 (21:39 +0000)]
Fixed grouping of weakly connected heaproots and removed yucky hacks. Previous version did not iterate through the entire list of connected heaproots when forming a group out of them.
jjenista [Wed, 10 Nov 2010 19:57:59 +0000 (19:57 +0000)]
until weakly connected components are fixed, always use hashtable zero
jjenista [Wed, 10 Nov 2010 18:04:43 +0000 (18:04 +0000)]
some new events
jjenista [Wed, 10 Nov 2010 18:03:21 +0000 (18:03 +0000)]
run script
bdemsky [Wed, 10 Nov 2010 02:03:34 +0000 (02:03 +0000)]
be more careful about moving check...could break stuff in the future accidentally if we do this...
jjenista [Wed, 10 Nov 2010 01:54:13 +0000 (01:54 +0000)]
temporary workaround for weakly-connected components detection bug in task params for rcr traversal
jjenista [Wed, 10 Nov 2010 00:18:40 +0000 (00:18 +0000)]
coreprof events, RCR stuff will be online onyl after rcr threads register with coreprof
jjenista [Wed, 10 Nov 2010 00:00:07 +0000 (00:00 +0000)]
alter RCR params, remove unused macro
jjenista [Tue, 9 Nov 2010 22:19:29 +0000 (22:19 +0000)]
no need to add one worker thread, let end user decide
jjenista [Tue, 9 Nov 2010 22:19:02 +0000 (22:19 +0000)]
bug fix, was releasing references a little too early
jjenista [Tue, 9 Nov 2010 22:18:24 +0000 (22:18 +0000)]
use squeue by default, rcr should use 23 cores, 24th core will be a traverser
jjenista [Tue, 9 Nov 2010 17:50:52 +0000 (17:50 +0000)]
some more runr scripts and a little script to clean all benchmarks out
bdemsky [Tue, 9 Nov 2010 09:07:43 +0000 (09:07 +0000)]
changes
bdemsky [Tue, 9 Nov 2010 07:48:19 +0000 (07:48 +0000)]
nasty bug...have to make sure we don't free a task record before it clears the memory queue....otherwise the queue could affect the reused task record
bdemsky [Tue, 9 Nov 2010 06:20:41 +0000 (06:20 +0000)]
changes
bdemsky [Tue, 9 Nov 2010 03:59:35 +0000 (03:59 +0000)]
(1) make type of memPool more precise...
(2) bug fix in BuildCode
jjenista [Tue, 9 Nov 2010 02:29:14 +0000 (02:29 +0000)]
generated traversers already release
jjenista [Tue, 9 Nov 2010 02:28:26 +0000 (02:28 +0000)]
pruning unneeded fields
jjenista [Tue, 9 Nov 2010 02:25:37 +0000 (02:25 +0000)]
just an explanation of LOCKXCH