{"678180":{"#nid":"678180","#data":{"type":"event","title":"PhD Proposal by Feiyang Jin","body":[{"value":"\u003Cp\u003E\u003Cstrong\u003ETitle\u003C\/strong\u003E: Data Race Analysis and Its Applications\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EDate\u003C\/strong\u003E: Tuesday, Nov 12, 2024\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003ETime\u003C\/strong\u003E: 12:00 pm - 2:00 pm ET\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003ELocation\u003C\/strong\u003E: KACB 2100\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EZoom\u003C\/strong\u003E: \u003Ca href=\u0022https:\/\/gatech.zoom.us\/j\/3738795207?pwd=eTZudHoyQy9sak1SK2srQlVIdkZsZz09\u0022 target=\u0022_blank\u0022 title=\u0022https:\/\/gatech.zoom.us\/j\/3738795207?pwd=eTZudHoyQy9sak1SK2srQlVIdkZsZz09\u0022\u003Ehttps:\/\/gatech.zoom.us\/j\/3738795207?pwd=eTZudHoyQy9sak1SK2srQlVIdkZsZz09\u003C\/a\u003E\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EFeiyang Jin\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003EPh.D. Student\u003C\/p\u003E\u003Cp\u003ESchool of Computer Science\u003C\/p\u003E\u003Cp\u003EGeorgia Institute of Technology\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003ECommittee\u003C\/strong\u003E:\u003C\/p\u003E\u003Cp\u003EDr. Vivek Sarkar (Advisor) \u2013\u0026nbsp;School of Computer Science, Georgia Institute of Technology\u003C\/p\u003E\u003Cp\u003EDr. Alessandro Orso\u0026nbsp;\u2013 School of Computer Science, Georgia Institute of Technology\u003C\/p\u003E\u003Cp\u003EDr. Qirun Zhang \u2013\u0026nbsp;School of Computer Science, Georgia Institute of Technology\u003C\/p\u003E\u003Cp\u003EDr. Richard Vuduc \u2013\u0026nbsp;School of Computational Science and Engineering, Georgia Institute of Technology\u003C\/p\u003E\u003Cp\u003EDr. Milind Chabbi \u2013 Uber Technologies.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EAbstract\u003C\/strong\u003E:\u003C\/p\u003E\u003Cp\u003EA data race is a troublesome bug frequently found in parallel programs. It occurs when\u003C\/p\u003E\u003Cp\u003Etwo or more accesses to the same memory location happen concurrently, and at least one\u003C\/p\u003E\u003Cp\u003Eof them is a write. Data races are particularly notorious because programs with data races\u003C\/p\u003E\u003Cp\u003Ecould lead to non-deterministic behaviors, where the program may or may not return the\u0026nbsp;\u003C\/p\u003E\u003Cp\u003Esame result during\u0026nbsp;different executions, even with identical inputs. It is difficult for programmers\u003C\/p\u003E\u003Cp\u003Eto identify data races given the non-determinism. As a result, even experienced developers\u003C\/p\u003E\u003Cp\u003Eoften struggle to understand, locate, and fix data races without the aid of specialized tools.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003ETo assist programmers in writing correct parallel programs without data races, this\u003C\/p\u003E\u003Cp\u003Eproposal outlines techniques for programmers to analyze and repair data races. First,\u003C\/p\u003E\u003Cp\u003Ewe study the fundamentals of task-parallel programs and prove that data-race freedom leads\u003C\/p\u003E\u003Cp\u003Eto determinism for certain task-parallel programs. Our theoretical result would greatly help\u0026nbsp;\u003C\/p\u003E\u003Cp\u003Eprogrammers become confident in the correctness of their programs.\u0026nbsp;\u003C\/p\u003E\u003Cp\u003ESecond, we design a new dynamic race detection algorithm for task-parallel programs with promises.\u0026nbsp;\u003C\/p\u003E\u003Cp\u003EA promise is a construct that can be used to support arbitrary point-to-point synchronization. The\u003C\/p\u003E\u003Cp\u003Eimplementation of the race detection, together with several optimizations we introduced, has\u003C\/p\u003E\u003Cp\u003Ea comparable slowdown to previous race detectors that do not support promises.\u0026nbsp;\u003C\/p\u003E\u003Cp\u003EThird, we built a tool that visualizes data races found in task-parallel programs. The visualizer consists\u003C\/p\u003E\u003Cp\u003Eof a graph builder and a visualization interface. We conducted a performance evaluation\u003C\/p\u003E\u003Cp\u003Eand an efficacy research survey to demonstrate the usefulness of our tool.\u0026nbsp;\u003C\/p\u003E\u003Cp\u003EFinally, we design and implement a closed-loop application to repair data races with the help of\u0026nbsp;\u003C\/p\u003E\u003Cp\u003Elarge language model. The application uses previous fixed data races as few-shot examples\u0026nbsp;\u003C\/p\u003E\u003Cp\u003Eand asks ChatGPT to remove data races found in a program. The proposed solution by ChatGPT is\u003C\/p\u003E\u003Cp\u003Echecked again to ensure correctness before a new commit is created to notify programmers.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E","summary":"","format":"limited_html"}],"field_subtitle":"","field_summary":[{"value":"\u003Cp\u003EData Race Analysis and Its Applications\u003C\/p\u003E","format":"limited_html"}],"field_summary_sentence":[{"value":"Data Race Analysis and Its Applications"}],"uid":"27707","created_gmt":"2024-11-05 17:03:48","changed_gmt":"2024-11-05 17:03:48","author":"Tatianna Richardson","boilerplate_text":"","field_publication":"","field_article_url":"","field_event_time":{"event_time_start":"2024-11-12T12:00:06-05:00","event_time_end":"2024-11-12T14:00:06-05:00","event_time_end_last":"2024-11-12T14:00:06-05:00","gmt_time_start":"2024-11-12 17:00:06","gmt_time_end":"2024-11-12 19:00:06","gmt_time_end_last":"2024-11-12 19:00:06","rrule":null,"timezone":"America\/New_York"},"location":"KACB 2100","extras":[],"groups":[{"id":"221981","name":"Graduate Studies"}],"categories":[],"keywords":[{"id":"102851","name":"Phd proposal"}],"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":""}}}