IRC.git
13 years agoupdate trace to dump out gnuplot plots
bdemsky [Tue, 2 Nov 2010 14:47:20 +0000 (14:47 +0000)]
update trace to dump out gnuplot plots

13 years agofix so that profiling doesn't throw an error
bdemsky [Tue, 2 Nov 2010 12:21:55 +0000 (12:21 +0000)]
fix so that profiling doesn't throw an error

13 years agohave coreprof plot events
jjenista [Tue, 2 Nov 2010 02:56:14 +0000 (02:56 +0000)]
have coreprof plot events

13 years agobug fix: add the invar to the coarseConflictSet when the invar itself has a conflict.
yeom [Tue, 2 Nov 2010 01:01:36 +0000 (01:01 +0000)]
bug fix: add the invar to the coarseConflictSet when the invar itself has a conflict.

13 years agoForgot to take out debug comments.
stephey [Tue, 2 Nov 2010 00:33:34 +0000 (00:33 +0000)]
Forgot to take out debug comments.

13 years agoFound a bug where if the inset variable itself has a reference conflict, it doesn...
stephey [Tue, 2 Nov 2010 00:31:07 +0000 (00:31 +0000)]
Found a bug where if the inset variable itself has a reference conflict, it doesn't get a case statement.

13 years agoupdates on master-makefile of oooJava: generates a separate rcr executable file.
yeom [Mon, 1 Nov 2010 22:43:01 +0000 (22:43 +0000)]
updates on master-makefile of oooJava: generates a separate rcr executable file.

13 years agothe mismatch of sequential and ooo goes away if you remove the semantically-benign...
jjenista [Mon, 1 Nov 2010 19:50:13 +0000 (19:50 +0000)]
the mismatch of sequential and ooo goes away if you remove the semantically-benign explicit parent of this micro benchmark.  It means our system still has bugs, but this pattern doesn't appear in the normal benchmarks so the problem is best deferred until it impacts results

13 years agoa version of micro4 that collects the results and shows sequential behavior is preser...
jjenista [Mon, 1 Nov 2010 19:41:43 +0000 (19:41 +0000)]
a version of micro4 that collects the results and shows sequential behavior is preserved, brians fix is awesome

13 years agoupdate poolcreate args for deque version as well
jjenista [Mon, 1 Nov 2010 18:29:40 +0000 (18:29 +0000)]
update poolcreate args for deque version as well

13 years agoclean stuff up a little
bdemsky [Mon, 1 Nov 2010 09:31:40 +0000 (09:31 +0000)]
clean stuff up a little

13 years agoconvert CAS -> XCHG when possible....no retry necessary this way
bdemsky [Mon, 1 Nov 2010 09:18:04 +0000 (09:18 +0000)]
convert CAS -> XCHG when possible....no retry necessary this way

13 years agobug
bdemsky [Mon, 1 Nov 2010 09:04:24 +0000 (09:04 +0000)]
bug

13 years agochanges: generate rcr retirehashtable code correctly according to the runtime interface.
yeom [Sun, 31 Oct 2010 23:04:06 +0000 (23:04 +0000)]
changes: generate rcr retirehashtable code correctly according to the runtime interface.

TODO: Current implementation assumes that the size of the rcrRecord array is equal to the size of fsen.getDynamicInVarSet(). But, it seems not to be true since the rcrRecord array is allocated by the size of inset var which is actually related with coarse conflict.

13 years agoMinor changes: Removing vestigial code
stephey [Sat, 30 Oct 2010 07:52:39 +0000 (07:52 +0000)]
Minor changes: Removing vestigial code

Previous commit:
-Every case where we enqueue an item will be guaranteed to have a case statement upon dequeue.
- Every valid pointer route will now end with either an enqueue to an array or Demsky's interface code with hashStructure.c
-Eliminated multiple traversals, empty switch statements and unused variables/pointers.
-Added new ArrayList based structure to store ObjRefs (only augmented by 1 method)

