Files
triton/master/.doctrees/getting-started/tutorials/index.doctree

50 lines
19 KiB
Plaintext
Raw Normal View History

2022-07-14 07:22:19 +00:00
<EFBFBD><05>bK<00>sphinx.addnodes<65><73>document<6E><74><EFBFBD>)<29><>}<7D>(<28> rawsource<63><65><00><>children<65>]<5D>(<28>docutils.nodes<65><73>target<65><74><EFBFBD>)<29><>}<7D>(h<05>'.. _sphx_glr_getting-started_tutorials:<3A>h]<5D><>
2022-06-05 21:05:02 +00:00
attributes<EFBFBD>}<7D>(<28>ids<64>]<5D><>classes<65>]<5D><>names<65>]<5D><>dupnames<65>]<5D><>backrefs<66>]<5D><>refid<69><64>"sphx-glr-getting-started-tutorials<6C>u<EFBFBD>tagname<6D>h
2022-08-22 00:50:12 +00:00
<EFBFBD>line<6E>K<05>parent<6E>hhh<03>source<63><65>b/tmp/tmpnr15x0cb/7394d732adcec5a67034926a28080af2a7853217/docs/getting-started/tutorials/index.rst<73>ubh <09>section<6F><6E><EFBFBD>)<29><>}<7D>(hhh]<5D>(h <09>title<6C><65><EFBFBD>)<29><>}<7D>(h<05> Tutorials<6C>h]<5D>h <09>Text<78><74><EFBFBD><EFBFBD> Tutorials<6C><73><EFBFBD><EFBFBD><EFBFBD>}<7D>(hh,h h*hhh!NhNubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh(h h%hhh!h"hKubh <09> paragraph<70><68><EFBFBD>)<29><>}<7D>(h<05><>Below is a gallery of tutorials for writing various basic operations with Triton. It is recommended that you read through the tutorials in order, starting with the simplest one.<2E>h]<5D>h/<2F><>Below is a gallery of tutorials for writing various basic operations with Triton. It is recommended that you read through the tutorials in order, starting with the simplest one.<2E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hh>h h<hhh!NhNubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh:h!h"hK
2022-06-05 21:05:02 +00:00
h h%hhubh;)<29><>}<7D>(h<05>.To install the dependencies for the tutorials:<3A>h]<5D>h/<2F>.To install the dependencies for the tutorials:<3A><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhLh hJhhh!NhNubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh:h!h"hK h h%hhubh <09> literal_block<63><6B><EFBFBD>)<29><>}<7D>(h<05>.cd triton
pip install -e './python[tutorials]'<27>h]<5D>h/<2F>.cd triton
pip install -e './python[tutorials]'<27><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh hZubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><> xml:space<63><65>preserve<76><65>force<63><65><EFBFBD>language<67><65>bash<73><68>highlight_args<67>}<7D>uhhXh!h"hKh h%hhubh <09>raw<61><77><EFBFBD>)<29><>}<7D>(h<05><><div class="sphx-glr-thumbcontainer" tooltip="- The basic programming model of Triton - The triton.jit decorator, which is used to define Tri..."><3E>h]<5D>h/<2F><><div class="sphx-glr-thumbcontainer" tooltip="- The basic programming model of Triton - The triton.jit decorator, which is used to define Tri..."><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh hqubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hKh h%hhubh<00>only<6C><79><EFBFBD>)<29><>}<7D>(hhh]<5D>h <09>figure<72><65><EFBFBD>)<29><>}<7D>(hhh]<5D>(h <09>image<67><65><EFBFBD>)<29><>}<7D>(h<05><>.. figure:: /getting-started/tutorials/images/thumb/sphx_glr_01-vector-add_thumb.png
:alt: Vector Addition
:ref:`sphx_glr_getting-started_tutorials_01-vector-add.py`<60>h]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>alt<6C><74>Vector Addition<6F><6E>uri<72><69>Ggetting-started/tutorials/images/thumb/sphx_glr_01-vector-add_thumb.png<6E><67>
candidates<EFBFBD>}<7D><>*<2A>h<EFBFBD>suhh<>h h<>h!h"hKubh <09>caption<6F><6E><EFBFBD>)<29><>}<7D>(h<05>::ref:`sphx_glr_getting-started_tutorials_01-vector-add.py`<60>h]<5D>h<00> pending_xref<65><66><EFBFBD>)<29><>}<7D>(hh<>h]<5D>h <09>inline<6E><65><EFBFBD>)<29><>}<7D>(hh<>h]<5D>h/<2F>3sphx_glr_getting-started_tutorials_01-vector-add.py<70><79><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh h<>ubah}<7D>(h]<5D>h]<5D>(<28>xref<65><66>std<74><64>std-ref<65>eh]<5D>h]<5D>h]<5D>uhh<>h h<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F><63>getting-started/tutorials/index<65><78> refdomain<69>h<EFBFBD><68>reftype<70><65>ref<65><66> refexplicit<69><74><EFBFBD>refwarn<72><6E><EFBFBD> reftarget<65><74>3sphx_glr_getting-started_tutorials_01-vector-add.py<70>uhh<>h!h"hKh h<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh<>h!h"hKh h<>ubeh}<7D>(h]<5D><>id1<64>ah]<5D>h]<5D>h]<5D>h]<5D>uhh<>hKh h<>hhh!h"ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>expr<70><72>html<6D>uhh<>hhh!h"hKh h%ubhp)<29><>}<7D>(h<05></div><3E>h]<5D>h/<2F></div><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh h<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK h h%hhubh <09>compound<6E><64><EFBFBD>)<29><>}<7D>(hhh]<5D>h<00>toctree<65><65><EFBFBD>)<29><>}<7D>(hhh]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>h hŒentries<65>]<5D>N<EFBFBD>'getting-started/tutorials/01-vector-add<64><64><EFBFBD>a<EFBFBD> includefiles<65>]<5D>ja<>maxdepth<74>J<EFBFBD><4A><EFBFBD><EFBFBD>h<EFBFBD>N<EFBFBD>glob<6F><62><EFBFBD>hidden<65><6E><EFBFBD> includehidden<65><6E><EFBFBD>numbered<65>K<00>
titlesonly<EFBFBD><EFBFBD><EFBFBD>
rawentries<EFBFBD>]<5D>uhh<>h!h"hK%h h<>ubah}<7D>(h]<5D>h]<5D><>toctree-wrapper<65>ah]<5D>h]<5D>h]<5D>uhh<>h h%hhh!h"hNubhp)<29><>}<7D>(h<05><><div class="sphx-glr-thumbcontainer" tooltip="- The benefits of kernel fusion for bandwidth-bound operations. - Reduction operators in Triton..."><3E>h]<5D>h/<2F><><div class="sphx-glr-thumbcontainer" tooltip="- The benefits of kernel fusion for bandwidth-bound operations. - Reduction operators in Triton..."><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh jubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK*h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>(h<>)<29><>}<7D>(h<05><>.. figure:: /getting-started/tutorials/images/thumb/sphx_glr_02-fused-softmax_thumb.png
:alt: Fused Softmax
:ref:`sphx_glr_getting-started_tutorials_02-fused-softmax.py`<60>h]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>alt<6C><74> Fused Softmax<61><78>uri<72><69>Jgetting-started/tutorials/images/thumb/sphx_glr_02-fused-softmax_thumb.png<6E>h<EFBFBD>}<7D>h<EFBFBD>j7suhh<>h j'h!h"hK3ubh<62>)<29><>}<7D>(h<05>=:ref:`sphx_glr_getting-started_tutorials_02-fused-softmax.py`<60>h]<5D>h<EFBFBD>)<29><>}<7D>(hj;h]<5D>h<EFBFBD>)<29><>}<7D>(hj;h]<5D>h/<2F>6sphx_glr_getting-started_tutorials_02-fused-softmax.py<70><79><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j@ubah}<7D>(h]<5D>h]<5D>(h<><68>std<74><64>std-ref<65>eh]<5D>h]<5D>h]<5D>uhh<>h j=ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F>hŒ refdomain<69>jJ<00>reftype<70><65>ref<65><66> refexplicit<69><74><EFBFBD>refwarn<72><6E>hȌ6sphx_glr_getting-started_tutorials_02-fused-softmax.py<70>uhh<>h!h"hK3h j9ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh<>h!h"hK3h j'ubeh}<7D>(h]<5D><>id2<64>ah]<5D>h]<5D>h]<5D>h]<5D>uhh<>hK3h j$hhh!h"ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>html<6D>uhh<>hhh!h"hK.h h%ubhp)<29><>}<7D>(h<05></div><3E>h]<5D>h/<2F></div><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh jpubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK5h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>h h<>h<EFBFBD>]<5D>N<EFBFBD>*getting-started/tutorials/02-fused-softmax<61><78><EFBFBD>aj]<5D>j<EFBFBD>ajJ<><4A><EFBFBD><EFBFBD>h<EFBFBD>Nj<00>j<00>j<00>j Kj
<00>j ]<5D>uhh<>h!h"hK:h j<>ubah}<7D>(h]<5D>h]<5D>jah]<5D>h]<5D>h]<5D>uhh<>h h%hhh!h"hNubhp)<29><>}<7D>(h<05><><div class="sphx-glr-thumbcontainer" tooltip="- Block-level matrix multiplications - Multi-dimensional pointer arithmetic - Program re-orderi..."><3E>h]<5D>h/<2F><><div class="sphx-glr-thumbcontainer" tooltip="- Block-level matrix multiplications - Multi-dimensional pointer arithmetic - Program re-orderi..."><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK?h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>(h<>)<29><>}<7D>(h<05><>.. figure:: /getting-started/tutorials/images/thumb/sphx_glr_03-matrix-multiplication_thumb.png
:alt: Matrix Multiplication
:ref:`sphx_glr_getting-started_tutorials_03-matrix-multiplication.py`<60>h]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>alt<6C><74>Matrix Multiplication<6F><6E>uri<72><69>Rgetting-started/tutorials/images/thumb/sphx_glr_03-matrix-multiplication_thumb.png<6E>h<EFBFBD>}<7D>h<EFBFBD>j<EFBFBD>suhh<>h j<>h!h"hKHubh<62>)<29><>}<7D>(h<05>E:ref:`sphx_glr_getting-started_tutorials_03-matrix-multiplication.py`<60>h]<5D>h<EFBFBD>)<29><>}<7D>(hj<>h]<5D>h<EFBFBD>)<29><>}<7D>(hj<>h]<5D>h/<2F>>sphx_glr_getting-started_tutorials_03-matrix-multiplication.py<70><79><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>(h<><68>std<74><64>std-ref<65>eh]<5D>h]<5D>h]<5D>uhh<>h j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F>hŒ refdomain<69>j<EFBFBD><00>reftype<70><65>ref<65><66> refexplicit<69><74><EFBFBD>refwarn<72><6E>hȌ>sphx_glr_getting-started_tutorials_03-matrix-multiplication.py<70>uhh<>h!h"hKHh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh<>h!h"hKHh j<>ubeh}<7D>(h]<5D><>id3<64>ah]<5D>h]<5D>h]<5D>h]<5D>uhh<>hKHh j<>hhh!h"ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>html<6D>uhh<>hhh!h"hKCh h%ubhp)<29><>}<7D>(h<05></div><3E>h]<5D>h/<2F></div><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hKJh h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>h h<>h<EFBFBD>]<5D>N<EFBFBD>2getting-started/tutorials/03-matrix-multiplication<6F><6E><EFBFBD>aj]<5D>jajJ<><4A><EFBFBD><EFBFBD>h<EFBFBD>Nj<00>j<00>j<00>j Kj
<00>j ]<5D>uhh<>h!h"hKOh jubah}<7D>(h]<5D>h]<5D>jah]<5D>h]<5D>h]<5D>uhh<>h h%hhh!h"hNubhp)<29><>}<7D>(h<05><><div class="sphx-glr-thumbcontainer" tooltip="In this tutorial, you will write a memory-efficient implementation of dropout whose state will ..."><3E>h]<5D>h/<2F><><div class="sphx-glr-thumbcontainer" tooltip="In this tutorial, you will write a memory-efficient implementation of dropout whose state will ..."><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh jubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hKTh h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>(h<>)<29><>}<7D>(h<05><>.. figure:: /getting-started/tutorials/images/thumb/sphx_glr_04-low-memory-dropout_thumb.png
:alt: Low-Memory Dropout
:ref:`sphx_glr_getting-started_tutorials_04-low-memory-dropout.py`<60>h]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>alt<6C><74>Low-Memory Dropout<75><74>uri<72><69>Ogetting-started/tutorials/images/thumb/sphx_glr_04-low-memory-dropout_thumb.png<6E>h<EFBFBD>}<7D>h<EFBFBD>j=suhh<>h j-h!h"hK]ubh<62>)<29><>}<7D>(h<05>B:ref:`sphx_glr_getting-started_tutorials_04-low-memory-dropout.py`<60>h]<5D>h<EFBFBD>)<29><>}<7D>(hjAh]<5D>h<EFBFBD>)<29><>}<7D>(hjAh]<5D>h/<2F>;sphx_glr_getting-started_tutorials_04-low-memory-dropout.py<70><79><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh jFubah}<7D>(h]<5D>h]<5D>(h<><68>std<74><64>std-ref<65>eh]<5D>h]<5D>h]<5D>uhh<>h jCubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F>hŒ refdomain<69>jP<00>reftype<70><65>ref<65><66> refexplicit<69><74><EFBFBD>refwarn<72><6E>hȌ;sphx_glr_getting-started_tutorials_04-low-memory-dropout.py<70>uhh<>h!h"hK]h j?ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh<>h!h"hK]h j-ubeh}<7D>(h]<5D><>id4<64>ah]<5D>h]<5D>h]<5D>h]<5D>uhh<>hK]h j*hhh!h"ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>html<6D>uhh<>hhh!h"hKXh h%ubhp)<29><>}<7D>(h<05></div><3E>h]<5D>h/<2F></div><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh jvubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK_h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>h h<>h<EFBFBD>]<5D>N<EFBFBD>/getting-started/tutorials/04-low-memory-dropout<75><74><EFBFBD>aj]<5D>j<EFBFBD>ajJ<><4A><EFBFBD><EFBFBD>h<EFBFBD>Nj<00>j<00>j<00>j Kj
<00>j ]<5D>uhh<>h!h"hKdh j<>ubah}<7D>(h]<5D>h]<5D>jah]<5D>h]<5D>h]<5D>uhh<>h h%hhh!h"hNubhp)<29><>}<7D>(h<05>C<div class="sphx-glr-thumbcontainer" tooltip="Layer Normalization"><3E>h]<5D>h/<2F>C<div class="sphx-glr-thumbcontainer" tooltip="Layer Normalization"><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hKih h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>(h<>)<29><>}<7D>(h<05><>.. figure:: /getting-started/tutorials/images/thumb/sphx_glr_05-layer-norm_thumb.png
:alt: Layer Normalization
:ref:`sphx_glr_getting-started_tutorials_05-layer-norm.py`<60>h]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>alt<6C><74>Layer Normalization<6F><6E>uri<72><69>Ggetting-started/tutorials/images/thumb/sphx_glr_05-layer-norm_thumb.png<6E>h<EFBFBD>}<7D>h<EFBFBD>j<EFBFBD>suhh<>h j<>h!h"hKrubh<62>)<29><>}<7D>(h<05>::ref:`sphx_glr_getting-started_tutorials_05-layer-norm.py`<60>h]<5D>h<EFBFBD>)<29><>}<7D>(hj<>h]<5D>h<EFBFBD>)<29><>}<7D>(hj<>h]<5D>h/<2F>3sphx_glr_getting-started_tutorials_05-layer-norm.py<70><79><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>(h<><68>std<74><64>std-ref<65>eh]<5D>h]<5D>h]<5D>uhh<>h j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F>hŒ refdomain<69>j<EFBFBD><00>reftype<70><65>ref<65><66> refexplicit<69><74><EFBFBD>refwarn<72><6E>hȌ3sphx_glr_getting-started_tutorials_05-layer-norm.py<70>uhh<>h!h"hKrh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh<>h!h"hKrh j<>ubeh}<7D>(h]<5D><>id5<64>ah]<5D>h]<5D>h]<5D>h]<5D>uhh<>hKrh j<>hhh!h"ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>html<6D>uhh<>hhh!h"hKmh h%ubhp)<29><>}<7D>(h<05></div><3E>h]<5D>h/<2F></div><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hKth h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>h h<>h<EFBFBD>]<5D>N<EFBFBD>'getting-started/tutorials/05-layer-norm<72><6D><EFBFBD>aj]<5D>jajJ<><4A><EFBFBD><EFBFBD>h<EFBFBD>Nj<00>j<00>j<00>j Kj
2022-07-14 07:22:19 +00:00
<00>j ]<5D>uhh<>h!h"hKyh j ubah}<7D>(h]<5D>h]<5D>jah]<5D>h]<5D>h]<5D>uhh<>h h%hhh!h"hNubhp)<29><>}<7D>(h<05>?<div class="sphx-glr-thumbcontainer" tooltip="Fused Attention"><3E>h]<5D>h/<2F>?<div class="sphx-glr-thumbcontainer" tooltip="Fused Attention"><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK~h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>(h<>)<29><>}<7D>(h<05><>.. figure:: /getting-started/tutorials/images/thumb/sphx_glr_06-fused-attention_thumb.png
:alt: Fused Attention
:ref:`sphx_glr_getting-started_tutorials_06-fused-attention.py`<60>h]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>alt<6C><74>Fused Attention<6F><6E>uri<72><69>Lgetting-started/tutorials/images/thumb/sphx_glr_06-fused-attention_thumb.png<6E>h<EFBFBD>}<7D>h<EFBFBD>jCsuhh<>h j3h!h"hK<>ubh<62>)<29><>}<7D>(h<05>?:ref:`sphx_glr_getting-started_tutorials_06-fused-attention.py`<60>h]<5D>h<EFBFBD>)<29><>}<7D>(hjGh]<5D>h<EFBFBD>)<29><>}<7D>(hjGh]<5D>h/<2F>8sphx_glr_getting-started_tutorials_06-fused-attention.py<70><79><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh jLubah}<7D>(h]<5D>h]<5D>(h<><68>std<74><64>std-ref<65>eh]<5D>h]<5D>h]<5D>uhh<>h jIubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F>hŒ refdomain<69>jV<00>reftype<70><65>ref<65><66> refexplicit<69><74><EFBFBD>refwarn<72><6E>hȌ8sphx_glr_getting-started_tutorials_06-fused-attention.py<70>uhh<>h!h"hK<>h jEubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh<>h!h"hK<>h j3ubeh}<7D>(h]<5D><>id6<64>ah]<5D>h]<5D>h]<5D>h]<5D>uhh<>hK<>h j0hhh!h"ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>html<6D>uhh<>hhh!h"hK<>h h%ubhp)<29><>}<7D>(h<05></div><3E>h]<5D>h/<2F></div><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j|ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK<>h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>h h<>h<EFBFBD>]<5D>N<EFBFBD>,getting-started/tutorials/06-fused-attention<6F><6E><EFBFBD>aj]<5D>j<EFBFBD>ajJ<><4A><EFBFBD><EFBFBD>h<EFBFBD>Nj<00>j<00>j<00>j Kj
<00>j ]<5D>uhh<>h!h"hK<>h j<>ubah}<7D>(h]<5D>h]<5D>jah]<5D>h]<5D>h]<5D>uhh<>h h%hhh!h"hNubhp)<29><>}<7D>(h<05><><div class="sphx-glr-thumbcontainer" tooltip="In trition/language/libdevice.py, we try to aggregate functions with the same computation but d..."><3E>h]<5D>h/<2F><><div class="sphx-glr-thumbcontainer" tooltip="In trition/language/libdevice.py, we try to aggregate functions with the same computation but d..."><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK<>h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>(h<>)<29><>}<7D>(h<05><>.. figure:: /getting-started/tutorials/images/thumb/sphx_glr_07-libdevice-function_thumb.png
:alt: Libdevice function
:ref:`sphx_glr_getting-started_tutorials_07-libdevice-function.py`<60>h]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>alt<6C><74>Libdevice function<6F><6E>uri<72><69>Ogetting-started/tutorials/images/thumb/sphx_glr_07-libdevice-function_thumb.png<6E>h<EFBFBD>}<7D>h<EFBFBD>j<EFBFBD>suhh<>h j<>h!h"hK<>ubh<62>)<29><>}<7D>(h<05>B:ref:`sphx_glr_getting-started_tutorials_07-libdevice-function.py`<60>h]<5D>h<EFBFBD>)<29><>}<7D>(hj<>h]<5D>h<EFBFBD>)<29><>}<7D>(hj<>h]<5D>h/<2F>;sphx_glr_getting-started_tutorials_07-libdevice-function.py<70><79><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>(h<><68>std<74><64>std-ref<65>eh]<5D>h]<5D>h]<5D>uhh<>h j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F>hŒ refdomain<69>j<EFBFBD><00>reftype<70><65>ref<65><66> refexplicit<69><74><EFBFBD>refwarn<72><6E>hȌ;sphx_glr_getting-started_tutorials_07-libdevice-function.py<70>uhh<>h!h"hK<>h j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh<>h!h"hK<>h j<>ubeh}<7D>(h]<5D><>id7<64>ah]<5D>h]<5D>h]<5D>h]<5D>uhh<>hK<>h j<>hhh!h"ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>html<6D>uhh<>hhh!h"hK<>h h%ubhp)<29><>}<7D>(h<05></div><3E>h]<5D>h/<2F></div><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK<>h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h<EFBFBD>)<29><>}<7D>(hhh]<5D>h}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>h h<>h<EFBFBD>]<5D>N<EFBFBD>/getting-started/tutorials/07-libdevice-function<6F><6E><EFBFBD>aj]<5D>jajJ<><4A><EFBFBD><EFBFBD>h<EFBFBD>Nj<00>j<00>j<00>j Kj
<00>j ]<5D>uhh<>h!h"hK<>h jubah}<7D>(h]<5D>h]<5D>jah]<5D>h]<5D>h]<5D>uhh<>h h%hhh!h"hNubhp)<29><>}<7D>(h<05>"<div class="sphx-glr-clear"></div><3E>h]<5D>h/<2F>"<div class="sphx-glr-clear"></div><3E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j&ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>format<61><74>html<6D>hhhiuhhoh!h"hK<>h h%hhubh<62>)<29><>}<7D>(hhh]<5D>h <09> container<65><72><EFBFBD>)<29><>}<7D>(hX~.. container:: sphx-glr-download sphx-glr-download-python
2022-06-05 21:05:02 +00:00
:download:`Download all examples in Python source code: tutorials_python.zip </getting-started/tutorials/tutorials_python.zip>`
.. container:: sphx-glr-download sphx-glr-download-jupyter
2022-07-14 07:22:19 +00:00
:download:`Download all examples in Jupyter notebooks: tutorials_jupyter.zip </getting-started/tutorials/tutorials_jupyter.zip>`<60>h]<5D>(j:)<29><>}<7D>(h<05>:download:`Download all examples in Python source code: tutorials_python.zip </getting-started/tutorials/tutorials_python.zip>`<60>h]<5D>h;)<29><>}<7D>(hjAh]<5D>h<00>download_reference<63><65><EFBFBD>)<29><>}<7D>(hjAh]<5D>h <09>literal<61><6C><EFBFBD>)<29><>}<7D>(hjAh]<5D>h/<2F>ADownload all examples in Python source code: tutorials_python.zip<69><70><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh jMubah}<7D>(h]<5D>h]<5D>(h<><68>download<61>eh]<5D>h]<5D>h]<5D>uhjKh jHubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F>hŒ refdomain<69>h<06>reftype<70>jW<00> refexplicit<69><74><EFBFBD>refwarn<72><6E>hȌ//getting-started/tutorials/tutorials_python.zip<69><70>filename<6D><65>5763344228ae6bc253ed1a6cf586aa30d/tutorials_python.zip<69>uhjFh!h"hK<>h jCubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh:h!h"hK<>h j?ubah}<7D>(h]<5D>h]<5D>(<28>sphx-glr-download<61><64>sphx-glr-download-python<6F>eh]<5D>h]<5D>h]<5D>uhj9h j;ubj:)<29><>}<7D>(h<05><>:download:`Download all examples in Jupyter notebooks: tutorials_jupyter.zip </getting-started/tutorials/tutorials_jupyter.zip>`<60>h]<5D>h;)<29><>}<7D>(hjyh]<5D>jG)<29><>}<7D>(hjyh]<5D>jL)<29><>}<7D>(hjyh]<5D>h/<2F>ADownload all examples in Jupyter notebooks: tutorials_jupyter.zip<69><70><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>(h<><68>download<61>eh]<5D>h]<5D>h]<5D>uhjKh j~ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>refdoc<6F>hŒ refdomain<69>h<06>reftype<70>j<EFBFBD><00> refexplicit<69><74><EFBFBD>refwarn<72><6E>hȌ0/getting-started/tutorials/tutorials_jupyter.zip<69>jg<00>6662999063954282841dc90b8945f85ce/tutorials_jupyter.zip<69>uhjFh!h"hK<>h j{ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh:h!h"hK<>h jwubah}<7D>(h]<5D>h]<5D>(<28>sphx-glr-download<61><64>sphx-glr-download-jupyter<65>eh]<5D>h]<5D>h]<5D>uhj9h j;ubeh}<7D>(h]<5D>h]<5D>(<28>sphx-glr-footer<65><72>class<73><73>sphx-glr-footer-gallery<72>eh]<5D>h]<5D>h]<5D>uhj9h j6hhh!NhNubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>html<6D>uhh<>hhh!h"hK<>h h%ubh<62>)<29><>}<7D>(hhh]<5D>h;)<29><>}<7D>(h<05>I`Gallery generated by Sphinx-Gallery <https://sphinx-gallery.github.io>`_<>h]<5D>(h <09> reference<63><65><EFBFBD>)<29><>}<7D>(hj<>h]<5D>h/<2F>#Gallery generated by Sphinx-Gallery<72><79><EFBFBD><EFBFBD><EFBFBD>}<7D>(h<05>#Gallery generated by Sphinx-Gallery<72>h j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>name<6D><65>#Gallery generated by Sphinx-Gallery<72><79>refuri<72><69> https://sphinx-gallery.github.io<69>uhj<>h j<>ubh )<29><>}<7D>(h<05># <https://sphinx-gallery.github.io><3E>h]<5D>h}<7D>(h]<5D><>#gallery-generated-by-sphinx-gallery<72>ah]<5D>h]<5D><>#gallery generated by sphinx-gallery<72>ah]<5D>h]<5D><>refuri<72>j<EFBFBD>uhh
2022-06-05 21:05:02 +00:00
<EFBFBD>
2022-07-14 07:22:19 +00:00
referenced<EFBFBD>Kh j<>ubeh}<7D>(h]<5D>h]<5D><>sphx-glr-signature<72>ah]<5D>h]<5D>h]<5D>uhh:h!h"hK<>h j<>hhubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>html<6D>uhh<>hhh!h"hK<>h h%ubeh}<7D>(h]<5D>(<28> tutorials<6C>heh]<5D>h]<5D>(<28> tutorials<6C><73>"sphx_glr_getting-started_tutorials<6C>eh]<5D>h]<5D>uhh#h hhhh!h"hK<08>expect_referenced_by_name<6D>}<7D>j<EFBFBD>h s<>expect_referenced_by_id<69>}<7D>hh subeh}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>source<63>h"uhh<01>current_source<63>N<EFBFBD> current_line<6E>N<EFBFBD>settings<67><73>docutils.frontend<6E><64>Values<65><73><EFBFBD>)<29><>}<7D>(h(N<> generator<6F>N<EFBFBD> datestamp<6D>N<EFBFBD> source_link<6E>N<EFBFBD>
2022-06-05 21:05:02 +00:00
source_url<EFBFBD>N<EFBFBD> toc_backlinks<6B><73>entry<72><79>footnote_backlinks<6B>K<01> sectnum_xform<72>K<01>strip_comments<74>N<EFBFBD>strip_elements_with_classes<65>N<EFBFBD> strip_classes<65>N<EFBFBD> report_level<65>K<02>
2022-07-14 07:22:19 +00:00
halt_level<EFBFBD>K<05>exit_status_level<65>K<05>debug<75>N<EFBFBD>warning_stream<61>N<EFBFBD> traceback<63><6B><EFBFBD>input_encoding<6E><67> utf-8-sig<69><67>input_encoding_error_handler<65><72>strict<63><74>output_encoding<6E><67>utf-8<><38>output_encoding_error_handler<65>j!<00>error_encoding<6E><67>utf-8<><38>error_encoding_error_handler<65><72>backslashreplace<63><65> language_code<64><65>en<65><6E>record_dependencies<65>N<EFBFBD>config<69>N<EFBFBD> id_prefix<69>h<06>auto_id_prefix<69><78>id<69><64> dump_settings<67>N<EFBFBD>dump_internals<6C>N<EFBFBD>dump_transforms<6D>N<EFBFBD>dump_pseudo_xml<6D>N<EFBFBD>expose_internals<6C>N<EFBFBD>strict_visitor<6F>N<EFBFBD>_disable_config<69>N<EFBFBD>_source<63>h"<22> _destination<6F>N<EFBFBD> _config_files<65>]<5D><>pep_references<65>N<EFBFBD> pep_base_url<72><6C> https://www.python.org/dev/peps/<2F><>pep_file_url_template<74><65>pep-%04d<34><64>rfc_references<65>N<EFBFBD> rfc_base_url<72><6C>https://tools.ietf.org/html/<2F><> tab_width<74>K<08>trim_footnote_reference_space<63><65><EFBFBD>file_insertion_enabled<65><64><EFBFBD> raw_enabled<65>K<01>syntax_highlight<68><74>long<6E><67> smart_quotes<65><73><EFBFBD>smartquotes_locales<65>]<5D><>character_level_inline_markup<75><70><EFBFBD>doctitle_xform<72><6D><EFBFBD> docinfo_xform<72>K<01>sectsubtitle_xform<72><6D><EFBFBD>embed_stylesheet<65><74><EFBFBD>cloak_email_addresses<65><73><EFBFBD>env<6E>Nub<75>reporter<65>N<EFBFBD>indirect_targets<74>]<5D><>substitution_defs<66>}<7D><>substitution_names<65>}<7D><>refnames<65>}<7D><>refids<64>}<7D>h]<5D>h as<61>nameids<64>}<7D>(j<>hj<>j<>j<>j<>u<> nametypes<65>}<7D>(j<><00>j<EFBFBD>Nj<4E><00>uh}<7D>(hh%j<>h%j<>j<>h<>h<EFBFBD>jdj'j<>j<>jjj-j<>j<>jpj3j<>j<>u<> footnote_refs<66>}<7D><> citation_refs<66>}<7D><> autofootnotes<65>]<5D><>autofootnote_refs<66>]<5D><>symbol_footnotes<65>]<5D><>symbol_footnote_refs<66>]<5D><> footnotes<65>]<5D><> citations<6E>]<5D><>autofootnote_start<72>K<01>symbol_footnote_start<72>K<00>
id_counter<EFBFBD><EFBFBD> collections<6E><73>Counter<65><72><EFBFBD>}<7D>j/Ks<><73>R<EFBFBD><52>parse_messages<65>]<5D><>transform_messages<65>]<5D>h <09>system_message<67><65><EFBFBD>)<29><>}<7D>(hhh]<5D>h;)<29><>}<7D>(hhh]<5D>h/<2F>HHyperlink target "sphx-glr-getting-started-tutorials" is not referenced.<2E><><EFBFBD><EFBFBD><EFBFBD>}<7D>(hhh j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D>uhh:h j<>ubah}<7D>(h]<5D>h]<5D>h]<5D>h]<5D>h]<5D><>level<65>K<01>type<70><65>INFO<46><4F>source<63>h"<22>line<6E>Kuhj<>uba<62> transformer<65>N<EFBFBD>
2022-06-05 21:05:02 +00:00
decoration<EFBFBD>Nhhub.