{"342631":{"#nid":"342631","#data":{"type":"event","title":"Ph.D. Proposal by Sangho Lee","body":[{"value":"\u003Cp\u003ETitle: \u003Cstrong\u003EMitigating the performance impact of memory bloat\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003ESangho Lee\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003ESchool of Computer Science\u003C\/p\u003E\u003Cp\u003ECollege of Computing\u003C\/p\u003E\u003Cp\u003EGeorgia Institute of Technology\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003EDate:\u0026nbsp;November 11th, 2014\u0026nbsp;(Thursday)\u003C\/p\u003E\u003Cp\u003ETime: 1:00 PM - 3:00 PM (ET)\u003C\/p\u003E\u003Cp\u003ELocation: KACB 2100\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003ECommittee:\u003C\/p\u003E\u003Cp\u003E------------\u003C\/p\u003E\u003Cp\u003EDr. Santosh Pande (Advisor, School of Computer Science, Georgia Tech)\u003C\/p\u003E\u003Cp\u003EDr. Alessandro Orso (School of Computer Science, Georgia Tech)\u003C\/p\u003E\u003Cp\u003EDr. Karsten Schwan (School of Computer Science, Georgia Tech)\u003C\/p\u003E\u003Cp\u003EDr. Hyesoon Kim (School of Computer Science, Georgia Tech)\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EAbstract:\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003EMemory bloat is loosely defined as an excessive use of memory than is\u003C\/p\u003E\u003Cp\u003Enecessary in an application. Due to the complexity of efficient memory\u003C\/p\u003E\u003Cp\u003Emanagement, memory bloat is pervasive and is often neglected in favor of\u003C\/p\u003E\u003Cp\u003Elower application development time. Unfortunately, when the bloat\u003C\/p\u003E\u003Cp\u003Ebecomes severe, unwanted performance issues may occur.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003EIn this proposal, we identify 3 pervasive causes of performance issues\u003C\/p\u003E\u003Cp\u003Edue to memory bloat and present feedback-driven solutions for each.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003EFirst, memory bloat often manifests in the form of memory leaks. To\u003C\/p\u003E\u003Cp\u003Eprevent the consequences of memory bloats, we first need to detect the\u003C\/p\u003E\u003Cp\u003Epresence of memory leaks. We tackle this issue by augmenting a class of\u003C\/p\u003E\u003Cp\u003Edynamic memory leak detectors based on staleness tracking using a\u003C\/p\u003E\u003Cp\u003Emachine learning framework. The proposed solution improves the accuracy\u003C\/p\u003E\u003Cp\u003Eand utility of the detection technique by selecting good staleness\u003C\/p\u003E\u003Cp\u003Epredicates for detecting memory leaks. Significant memory bloat savings\u003C\/p\u003E\u003Cp\u003Eare incurred upon weeding out such memory leaks.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003ESecond, memory bloat prevention mechanism in multi-threaded memory\u003C\/p\u003E\u003Cp\u003Eallocators is another source of performance issues. When the bloat\u003C\/p\u003E\u003Cp\u003Eprevention mechanism is frequently triggered unnecessarily as an\u003C\/p\u003E\u003Cp\u003Eartifact of intensive memory allocations\/deallocations, an application\u003C\/p\u003E\u003Cp\u003Emay experience a suboptimal performance. To address this, we propose a\u003C\/p\u003E\u003Cp\u003Efeedback-directed tuning mechanism for TCMalloc, a widely used memory\u003C\/p\u003E\u003Cp\u003Eallocator for high performance systems. The proposed optimization\u003C\/p\u003E\u003Cp\u003Etechnique tunes the thread cache management mechanism in TCMalloc to the\u003C\/p\u003E\u003Cp\u003Ememory allocation behavior of an application and reduces the management\u003C\/p\u003E\u003Cp\u003Ecost of the internal data structures in TCMalloc. With the proposed\u003C\/p\u003E\u003Cp\u003Etechnique integrated into FDO in GCC, we observed up to 10% improvement in application performance.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003EThird, implicit memory management in managed languages such as Java is\u003C\/p\u003E\u003Cp\u003Einherently vulnerable to memory bloat as the detection and reclamation\u003C\/p\u003E\u003Cp\u003Eof dead objects are performed lazily by garbage collectors. The\u003C\/p\u003E\u003Cp\u003Einterruptions caused by frequent garbage collections can adversely\u003C\/p\u003E\u003Cp\u003Eimpact performance as well as timing properties of the applications. To\u003C\/p\u003E\u003Cp\u003Eprevent the program slowdown due to excessive garbage collection\u003C\/p\u003E\u003Cp\u003Epressure, we propose a hybrid approach that identifies must-deallocation\u003C\/p\u003E\u003Cp\u003Esites of allocated objects using a static shape analysis and that\u003C\/p\u003E\u003Cp\u003Etransforms an application to selectively recycle the dead objects using\u003C\/p\u003E\u003Cp\u003Ea profile driven approach. With the technique, we observed a 4x\u003C\/p\u003E\u003Cp\u003Eperformance improvement on an application with a high garbage collection\u003C\/p\u003E\u003Cp\u003Epressure. Further improvements to object recycling framework and its\u003C\/p\u003E\u003Cp\u003Eevaluation on timing properties are proposed as future work.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E","summary":null,"format":"limited_html"}],"field_subtitle":"","field_summary":"","field_summary_sentence":[{"value":"Mitigating the performance impact of memory bloat"}],"uid":"28077","created_gmt":"2014-11-06 17:17:06","changed_gmt":"2016-10-08 02:10:09","author":"Danielle Ramirez","boilerplate_text":"","field_publication":"","field_article_url":"","field_event_time":{"event_time_start":"2014-11-11T12:00:00-05:00","event_time_end":"2014-11-11T14:00:00-05:00","event_time_end_last":"2014-11-11T14:00:00-05:00","gmt_time_start":"2014-11-11 17:00:00","gmt_time_end":"2014-11-11 19:00:00","gmt_time_end_last":"2014-11-11 19:00:00","rrule":null,"timezone":"America\/New_York"},"extras":[],"groups":[{"id":"221981","name":"Graduate Studies"}],"categories":[],"keywords":[{"id":"1808","name":"graduate students"},{"id":"913","name":"PhD"}],"core_research_areas":[],"news_room_topics":[],"event_categories":[{"id":"1788","name":"Other\/Miscellaneous"}],"invited_audience":[{"id":"78771","name":"Public"}],"affiliations":[],"classification":[],"areas_of_expertise":[],"news_and_recent_appearances":[],"phone":[],"contact":[],"email":[],"slides":[],"orientation":[],"userdata":""}}}