13 years agoFixed:
stephey [Sat, 30 Oct 2010 07:15:47 +0000 (07:15 +0000)]
Fixed:

13 years agocommit some useful debug stuff all turned off until needed, trying to get workspace...
jjenista [Fri, 29 Oct 2010 18:55:48 +0000 (18:55 +0000)]
commit some useful debug stuff all turned off until needed, trying to get workspace synched to prevent constant conflicts

13 years agofor original thread to become worker zero
jjenista [Fri, 29 Oct 2010 18:29:48 +0000 (18:29 +0000)]
for original thread to become worker zero

13 years agoA variable defined in task A and read in task A's child's child appears to have a...
jjenista [Fri, 29 Oct 2010 18:28:13 +0000 (18:28 +0000)]
A variable defined in task A and read in task A's child's child appears to have a source from A--why does this assert stop code?  check out later, check in the informative version of the assert

13 years agoalternate version of micro2 that gathers results of every micro task shows that even...
jjenista [Fri, 29 Oct 2010 18:25:55 +0000 (18:25 +0000)]
alternate version of micro2 that gathers results of every micro task shows that even with just variable dependencies the system is incorrect and parallel version does not behave like serial version

13 years agobug fix....have to make sure we don't insert task into some other deque as insertion...
bdemsky [Fri, 29 Oct 2010 07:06:11 +0000 (07:06 +0000)]
bug fix....have to make sure we don't insert task into some other deque as insertion is not multithread safe

13 years agoAdd support for static inner classes in mgc version. Currently we only implemented...
jzhou [Fri, 29 Oct 2010 00:15:37 +0000 (00:15 +0000)]
Add support for static inner classes in mgc version. Currently we only implemented limited features. Do not support Outer.Inner yet. Also only use inner class's name to identify the class instead of Outer.Inner which may cause bugs if there are two inner classes with the same name but with different surrounding classes.

13 years agosimplify the program...still crashes
bdemsky [Thu, 28 Oct 2010 22:07:14 +0000 (22:07 +0000)]
simplify the program...still crashes

13 years agoDon't allocate type number for interfaces so that we do not need allocate lines in...
jzhou [Thu, 28 Oct 2010 18:58:57 +0000 (18:58 +0000)]
Don't allocate type number for interfaces so that we do not need allocate lines in the virtual method table for interfaces and the virtual method table can be tight.

13 years agoeven though man page says otherwise, addr and len to mprotect must be page-aligned...
jjenista [Thu, 28 Oct 2010 01:01:24 +0000 (01:01 +0000)]
even though man page says otherwise, addr and len to mprotect must be page-aligned and page multiple

13 years agosmall change: not using path when includes the header file as Brian suggested.
yeom [Thu, 28 Oct 2010 00:00:26 +0000 (00:00 +0000)]
small change: not using path when includes the header file as Brian suggested.

13 years agoadd feature to memPool for detecting misuse of records by clients, also added a funct...
jjenista [Wed, 27 Oct 2010 23:48:17 +0000 (23:48 +0000)]
add feature to memPool for detecting misuse of records by clients, also added a function pointer input to mem pool so clients can customize an initializer for freshly allocated records to save duplicatation and maintenance, also mem pool changes were breaking squeue, just define a local version of the two structs it needs

13 years agoincludes the missing header file.
yeom [Wed, 27 Oct 2010 22:10:33 +0000 (22:10 +0000)]
includes the missing header file.

13 years agoEnable interface for mgc version.
jzhou [Wed, 27 Oct 2010 22:07:37 +0000 (22:07 +0000)]
Enable interface for mgc version.

13 years agofix sloppy code and use a more recognizable invalid pointer for mem pool
jjenista [Wed, 27 Oct 2010 22:00:10 +0000 (22:00 +0000)]
fix sloppy code and use a more recognizable invalid pointer for mem pool

