<node id="681688">
  <nid>681688</nid>
  <type>event</type>
  <uid>
    <user id="27707"><![CDATA[27707]]></user>
  </uid>
  <created>1744215963</created>
  <changed>1744215992</changed>
  <title><![CDATA[PhD Defense by Ruobing Han]]></title>
  <body><![CDATA[<p><strong>Title:</strong>&nbsp;Compiler-Runtime Co-Design for Performance-Portable GPU Programming on CPUs</p><p><strong>Date:</strong>&nbsp;Tuesday, April 22, 2025</p><p><strong>Time:</strong>&nbsp;9:00 AM - 11:00 AM EDT</p><p><strong>Location:</strong></p><ul><li>In-Person: Klaus 3126</li><li>Online: <a href="https://teams.microsoft.com/l/meetup-join/19%3ameeting_ZWY2ZTJlODUtZjAwOC00OTk4LWE1MjUtNjZkOGZiOWNmZDFl%40thread.v2/0?context=%7b%22Tid%22%3a%22482198bb-ae7b-4b25-8b7a-6d7f32faa083%22%2c%22Oid%22%3a%22858265e6-a634-4d42-937c-9657ee47814c%22%7d" title="https://teams.microsoft.com/l/meetup-join/19%3ameeting_ZWY2ZTJlODUtZjAwOC00OTk4LWE1MjUtNjZkOGZiOWNmZDFl%40thread.v2/0?context=%7b%22Tid%22%3a%22482198bb-ae7b-4b25-8b7a-6d7f32faa083%22%2c%22Oid%22%3a%22858265e6-a634-4d42-937c-9657ee47814c%22%7d">Microsoft Teams</a></li></ul><p>&nbsp;</p><p>&nbsp;</p><p><strong>Ruobing Han</strong></p><p>Ph.D. Candidate</p><p>School of Computer Science</p><p>College of Computing</p><p>Georgia Institute of Technology</p><p>&nbsp;</p><p><strong>Committee:</strong></p><p>Dr. Hyesoon Kim (advisor), School of Computer Science, Georgia Institute of Technology</p><p>Dr. Santosh Pande, School of Computer Science, Georgia Institute of Technology</p><p>Dr. Yingyan (Celine) Lin, School of Computer Science, Georgia Institute of Technology</p><p>Dr. Richard (Rich) Vuduc, School of Computational Science and Engineering, Georgia Institute of Technology</p><p>Dr. Jaewoong Sim, Department of Electrical and Computer Engineering, Seoul National University</p><p>Dr. Zongwei Zhou, Google Cloud, Google</p><p>&nbsp;</p><p><strong>Abstract</strong></p><p>Most commercial and research data centers are CPU-GPU heterogeneous systems, offering both CPUs and GPUs to users. As a great number of advanced AI and HPC applications are implemented for GPUs, CPUs—despite providing substantial computational resources—are consistently underutilized. It is common for users to wait hours for GPUs to become available, even as many CPUs remain idle. This raises an important question: can CPUs be effectively utilized to run GPU applications?</p><p>To address the challenge of GPU-to-CPU migration, my dissertation focuses on two key aspects: coverage and performance. First, I introduce two projects, COX and CuPBoP, which provide broad support for correctly migrating various existing GPU programs to CPUs. We implement frameworks based on compiler and runtime co-design that support executing off-the-shelf GPU programs on CPUs without requiring manual pre- or post-processing. Compared to existing solutions, our frameworks achieve the highest coverage.</p><p>Second, I present a project that significantly enhances a single CPU’s ability to execute transformed GPU programs. We summarize the challenges of executing transformed GPU programs on CPUs and propose four compiler and runtime optimizations accordingly. Lastly, I introduce CuCC, a framework that extends CPU migration to distributed nodes, enabling the execution of GPU programs on CPU clusters. CuCC is the first solution to support GPU-to-CPU-cluster migration.</p>]]></body>
  <field_summary_sentence>
    <item>
      <value><![CDATA[Compiler-Runtime Co-Design for Performance-Portable GPU Programming on CPUs]]></value>
    </item>
  </field_summary_sentence>
  <field_summary>
    <item>
      <value><![CDATA[<p>Compiler-Runtime Co-Design for Performance-Portable GPU Programming on CPUs</p>]]></value>
    </item>
  </field_summary>
  <field_time>
    <item>
      <value><![CDATA[2025-04-22T09:00:00-04:00]]></value>
      <value2><![CDATA[2025-04-22T11:00:00-04:00]]></value2>
      <rrule><![CDATA[]]></rrule>
      <timezone><![CDATA[America/New_York]]></timezone>
    </item>
  </field_time>
  <field_fee>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_fee>
  <field_extras>
      </field_extras>
  <field_audience>
          <item>
        <value><![CDATA[Public]]></value>
      </item>
      </field_audience>
  <field_media>
      </field_media>
  <field_contact>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_contact>
  <field_location>
    <item>
      <value><![CDATA[•	In-Person: Klaus 3126]]></value>
    </item>
  </field_location>
  <field_sidebar>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_sidebar>
  <field_phone>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_phone>
  <field_url>
    <item>
      <url><![CDATA[]]></url>
      <title><![CDATA[]]></title>
            <attributes><![CDATA[]]></attributes>
    </item>
  </field_url>
  <field_email>
    <item>
      <email><![CDATA[]]></email>
    </item>
  </field_email>
  <field_boilerplate>
    <item>
      <nid><![CDATA[]]></nid>
    </item>
  </field_boilerplate>
  <links_related>
      </links_related>
  <files>
      </files>
  <og_groups>
          <item>221981</item>
      </og_groups>
  <og_groups_both>
          <item><![CDATA[Graduate Studies]]></item>
      </og_groups_both>
  <field_categories>
          <item>
        <tid>1788</tid>
        <value><![CDATA[Other/Miscellaneous]]></value>
      </item>
      </field_categories>
  <field_keywords>
          <item>
        <tid>100811</tid>
        <value><![CDATA[Phd Defense]]></value>
      </item>
      </field_keywords>
  <field_userdata><![CDATA[]]></field_userdata>
</node>
