Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

Reference Counting Renaissance

Name: Anonymous 2014-01-19 6:37

Still using GC in 2014? Why!? It's shit!

There is currently a ``Reference Counting Renai Circulation ssance’’ underway. Reference counting is now faster than GC, plus with the benefits of full determinism.

http://lambda-the-ultimate.org/node/4825
http://www.youtube.com/watch?v=sPitRUrENBI

Despite some clear advantages and recent advances, reference counting remains a poor cousin to high-performance tracing garbage collectors. The advantages of reference counting include a) immediacy of reclamation, b) incrementality, and c) local scope of its operations. After decades of languishing with hopelessly bad performance, recent work narrowed the gap between reference counting and the fastest tracing collectors to within 10%. Though a major advance, this gap remains a substantial barrier to adoption in performance-conscious application domains. Our work identifies heap organization as the principal source of the remaining performance gap. We present the design, implementation, and analysis of a new collector, RCImmix, that replaces reference counting’s traditional free-list heap organization with the line and block heap structure introduced by the Immix collector. The key innovations of RCImmix are 1) to combine traditional reference counts with per-line live object counts to identify reusable memory and 2) to eliminate fragmentation by integrating copying with reference counting of new objects and with backup tracing cycle collection. In RCImmix, reference counting offers efficient collection and the line and block heap organization delivers excellent mutator locality and efficient allocation. With these advances, RCImmix closes the 10% performance gap, outperforming a highly tuned production generational collector. By removing the performance barrier, this work transforms reference counting into a serious alternative for meeting high performance objectives for garbage collected languages.

Name: Anonymous 2014-01-19 6:50

Because no one has implemented what is described for the languages I use.

Name: Anonymous 2014-01-19 7:08

ONE WORD: THE EVICTION OF CACHE. THREAD PREEMPTED.

Name: oops 2014-01-19 7:10

ONE WORD: THE FORCED EVICTION OF CACHE. THREAD PREEMPTED.

Name: Anonymous 2014-01-19 7:11

>>4
The Immix allocation strategy was specifically designed to mitigate cache thrashing.

Name: Anonymous 2014-01-19 7:20

FEOC

Name: Anonymous 2014-01-19 7:25

>>5
Like I'd believe anything from the Manual Memory Deallocation crowd.

Name: Anonymous 2014-01-19 7:30

Name: Anonymous 2014-01-19 7:31

>>7
But it's not manual deallocation, it's reference-counted garbage collection, instead of tracing garbage collection (what is typically referred to as GC).

Name: Anonymous 2014-01-19 7:38

>>9
I know, I was just shittrolling/shitposting. Sorry.

Name: Anonymous 2014-01-19 17:00

Give it to me straight, pops. Can you guys handle a link chain with genus > 0 yet?

Name: VIPPER 2014-01-19 17:15

Isn't Reference counting a kind of GC?

Name: Anonymous 2014-01-19 17:47

>>7
Fuck off and die, GC shithead.

Name: Anonymous 2014-01-19 20:04

fuwafuwari, fuwafuwaru
GC is shit.

Name: Anonymous 2014-01-19 21:27

>>13
Yes, therefore the OP was incomplete in his opening. He should have said ``tracing GC.''

Name: Anonymous 2014-01-20 0:13

GC is easy. I'll choose the easy way every time.

Name: Anonymous 2014-01-20 2:28

>>20
The difference between things that are easy and things that are hard is that occasionally, easy things are impossible.

Name: Anonymous 2014-01-20 3:35

>>21
I'll heed that once I find a situation when easy things are impossible.

Name: Anonymous 2014-01-20 4:32

>>21
I love you.

Don't change these.
Name: Email:
Entire Thread Thread List