13 years agomake sure mistakes are obvious with identifiable values
jjenista [Wed, 27 Oct 2010 21:34:17 +0000 (21:34 +0000)]
make sure mistakes are obvious with identifiable values

13 years agochanges: to prevent unnecessary LOCKXCHG when the unresolved queue is empty.
yeom [Wed, 27 Oct 2010 21:24:12 +0000 (21:24 +0000)]
changes: to prevent unnecessary LOCKXCHG when the unresolved queue is empty.

13 years agoreally bad bug
bdemsky [Tue, 26 Oct 2010 22:32:23 +0000 (22:32 +0000)]
really bad bug

13 years agosingle ended queue work stealing scheduler
bdemsky [Tue, 26 Oct 2010 22:18:58 +0000 (22:18 +0000)]
single ended queue work stealing scheduler

13 years agocouple of minor bug fixes
jjenista [Tue, 26 Oct 2010 18:17:14 +0000 (18:17 +0000)]
couple of minor bug fixes

13 years agochange calloc to RUNMALLOC, added some optional debug deque bits
jjenista [Tue, 26 Oct 2010 17:57:19 +0000 (17:57 +0000)]
change calloc to RUNMALLOC, added some optional debug deque bits

13 years agooptimize dispatch a little more
bdemsky [Tue, 26 Oct 2010 06:53:10 +0000 (06:53 +0000)]
optimize dispatch a little more

13 years agoChanges... small fix to jim's bugfix...touching our record after we free it is also...
bdemsky [Tue, 26 Oct 2010 01:48:55 +0000 (01:48 +0000)]
Changes...  small fix to jim's bugfix...touching our record after we free it is also bad...

poolalloc the rentry's...avoid running out of memory...looks like speed gains for micro also...

eliminate parentsemaphore...just use the thread local semaphore...needed to simplify freeing rentry records

13 years agofixed nasty bug, decrementing parents num running children used to be last, but new...
jjenista [Tue, 26 Oct 2010 00:59:27 +0000 (00:59 +0000)]
fixed nasty bug, decrementing parents num running children used to be last, but new code has creeped up afte rit, move this down to the very last thing done before exiting

13 years agoFixed issue where multi-dimentional primative arrays were treated as primitives....
stephey [Tue, 26 Oct 2010 00:39:34 +0000 (00:39 +0000)]
Fixed issue where multi-dimentional primative arrays were treated as primitives. Now labyrinth benchmark works

13 years agobug fix: RCR sets its proper conflict type.
yeom [Tue, 26 Oct 2010 00:14:31 +0000 (00:14 +0000)]
bug fix: RCR sets its proper conflict type.

13 years agomake sure that every benchmark of oooJava takes the largest input size by default
yeom [Mon, 25 Oct 2010 23:56:16 +0000 (23:56 +0000)]
make sure that every benchmark of oooJava takes the largest input size by default

13 years agocorrect input data for barneshut
yeom [Mon, 25 Oct 2010 23:38:53 +0000 (23:38 +0000)]
correct input data for barneshut

13 years agoOOO and RCR are speparate targets in the master makefile, added runp scripts for...
jjenista [Mon, 25 Oct 2010 23:28:26 +0000 (23:28 +0000)]
OOO and RCR are speparate targets in the master makefile, added runp scripts for all benchmarks, time command included in runp's

13 years agofix bug w/ recycling + RCR
bdemsky [Mon, 25 Oct 2010 23:26:36 +0000 (23:26 +0000)]
fix bug w/ recycling + RCR

13 years agosupport for RCR and task record pool allocation
jjenista [Mon, 25 Oct 2010 23:20:53 +0000 (23:20 +0000)]
support for RCR and task record pool allocation

13 years agothis is a BUG, don't dereference the object pointer, blargh
jjenista [Mon, 25 Oct 2010 23:14:09 +0000 (23:14 +0000)]
this is a BUG, don't dereference the object pointer, blargh

