Justin Ethier
3ff33cbcb8
WIP - debugging cache of unswept count
2018-08-01 13:38:55 -04:00
Justin Ethier
ebc3247aa7
Remove unused code
2018-07-31 22:54:39 -04:00
Justin Ethier
7631607d87
Experimental tweaks
2018-07-31 13:42:50 -04:00
Justin Ethier
3369214c30
Cache number of unswept pages
2018-07-31 13:17:32 -04:00
Justin Ethier
dc89fbbc56
Added GC_COLLECT_UNDER_UNSWEPT_HEAP_COUNT
...
Also increased threshold from 2 to 3, to be a bit more aggresive with starting major GC's
2018-07-27 12:19:46 -04:00
Justin Ethier
da31b83e66
Remove dead comment
2018-07-26 17:44:39 -04:00
Justin Ethier
a2073b7803
Renamed member variable to "is_unswept"
2018-07-25 18:33:47 -04:00
Justin Ethier
37bd321245
Remove dead code and clean up formatting
2018-07-18 13:31:02 -04:00
Justin Ethier
91c67aee8b
Added comments around trace/alloc/clear colors
2018-07-18 13:14:45 -04:00
Justin Ethier
df27292e6d
Cleanup and remove unneeded code
2018-07-17 22:02:03 -04:00
Justin Ethier
972e11b04f
Fix for complex numbers
2018-07-17 15:34:31 -04:00
Justin Ethier
67c50608f0
Temporarily re-enabling
2018-07-17 13:18:59 -04:00
Justin Ethier
50eb431225
Fully-disable fixed-size heaps for now
2018-07-17 13:08:24 -04:00
Justin Ethier
d7fa754d1f
Temporarily revert gc_alloc code to stabilize
...
The code crashes even with these changes reverted, so something else is clearly wrong.
2018-07-16 18:58:04 -04:00
Justin Ethier
c89a434bf9
Fixing up fixed-size heaps
2018-07-16 18:33:30 -04:00
Justin Ethier
7994354835
WIP: fixed-size heaps
2018-07-16 13:17:58 -04:00
Justin Ethier
1343490c9b
Experimental change to fix GC crashes
...
I think the real problem may be that we mark globals before waiting for the mutators to transition to the new Mark color. If we wait until after a minor gc to update the mark color, there is a window where the mutator may sweep, and this is after globals have been marked. So the newly marked objects may be accidentally freed by sweep!
2018-07-14 21:23:28 -04:00
Justin Ethier
5216131309
Temporary (?) failsafe in gc_sweep
...
Also account for collector's mark color when sweeping old objects. Sucks to have to make 3 comparisons but its better than risking accidentally freeing a traced object!
2018-07-13 22:35:44 -04:00
Justin Ethier
38b7a04fa8
Fix memory leak
2018-07-10 17:31:31 -04:00
Justin Ethier
1319b10b73
Fix segfault
2018-07-09 18:01:50 -04:00
Justin Ethier
68ddb831bb
Fix compiler error
2018-07-09 17:57:52 -04:00
Justin Ethier
35a8784236
Add diagnostics
2018-07-09 17:56:36 -04:00
Justin Ethier
0df28b5ddc
Experimenting with alternative gc init
2018-07-09 13:38:51 -04:00
Justin Ethier
2cba2f42fc
Clean up gc_log()
2018-07-05 13:41:47 -04:00
Justin Ethier
053ef0ada5
Added gc_log()
2018-07-05 13:24:00 -04:00
Justin Ethier
17c454f2ec
Integrate gc-perf3-dev changes with master
2018-07-02 18:56:03 -04:00
Justin Ethier
7a6cf37a30
Cleanup trace section
2018-06-14 13:17:20 -04:00
Justin Ethier
49e06dce07
Cleanup comment
2018-06-12 16:08:02 -04:00
Justin Ethier
3cff2e1560
Tweaks for new locking
2018-06-12 16:05:59 -04:00
Justin Ethier
fa82aeb6a5
WIP: tweaking locking of GC trace
2018-06-12 15:54:51 -04:00
Justin Ethier
74d53eb334
WIP: remove locking from GC collector's trace
2018-06-11 18:58:33 -04:00
Justin Ethier
9e94d4ee46
Cut over to new mark buffer data structure
2018-06-11 13:30:02 -04:00
Justin Ethier
9dddfb882f
Issue #55 - Adding more complex number support
2018-05-07 20:48:53 -04:00
Justin Ethier
0ca396f8fa
Add new string_type field
2017-10-20 16:29:47 +00:00
Justin Ethier
889ec5885e
Removing "magic numbers" for GC heap size
2017-09-20 13:32:20 +00:00
Justin Ethier
8b3bf050e8
Added new members for in-memory I/O
2017-08-19 18:04:39 -04:00
Justin Ethier
4c5191f2b8
Added new read_len field for fread
2017-08-17 13:54:44 +00:00
Justin Ethier
24bfd89774
WIP
2017-08-12 18:15:02 -04:00
Justin Ethier
e9dc22a296
WIP
2017-08-11 13:40:40 +00:00
Justin Ethier
a9e0d86fea
Add line/column numbers to port type
2017-08-11 10:13:39 +00:00
Justin Ethier
74eff82805
Added flags
2017-08-09 16:12:53 +00:00
Justin Ethier
0aa3437143
WIP
2017-07-29 20:27:43 -04:00
Justin Ethier
be9d68c3f1
Only preemtively grow small obj heaps
2017-07-28 21:33:28 -04:00
Justin Ethier
ed71f4f0de
Experimenting with GC strategies for the "rest" heap
2017-07-27 14:07:44 +00:00
Justin Ethier
6e6a4239a4
Bug fixes
2017-07-21 13:39:55 +00:00
Justin Ethier
b8d2fda060
WIP
2017-07-21 13:03:54 +00:00
Justin Ethier
f0acc9c810
WIP
2017-07-20 18:57:27 -04:00
Justin Ethier
acb797e323
WIP - Experimenting with REST heap allocation
2017-07-20 17:46:08 +00:00
Justin Ethier
07df5b03c5
Debug output for sizes of allocated objs
2017-07-20 13:15:20 +00:00
Justin Ethier
eb4a4b9aff
Consistent style
2017-07-19 17:54:08 -04:00