<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>article 💡 ML Training Tip Of The Week #1: Optimizing GPU Utilization in Multi-Node Spark Clusters in Technical Blog</title>
    <link>https://community.databricks.com/t5/technical-blog/ml-training-tip-of-the-week-1-optimizing-gpu-utilization-in/ba-p/86677</link>
    <description>&lt;P&gt;&lt;SPAN&gt;When running distributed training or batch inference on multi-node GPU clusters with Spark, the GPUs on the Driver node often remain underutilized, resulting in unnecessary waste of GPU resources. The figures below illustrate this issue:&lt;/SPAN&gt;&amp;nbsp;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Fig.1: Only one GPU in Driver node is being utilized" style="width: 999px;"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/10828i180382AE1C7151A4/image-size/large?v=v2&amp;amp;px=999" role="button" title="driver_GPUutil.png" alt="Fig.1: Only one GPU in Driver node is being utilized" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Fig.1: Only one GPU in Driver node is being utilized&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Fig.2: All GPUs in the Worker node are utilized." style="width: 999px;"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/10827iA88CCE78DB028B25/image-size/large?v=v2&amp;amp;px=999" role="button" title="worker_GPUutil.png" alt="Fig.2: All GPUs in the Worker node are utilized." /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Fig.2: All GPUs in the Worker node are utilized.&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG style="font-family: inherit;"&gt;Solution: Heterogeneous Compute Types for Driver and Worker Nodes&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;To address this problem, you can select different compute types for the Driver and Worker nodes. For example, you might choose a CPU instance for the Driver node and a GPU instance for the Worker nodes.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Currently, the cluster UI does not support heterogeneous compute types. However, you can create such a cluster using the following API command:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;clusters create --json '{
  "cluster_name": "xxxx",
  "spark_version": "14.3.x-gpu-ml-scala2.12",
  "node_type_id": "g4dn.12xlarge",
  "driver_node_type_id": "i3.xlarge",
  "autoscale" : { "min_workers": 1, "max_workers": 2 },
  "aws_attributes" : {"first_on_demand": 3} 
}'
&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;#automl #modeltraining #mosaicai&lt;/P&gt;</description>
    <pubDate>Thu, 05 Sep 2024 19:56:33 GMT</pubDate>
    <dc:creator>Lanz</dc:creator>
    <dc:date>2024-09-05T19:56:33Z</dc:date>
    <item>
      <title>💡 ML Training Tip Of The Week #1: Optimizing GPU Utilization in Multi-Node Spark Clusters</title>
      <link>https://community.databricks.com/t5/technical-blog/ml-training-tip-of-the-week-1-optimizing-gpu-utilization-in/ba-p/86677</link>
      <description>&lt;P&gt;Welcome to the&amp;nbsp;&lt;EM&gt;ML Training Tip Of The Week &lt;/EM&gt;Series&lt;/P&gt;</description>
      <pubDate>Thu, 05 Sep 2024 19:56:33 GMT</pubDate>
      <guid>https://community.databricks.com/t5/technical-blog/ml-training-tip-of-the-week-1-optimizing-gpu-utilization-in/ba-p/86677</guid>
      <dc:creator>Lanz</dc:creator>
      <dc:date>2024-09-05T19:56:33Z</dc:date>
    </item>
  </channel>
</rss>