13 years agoHack the compiler to support 'abstract' keyword for mgc version. Abstract classes...
jzhou [Mon, 25 Oct 2010 22:49:57 +0000 (22:49 +0000)]
Hack the compiler to support 'abstract' keyword for mgc version. Abstract classes/methods can be compiled but fully semantic check is not supported. Now we generate an empty method for each declared abstract method and do not check if the subclasses have implemented their inheried abstract methods.

13 years agoAdded necessary variable initializations
stephey [Mon, 25 Oct 2010 22:13:30 +0000 (22:13 +0000)]
Added necessary variable initializations

13 years agochanges: handle correctly the case when a coarse grain conflict is associated with...
yeom [Mon, 25 Oct 2010 22:04:28 +0000 (22:04 +0000)]
changes: handle correctly the case when a coarse grain conflict is associated with effects on different allocation sites.

13 years agomake the traversers do something
bdemsky [Mon, 25 Oct 2010 20:54:53 +0000 (20:54 +0000)]
make the traversers do something

13 years agoChanging OoOJava work scheduler to true work stealing, garbage collection can walk...
jjenista [Mon, 25 Oct 2010 20:09:31 +0000 (20:09 +0000)]
Changing OoOJava work scheduler to true work stealing, garbage collection can walk the deques used, changes to build code and workschedule are awesome because work stealing threads exit gracefully when system is out of work

13 years agoadded a debug option for deque
jjenista [Mon, 25 Oct 2010 20:05:39 +0000 (20:05 +0000)]
added a debug option for deque

13 years agobug fix in identifying leaf tasks
jjenista [Mon, 25 Oct 2010 18:58:03 +0000 (18:58 +0000)]
bug fix in identifying leaf tasks

13 years agoChanged method for marking possible resume cases. Now it only considers read conflicts.
stephey [Mon, 25 Oct 2010 08:32:27 +0000 (08:32 +0000)]
Changed method for marking possible resume cases. Now it only considers read conflicts.

13 years agoImproved heuristics for marking where resume cases are possible. Instead marking...
stephey [Mon, 25 Oct 2010 08:08:35 +0000 (08:08 +0000)]
Improved heuristics for marking where resume cases are possible. Instead marking every conflict as a possible resume case, it now only marks cases where there is a read conflict (which implies that there is a write somewhere else) or where there is an ancestor read conflict and a current conflict.

13 years agochanges
bdemsky [Mon, 25 Oct 2010 01:56:39 +0000 (01:56 +0000)]
changes

13 years agocleaned up some old code and comments
stephey [Sun, 24 Oct 2010 12:44:31 +0000 (12:44 +0000)]
cleaned up some old code and comments

13 years agobug fixes
bdemsky [Sun, 24 Oct 2010 08:56:28 +0000 (08:56 +0000)]
bug fixes

13 years agochanges...handle races between coarse and fine grained conflict resolution
bdemsky [Sun, 24 Oct 2010 08:36:22 +0000 (08:36 +0000)]
changes...handle races between coarse and fine grained conflict resolution

13 years ago+Made arrays inlineable
stephey [Sun, 24 Oct 2010 04:11:15 +0000 (04:11 +0000)]
+Made arrays inlineable
+Fields with multiple allocation sites are now handled with a switch statement.

13 years agoFixed bug (for reals this time) where there will be multiple traversals on the same...
stephey [Sat, 23 Oct 2010 23:03:37 +0000 (23:03 +0000)]
Fixed bug (for reals this time) where there will be multiple traversals on the same field. Turns out the .equals for ConcreteRuntimeObjNode was done incorrectly.

Working on next task:
+using switch statements for checking fields.
+Treating arrays the same as any field (inlinable)

13 years agoFixed bug where one edge is traversed multiple times even if it's the same allocsite...
stephey [Sat, 23 Oct 2010 22:09:50 +0000 (22:09 +0000)]
Fixed bug where one edge is traversed multiple times even if it's the same allocsite. Turns out, the .equals in allocsite did not compare their ID's.

