{"203151":{"#nid":"203151","#data":{"type":"event","title":"ECE and SCS Faculty Candidate Talk - John A. Stratton, UIUC","body":[{"value":"\u003Cp\u003E\u003Cstrong\u003EJoint ECE and SCS Faculty Candidate Talk:\u0026nbsp;\u003C\/strong\u003EJohn A. Stratton, University of Illinois Urbana-Champaign\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003ETitle: \u003C\/strong\u003EPerformance Portability Across GPU and CPU Architectures\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EAbstract\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;Heterogeneous architectures, by definition, include multiple processing components with very different microarchitectures and execution models. In particular, computing platforms from supercomputers to smartphones can now incorporate both CPU and GPU processors. Disparities between CPU and GPU processor architectures have naturally led to distinct programming models and development patterns for each component. Developers for a specific system decompose their application, assign different parts to different heterogeneous components, and express each part in its assigned component\u0027s native model. But without additional effort, that application will not be suitable for another architecture with a different heterogeneous component balance. Developers addressing a variety of platforms must either write multiple implementations for every potential heterogeneous component or fall back to a ``safe\u0027\u0027 CPU implementation, incurring a high development cost or loss of system performance, respectively. The disadvantages of developing for heterogeneous systems are vastly reduced if one source code implementation can be mapped to either a CPU or GPU architecture with high performance.\u003C\/p\u003E\u003Cp\u003EA convention has emerged from the OpenCL community defining how to write kernels for performance portability among different GPU architectures. Because of this well-defined convention, OpenCL programs written according to this convention contain enough abstract performance information to enable effective translations to CPU architectures as well. The challenge is that an OpenCL implementation must focus on those programming conventions more than the most natural mapping of the language specification to the target architecture. I will outline some concrete transformations that can be applied to an OpenCL kernel to suitably map the abstract performance properties to CPU execution constructs. Such transformations result in marked performance improvements over existing CPU OpenCL implementations for GPU-portable OpenCL kernels. Ultimately, the performance of GPU-portable OpenCL kernels, when using this methodology, is comparable to the performance of native multicore CPU programming models such as OpenMP.\u003C\/p\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EBio\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003EJohn Stratton recently completed his Ph.D. at the University of Illinois Urbana-Champaign, where he is currently a Visiting Lecturer in addition to his role as Senior Architect at MulticoreWare Incorporated.\u0026nbsp; He has been teaching GPU computing since the first university course on the subject in Spring 2007.\u0026nbsp; John has also been working closely with the SPEC corporation to publish the first industry-standard accelerator computing benchmark suite due to be released later this year.\u0026nbsp; He has received several awards for outstanding research, teaching, and technology development, most recently given the \u201cMost Valuable Entrepreneurial Leadership in a Startup\u201d award by the University of Illinois Research Park for his work with MulticoreWare.\u0026nbsp;\u0026nbsp;\u0026nbsp;\u003C\/p\u003E","summary":null,"format":"limited_html"}],"field_subtitle":"","field_summary":[{"value":"\u003Cp\u003E\u003Cstrong\u003EJoint ECE and SCS Faculty Candidate Talk:\u0026nbsp;\u003C\/strong\u003EJohn A. Stratton, University of Illinois Urbana-Champaign\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003ETitle: \u003C\/strong\u003EPerformance Portability Across GPU and CPU Architectures\u003C\/p\u003E\u003Cp\u003E\u003Cstrong\u003EBIO\u003C\/strong\u003E\u003C\/p\u003E\u003Cp\u003EJohn Stratton recently completed his Ph.D. at the University of Illinois Urbana-Champaign, where he is currently a Visiting Lecturer in addition to his role as Senior Architect at MulticoreWare Incorporated.\u0026nbsp; He has been teaching GPU computing since the first university course on the subject in Spring 2007.\u0026nbsp; John has also been working closely with the SPEC corporation to publish the first industry-standard accelerator computing benchmark suite due to be released later this year.\u0026nbsp; He has received several awards for outstanding research, teaching, and technology development, most recently given the \u201cMost Valuable Entrepreneurial Leadership in a Startup\u201d award by the University of Illinois Research Park for his work with MulticoreWare.\u0026nbsp; \u0026nbsp;\u003C\/p\u003E","format":"limited_html"}],"field_summary_sentence":[{"value":"Performance Portability Across GPU and CPU Architectures"}],"uid":"27734","created_gmt":"2013-03-29 17:06:11","changed_gmt":"2016-10-08 02:03:06","author":"Antonette Benford","boilerplate_text":"","field_publication":"","field_article_url":"","field_event_time":{"event_time_start":"2013-04-02T12:00:00-04:00","event_time_end":"2013-04-02T13:00:00-04:00","event_time_end_last":"2013-04-02T13:00:00-04:00","gmt_time_start":"2013-04-02 16:00:00","gmt_time_end":"2013-04-02 17:00:00","gmt_time_end_last":"2013-04-02 17:00:00","rrule":null,"timezone":"America\/New_York"},"extras":["free_food"],"hg_media":{"203141":{"id":"203141","type":"image","title":"John A. Stratton","body":null,"created":"1449179952","gmt_created":"2015-12-03 21:59:12","changed":"1475894859","gmt_changed":"2016-10-08 02:47:39","alt":"John A. Stratton","file":{"fid":"196635","name":"stratton.jpg","image_path":"\/sites\/default\/files\/images\/stratton_0.jpg","image_full_path":"http:\/\/hg.gatech.edu\/\/sites\/default\/files\/images\/stratton_0.jpg","mime":"image\/jpeg","size":27438,"path_740":"http:\/\/hg.gatech.edu\/sites\/default\/files\/styles\/740xx_scale\/public\/images\/stratton_0.jpg?itok=GAp1IF1u"}}},"media_ids":["203141"],"groups":[{"id":"47223","name":"College of Computing"}],"categories":[],"keywords":[],"core_research_areas":[],"news_room_topics":[],"event_categories":[],"invited_audience":[],"affiliations":[],"classification":[],"areas_of_expertise":[],"news_and_recent_appearances":[],"phone":[],"contact":[{"value":"\u003Cp\u003EHyesoon Kim @ (404) 385-3303 \u003Ca href=\u0022mailto:hyesoon@cc.gatech.edu\u0022\u003Ehyesoon@cc.gatech.edu\u003C\/a\u003E\u003C\/p\u003E","format":"limited_html"}],"email":[],"slides":[],"orientation":[],"userdata":""}}}