Skip to content

Commit

Permalink
Deploying to gh-pages from @ 83169c5 🚀
Browse files Browse the repository at this point in the history
  • Loading branch information
facebook-github-bot committed Mar 14, 2024
1 parent 6150fdb commit 6ab5922
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -701,6 +701,7 @@ <h1>Source code for fbgemm_gpu.split_table_batched_embeddings_ops_training</h1><
<span class="n">uvm_cache_stats</span><span class="p">:</span> <span class="n">torch</span><span class="o">.</span><span class="n">Tensor</span>
<span class="n">local_uvm_cache_stats</span><span class="p">:</span> <span class="n">torch</span><span class="o">.</span><span class="n">Tensor</span>
<span class="n">uuid</span><span class="p">:</span> <span class="nb">str</span>
<span class="n">last_uvm_cache_print_state</span><span class="p">:</span> <span class="n">torch</span><span class="o">.</span><span class="n">Tensor</span>

<span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span> <span class="c1"># noqa C901</span>
<span class="bp">self</span><span class="p">,</span>
Expand Down Expand Up @@ -1646,24 +1647,35 @@ <h1>Source code for fbgemm_gpu.split_table_batched_embeddings_ops_training</h1><
<span class="p">),</span> <span class="s2">&quot;gather_uvm_cache_stats should be set to true to access uvm cache stats.&quot;</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">local_uvm_cache_stats</span> <span class="k">if</span> <span class="n">use_local_cache</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">uvm_cache_stats</span>

<span class="k">def</span> <span class="nf">_get_uvm_cache_print_state</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">use_local_cache</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]:</span>
<span class="n">snapshot</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_uvm_cache_stats</span><span class="p">(</span><span class="n">use_local_cache</span><span class="p">)</span>
<span class="k">if</span> <span class="n">use_local_cache</span><span class="p">:</span>
<span class="k">return</span> <span class="n">snapshot</span><span class="o">.</span><span class="n">tolist</span><span class="p">()</span>

<span class="c1"># Stats are accumulated over multiple steps. Compute delta, and update state.</span>
<span class="n">delta</span> <span class="o">=</span> <span class="n">snapshot</span> <span class="o">-</span> <span class="bp">self</span><span class="o">.</span><span class="n">last_uvm_cache_print_state</span>
<span class="bp">self</span><span class="o">.</span><span class="n">last_uvm_cache_print_state</span> <span class="o">=</span> <span class="n">snapshot</span><span class="o">.</span><span class="n">clone</span><span class="p">()</span>
<span class="k">return</span> <span class="n">delta</span><span class="o">.</span><span class="n">tolist</span><span class="p">()</span>

<span class="nd">@torch</span><span class="o">.</span><span class="n">jit</span><span class="o">.</span><span class="n">ignore</span>
<span class="k">def</span> <span class="nf">print_uvm_cache_stats</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">use_local_cache</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="n">uvm_cache_stats</span><span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_uvm_cache_stats</span><span class="p">(</span>
<span class="n">use_local_cache</span>
<span class="p">)</span><span class="o">.</span><span class="n">tolist</span><span class="p">()</span>
<span class="n">uvm_cache_stats</span><span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_get_uvm_cache_print_state</span><span class="p">(</span><span class="n">use_local_cache</span><span class="p">)</span>
<span class="n">N</span> <span class="o">=</span> <span class="nb">max</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">uvm_cache_stats</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
<span class="n">m</span> <span class="o">=</span> <span class="p">{</span>
<span class="s2">&quot;N_called&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span><span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_calls</span><span class="p">],</span>
<span class="s2">&quot;N_requested_indices&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span>
<span class="s2">&quot;requested_indices&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span>
<span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_requested_indices</span>
<span class="p">],</span>
<span class="s2">&quot;N_unique_indices&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span><span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_unique_indices</span><span class="p">],</span>
<span class="s2">&quot;N_unique_misses&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span><span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_unique_misses</span><span class="p">],</span>
<span class="s2">&quot;N_conflict_unique_misses&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span>
<span class="p">]</span>
<span class="o">/</span> <span class="n">N</span><span class="p">,</span>
<span class="s2">&quot;unique_indices&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span><span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_unique_indices</span><span class="p">]</span>
<span class="o">/</span> <span class="n">N</span><span class="p">,</span>
<span class="s2">&quot;unique_misses&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span><span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_unique_misses</span><span class="p">]</span> <span class="o">/</span> <span class="n">N</span><span class="p">,</span>
<span class="s2">&quot;conflict_unique_misses&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span>
<span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_conflict_unique_misses</span>
<span class="p">],</span>
<span class="s2">&quot;N_conflict_misses&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span>
<span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_conflict_misses</span>
<span class="p">],</span>
<span class="p">]</span>
<span class="o">/</span> <span class="n">N</span><span class="p">,</span>
<span class="s2">&quot;conflict_misses&quot;</span><span class="p">:</span> <span class="n">uvm_cache_stats</span><span class="p">[</span><span class="n">UVMCacheStatsIndex</span><span class="o">.</span><span class="n">num_conflict_misses</span><span class="p">]</span>
<span class="o">/</span> <span class="n">N</span><span class="p">,</span>
<span class="p">}</span>
<span class="k">if</span> <span class="n">uvm_cache_stats</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
<span class="n">m</span><span class="o">.</span><span class="n">update</span><span class="p">(</span>
Expand Down Expand Up @@ -2454,6 +2466,7 @@ <h1>Source code for fbgemm_gpu.split_table_batched_embeddings_ops_training</h1><
<span class="p">),</span>
<span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">reset_uvm_cache_stats</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">last_uvm_cache_print_state</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">zeros_like</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">uvm_cache_stats</span><span class="p">)</span>

<span class="k">def</span> <span class="nf">reset_cache_states</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">lxu_cache_weights</span><span class="o">.</span><span class="n">numel</span><span class="p">():</span>
Expand Down
2 changes: 1 addition & 1 deletion searchindex.js

Large diffs are not rendered by default.

0 comments on commit 6ab5922

Please sign in to comment.