Changes:

13 years agofixes to case in Test/rcr. Now the program seems to get stuck at sched_yield() which...
stephey [Sat, 23 Oct 2010 20:21:38 +0000 (20:21 +0000)]
fixes to case in Test/rcr. Now the program seems to get stuck at sched_yield() which I believe is not a component of RCR

13 years agoanother bad case
bdemsky [Sat, 23 Oct 2010 08:41:28 +0000 (08:41 +0000)]
another bad case

13 years agochanges
bdemsky [Sat, 23 Oct 2010 08:30:19 +0000 (08:30 +0000)]
changes

13 years agoanother bug fix
bdemsky [Sat, 23 Oct 2010 01:42:16 +0000 (01:42 +0000)]
another bug fix

13 years agochanges
bdemsky [Sat, 23 Oct 2010 01:39:33 +0000 (01:39 +0000)]
changes

13 years agoDisable static related code generation for Java version
jzhou [Fri, 22 Oct 2010 23:11:17 +0000 (23:11 +0000)]
Disable static related code generation for Java version

13 years agobug
bdemsky [Fri, 22 Oct 2010 22:30:38 +0000 (22:30 +0000)]
bug

13 years agochanges
bdemsky [Fri, 22 Oct 2010 22:27:47 +0000 (22:27 +0000)]
changes

13 years agomore core...fix traversers...
bdemsky [Fri, 22 Oct 2010 21:02:40 +0000 (21:02 +0000)]
more core...fix traversers...

13 years agostill some bugs...but stall site code generation is in
bdemsky [Fri, 22 Oct 2010 08:18:56 +0000 (08:18 +0000)]
still some bugs...but stall site code generation is in

13 years agochanges towards rcr working...
bdemsky [Fri, 22 Oct 2010 04:50:57 +0000 (04:50 +0000)]
changes towards rcr working...
comment out jin's checkin...it breaks code generation in x86...

13 years agoAdd Class object so that we can implement getClass() and can have class lock for...
jzhou [Fri, 22 Oct 2010 00:59:35 +0000 (00:59 +0000)]
Add Class object so that we can implement getClass() and can have class lock for synchronized blocks

13 years agoimplemented deque for work stealing
jjenista [Thu, 21 Oct 2010 23:24:47 +0000 (23:24 +0000)]
implemented deque for work stealing

13 years agoSmall bug fix for multicore gc w/o tasks
jzhou [Thu, 21 Oct 2010 18:27:54 +0000 (18:27 +0000)]
Small bug fix for multicore gc w/o tasks

13 years agomore changes....much is still missing
bdemsky [Thu, 21 Oct 2010 09:40:29 +0000 (09:40 +0000)]
more changes....much is still missing

13 years agochanges
bdemsky [Thu, 21 Oct 2010 05:00:18 +0000 (05:00 +0000)]
changes

13 years agochanges
bdemsky [Thu, 21 Oct 2010 04:39:03 +0000 (04:39 +0000)]
changes

13 years agosimple changes:
yeom [Thu, 21 Oct 2010 02:45:19 +0000 (02:45 +0000)]
simple changes:
if there are more than one coarse conflicts for the same queue and the same sese, one coarse waiting element, which is actually enqueued into the memory queue, maintains a set of tempDesc containing all of the coarse tempDescriptors.

have not yet modified BuildCode.

13 years agoImplement a more sorphisticated execution strategy for static blocks. Tested with...
jzhou [Thu, 21 Oct 2010 00:21:06 +0000 (00:21 +0000)]
Implement a more sorphisticated execution strategy for static blocks. Tested with very simple example code.  Static field initialization is not implemented yet.

13 years agochanges
bdemsky [Wed, 20 Oct 2010 23:53:27 +0000 (23:53 +0000)]
changes

