GC or not GC
От: StanislavK Великобритания  
Дата: 23.09.13 13:34
Оценка: 14 (1)
Неравно прочитал пост на блоге одного умного дядьки и нарвался на документ, который напомнил мне один из июльских постов
Автор: A13x
Дата: 10.07.13
на форуме. Для тех кто не помнит или не хочет вспоминать — была там ссылка на "Очень интересный, глубокий и познавательный пост о проблемах в мобильной разработке." Пост был так себе, просто buzz и эмоции. Помимо прочего, этот пост проехался по GC, и как бы невзначай упоминал ARC, который "It isn’t GC, it isn’t anything like GC, it performs nothing like GC, it does not have the power of GC, it does not break retain cycles, it does not sweep anything, it does not scan anything. Period, end of story, not garbage collection". И, в качестве доказательства того, что GC сосет был приведен график из документа, который сравнивает не понятно что, с непонятно чем и делает соответствующие выводы. Про то как себя ведет ARC нигде не говорится, но очень толсто подразумевается.

В общем, сейчас я нашел на документ несоклько иного содержания:

http://www.cs.virginia.edu/~cs415/reading/bacon-garbage.pdf

Суть, которого сводится к следующему, логичному, но почему-то не очевидному выводу, который, в общем, лежит на поверхности:

We have shown that tracing (под tracing имеется ввиду то, что принято обычно понимать под GC) and reference counting garbage collection, which were previously thought to be very different, in fact share the exact same structure and can be viewed as duals of each other. ...This explains why highly optimized tracing and reference counting collectors have surprisingly similar performance characteristics.

В самом деле, как бы память не чистилась, количесво усилий, которые надо для этого приложить не становятся меньше. Естественно, что сравниваемые системы управления памятью должны иметь схожие функциональные характеристики.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.