This commit is contained in:
CircleCI Docs
2025-03-20 22:37:22 +00:00
parent a943912d4c
commit cecec56a99
858 changed files with 18494 additions and 17475 deletions

View File

@@ -110,6 +110,7 @@ $(function(){initNavTree('fast_8h.html',''); initResizable(true); });
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;optional&gt;</code><br />
<code>#include &lt;variant&gt;</code><br />
<code>#include &quot;<a class="el" href="utils_8h_source.html">mlx/utils.h</a>&quot;</code><br />
</div>
<p><a href="fast_8h_source.html">Go to the source code of this file.</a></p>
@@ -140,9 +141,9 @@ Functions</h2></td></tr>
<tr class="separator:a534ef357eae24892684a6ecd866d3fab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1632b78950f0c8c31b24be7d80faeb39" id="r_a1632b78950f0c8c31b24be7d80faeb39"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmlx_1_1core_1_1array.html">array</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemlx_1_1core_1_1fast.html#a1632b78950f0c8c31b24be7d80faeb39">mlx::core::fast::rope</a> (const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;x, int dims, bool traditional, std::optional&lt; float &gt; base, float scale, const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;offset, const std::optional&lt; <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &gt; &amp;freqs=std::nullopt, <a class="el" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s={})</td></tr>
<tr class="separator:a1632b78950f0c8c31b24be7d80faeb39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3663b50265b0a9c0cca2b5376852e059" id="r_a3663b50265b0a9c0cca2b5376852e059"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmlx_1_1core_1_1array.html">array</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemlx_1_1core_1_1fast.html#a3663b50265b0a9c0cca2b5376852e059">mlx::core::fast::scaled_dot_product_attention</a> (const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;queries, const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;keys, const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;values, const float scale, const std::optional&lt; <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &gt; &amp;mask=std::nullopt, const std::optional&lt; int &gt; memory_efficient_threshold=std::nullopt, <a class="el" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s={})</td></tr>
<tr class="memdesc:a3663b50265b0a9c0cca2b5376852e059"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes: O = softmax(Q @ K.T) @ V. <br /></td></tr>
<tr class="separator:a3663b50265b0a9c0cca2b5376852e059"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4207ab2eb838335c0074f6bbb6b4cfc5" id="r_a4207ab2eb838335c0074f6bbb6b4cfc5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmlx_1_1core_1_1array.html">array</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemlx_1_1core_1_1fast.html#a4207ab2eb838335c0074f6bbb6b4cfc5">mlx::core::fast::scaled_dot_product_attention</a> (const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;queries, const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;keys, const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;values, const float scale, const std::variant&lt; std::monostate, std::string, <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &gt; &amp;mask={}, const std::optional&lt; int &gt; memory_efficient_threshold=std::nullopt, <a class="el" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s={})</td></tr>
<tr class="memdesc:a4207ab2eb838335c0074f6bbb6b4cfc5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes: O = softmax(Q @ K.T) @ V. <br /></td></tr>
<tr class="separator:a4207ab2eb838335c0074f6bbb6b4cfc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4b5f6886b2288cb6dfdd8598579f080" id="r_aa4b5f6886b2288cb6dfdd8598579f080"><td class="memItemLeft" align="right" valign="top">std::tuple&lt; <a class="el" href="classmlx_1_1core_1_1array.html">array</a>, <a class="el" href="classmlx_1_1core_1_1array.html">array</a>, <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemlx_1_1core_1_1fast.html#aa4b5f6886b2288cb6dfdd8598579f080">mlx::core::fast::affine_quantize</a> (const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;w, int group_size=64, int bits=4, <a class="el" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s={})</td></tr>
<tr class="separator:aa4b5f6886b2288cb6dfdd8598579f080"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12c7ef41409d6fb378008e67b6fab328" id="r_a12c7ef41409d6fb378008e67b6fab328"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmlx_1_1core_1_1array.html">array</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemlx_1_1core_1_1fast.html#a12c7ef41409d6fb378008e67b6fab328">mlx::core::fast::affine_dequantize</a> (const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;w, const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;scales, const <a class="el" href="classmlx_1_1core_1_1array.html">array</a> &amp;biases, int group_size=64, int bits=4, <a class="el" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s={})</td></tr>