13 years agochanges. assign tempDescriptor to coarse waiting element
yeom [Wed, 20 Oct 2010 23:15:31 +0000 (23:15 +0000)]
changes. assign tempDescriptor to coarse waiting element

13 years agochanges
bdemsky [Wed, 20 Oct 2010 23:15:30 +0000 (23:15 +0000)]
changes

13 years agomore changes for RCR
yeom [Wed, 20 Oct 2010 17:41:16 +0000 (17:41 +0000)]
more changes for RCR

13 years agoremove unnecessary conflict type and assign coarse conflict by default.
yeom [Wed, 20 Oct 2010 17:29:24 +0000 (17:29 +0000)]
remove unnecessary conflict type and assign coarse conflict by default.

13 years agoAdded allocsite check for array elements before inserting into visitedhash.
stephey [Wed, 20 Oct 2010 08:39:31 +0000 (08:39 +0000)]
Added allocsite check for array elements before inserting into visitedhash.

13 years agochange
bdemsky [Wed, 20 Oct 2010 08:02:48 +0000 (08:02 +0000)]
change

13 years agomore changes...RCR wasn't usable until it was too late...
bdemsky [Wed, 20 Oct 2010 07:49:03 +0000 (07:49 +0000)]
more changes...RCR wasn't usable until it was too late...

13 years agomore changes
bdemsky [Wed, 20 Oct 2010 00:34:25 +0000 (00:34 +0000)]
more changes

13 years agomore work towards working version
bdemsky [Wed, 20 Oct 2010 00:07:43 +0000 (00:07 +0000)]
more work towards working version

13 years agochanges
bdemsky [Tue, 19 Oct 2010 21:33:43 +0000 (21:33 +0000)]
changes

13 years agoAdded support for adding array elements into the hash/queue. Appears to support multi...
stephey [Tue, 19 Oct 2010 10:53:12 +0000 (10:53 +0000)]
Added support for adding array elements into the hash/queue. Appears to support multidimensional arrays as well.

13 years agolet the prefetch go through a register instead...
bdemsky [Tue, 19 Oct 2010 05:14:46 +0000 (05:14 +0000)]
let the prefetch go through a register instead...

13 years agochanges
bdemsky [Tue, 19 Oct 2010 02:43:26 +0000 (02:43 +0000)]
changes

13 years agoswitch to a thread local stall sem for parent to give to children, tinker with prefet...
jjenista [Tue, 19 Oct 2010 00:04:52 +0000 (00:04 +0000)]
switch to a thread local stall sem for parent to give to children, tinker with prefetch in pool alloc, tinker with safe and fast garbage collection at scheduler level

13 years agoAdd support for 'static' fields in multicore gc version w/o tasks. Now we can have...
jzhou [Tue, 19 Oct 2010 00:01:31 +0000 (00:01 +0000)]
Add support for 'static' fields in multicore gc version w/o tasks. Now we can have static fields and access static fields/methods with Class name. Static blocks are also supported but with very simple invocation solution. All the static blocks are executed right before executing the main method and are executed in random order. The initialization for the static field is not supported yet.

13 years agoAdded support for tracking which ConcreteRuntimeObjNodes can be Arrays and which...
stephey [Mon, 18 Oct 2010 09:34:14 +0000 (09:34 +0000)]
Added support for tracking which ConcreteRuntimeObjNodes can be Arrays and which can be array elements. Array elements get their own case statement since if we add the entire array into the queue, then it's probably better to let the switch statement handle what to do with objects from a specific allocation site.

I had more code written, but apparently my workspace was not up to date. The changes I made need changes, so I omitted them. It's okay since I need to ask Yonghun/Jim about arrays on the C-side anyway.

13 years agomore changes towards oooJava version 2
bdemsky [Mon, 18 Oct 2010 07:34:12 +0000 (07:34 +0000)]
more changes towards oooJava version 2