Skip to content

Commit

Permalink
build based on 5407329
Browse files Browse the repository at this point in the history
  • Loading branch information
Documenter.jl committed Sep 30, 2024
1 parent 49f73cb commit e20445d
Show file tree
Hide file tree
Showing 14 changed files with 28 additions and 28 deletions.
2 changes: 1 addition & 1 deletion dev/.documenter-siteinfo.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"documenter":{"julia_version":"1.10.5","generation_timestamp":"2024-09-24T23:09:29","documenter_version":"1.7.0"}}
{"documenter":{"julia_version":"1.10.5","generation_timestamp":"2024-09-30T07:10:24","documenter_version":"1.7.0"}}
2 changes: 1 addition & 1 deletion dev/api/index.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dev/devices/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dev/exceptions/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,4 @@
[4] synchronize()
@ AMDGPU ~/.julia/dev/AMDGPU/src/highlevel.jl:154
[5] top-level scope
@ REPL[5]:1</code></pre><p>Kernel-thrown exceptions are thrown during the host synchronization <a href="../streams/#AMDGPU.synchronize"><code>AMDGPU.synchronize</code></a> or on the next kernel launch.</p><p>Kernels that hit an exception will write its information into a pre-allocated host buffer. Once complete, the wavefront throwing the exception will lock the buffer to prevent other wavefronts from overwriting the exception and stop itself, but other wavefronts will continue executing.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../kernel_programming/">« Kernel Programming</a><a class="docs-footer-nextpage" href="../profiling/">Profiling »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="auto">Automatic (OS)</option><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="catppuccin-latte">catppuccin-latte</option><option value="catppuccin-frappe">catppuccin-frappe</option><option value="catppuccin-macchiato">catppuccin-macchiato</option><option value="catppuccin-mocha">catppuccin-mocha</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.7.0 on <span class="colophon-date" title="Tuesday 24 September 2024 23:09">Tuesday 24 September 2024</span>. Using Julia version 1.10.5.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
@ REPL[5]:1</code></pre><p>Kernel-thrown exceptions are thrown during the host synchronization <a href="../streams/#AMDGPU.synchronize"><code>AMDGPU.synchronize</code></a> or on the next kernel launch.</p><p>Kernels that hit an exception will write its information into a pre-allocated host buffer. Once complete, the wavefront throwing the exception will lock the buffer to prevent other wavefronts from overwriting the exception and stop itself, but other wavefronts will continue executing.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../kernel_programming/">« Kernel Programming</a><a class="docs-footer-nextpage" href="../profiling/">Profiling »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="auto">Automatic (OS)</option><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="catppuccin-latte">catppuccin-latte</option><option value="catppuccin-frappe">catppuccin-frappe</option><option value="catppuccin-macchiato">catppuccin-macchiato</option><option value="catppuccin-mocha">catppuccin-mocha</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.7.0 on <span class="colophon-date" title="Monday 30 September 2024 07:10">Monday 30 September 2024</span>. Using Julia version 1.10.5.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
2 changes: 1 addition & 1 deletion dev/execution_control/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dev/hostcall/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@
AMDGPU.synchronize(; stop_hostcalls=true) # Stop hostcall.
AMDGPU.Device.free!(hc) # Free hostcall buffers.

@assert Array(y)[1] ≈ 42f0</code></pre><p>In this example, <code>HostCallHolder</code> is used to create and launch <code>HostCall</code>. <code>HostCallHolder</code> contains the <code>HostCall</code> structure itself that is passed to kernel, a task that is spawned on creation and some additional info for controlling the lifetime of the task.</p><p>First argument is a function we want to execute when we call the hostcall. In this case we add <code>42f0</code> to input argument <code>x</code> and return the result.</p><p>Second and third arguments are the return type <code>Float32</code> and the tuple of types of input arguments <code>Tuple{Float32}</code>.</p><p><code>hostcall!</code> is used to execute the function on the host, wait on the result, and obtain the return values. At the moment, it is performed once per workgroup.</p><h2 id="Continuous-Host-Call"><a class="docs-heading-anchor" href="#Continuous-Host-Call">Continuous Host-Call</a><a id="Continuous-Host-Call-1"></a><a class="docs-heading-anchor-permalink" href="#Continuous-Host-Call" title="Permalink"></a></h2><p>By default, hostcalls can be used only once. After executing the function on the host, the task finishes and exits.</p><p>However, if you need your hostcall to live indefinitely, pass <code>continuous=true</code> keyword argument to <code>HostCallHolder(...; continuous=true)</code>.</p><p>To then stop the hostcall, call <code>Device.non_continuous!(hc)</code> or <code>Device.finish!(hc)</code> on the <code>HostCallHolder</code>.</p><p>The difference between them is that <code>non_continuous!</code> will allow calling hostcall one more time before exiting, while <code>finish!</code> will exit immediately.</p><p><code>finish!</code> can be used on any <code>HostCallHolder</code> to force-exit the running hostcall task.</p><h2 id="Free-hostcall-buffers"><a class="docs-heading-anchor" href="#Free-hostcall-buffers">Free hostcall buffers</a><a id="Free-hostcall-buffers-1"></a><a class="docs-heading-anchor-permalink" href="#Free-hostcall-buffers" title="Permalink"></a></h2><p>For custom hostcalls it is important to call <code>AMDGPU.Device.free!</code> once kernel has finished to free buffers that hostcall used in the process.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../memory/">« Memory</a><a class="docs-footer-nextpage" href="../execution_control/">Execution Control »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="auto">Automatic (OS)</option><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="catppuccin-latte">catppuccin-latte</option><option value="catppuccin-frappe">catppuccin-frappe</option><option value="catppuccin-macchiato">catppuccin-macchiato</option><option value="catppuccin-mocha">catppuccin-mocha</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.7.0 on <span class="colophon-date" title="Tuesday 24 September 2024 23:09">Tuesday 24 September 2024</span>. Using Julia version 1.10.5.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
@assert Array(y)[1] ≈ 42f0</code></pre><p>In this example, <code>HostCallHolder</code> is used to create and launch <code>HostCall</code>. <code>HostCallHolder</code> contains the <code>HostCall</code> structure itself that is passed to kernel, a task that is spawned on creation and some additional info for controlling the lifetime of the task.</p><p>First argument is a function we want to execute when we call the hostcall. In this case we add <code>42f0</code> to input argument <code>x</code> and return the result.</p><p>Second and third arguments are the return type <code>Float32</code> and the tuple of types of input arguments <code>Tuple{Float32}</code>.</p><p><code>hostcall!</code> is used to execute the function on the host, wait on the result, and obtain the return values. At the moment, it is performed once per workgroup.</p><h2 id="Continuous-Host-Call"><a class="docs-heading-anchor" href="#Continuous-Host-Call">Continuous Host-Call</a><a id="Continuous-Host-Call-1"></a><a class="docs-heading-anchor-permalink" href="#Continuous-Host-Call" title="Permalink"></a></h2><p>By default, hostcalls can be used only once. After executing the function on the host, the task finishes and exits.</p><p>However, if you need your hostcall to live indefinitely, pass <code>continuous=true</code> keyword argument to <code>HostCallHolder(...; continuous=true)</code>.</p><p>To then stop the hostcall, call <code>Device.non_continuous!(hc)</code> or <code>Device.finish!(hc)</code> on the <code>HostCallHolder</code>.</p><p>The difference between them is that <code>non_continuous!</code> will allow calling hostcall one more time before exiting, while <code>finish!</code> will exit immediately.</p><p><code>finish!</code> can be used on any <code>HostCallHolder</code> to force-exit the running hostcall task.</p><h2 id="Free-hostcall-buffers"><a class="docs-heading-anchor" href="#Free-hostcall-buffers">Free hostcall buffers</a><a id="Free-hostcall-buffers-1"></a><a class="docs-heading-anchor-permalink" href="#Free-hostcall-buffers" title="Permalink"></a></h2><p>For custom hostcalls it is important to call <code>AMDGPU.Device.free!</code> once kernel has finished to free buffers that hostcall used in the process.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../memory/">« Memory</a><a class="docs-footer-nextpage" href="../execution_control/">Execution Control »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="auto">Automatic (OS)</option><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="catppuccin-latte">catppuccin-latte</option><option value="catppuccin-frappe">catppuccin-frappe</option><option value="catppuccin-macchiato">catppuccin-macchiato</option><option value="catppuccin-mocha">catppuccin-mocha</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.7.0 on <span class="colophon-date" title="Monday 30 September 2024 07:10">Monday 30 September 2024</span>. Using Julia version 1.10.5.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
2 changes: 1 addition & 1 deletion dev/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@
# Default is &quot;none&quot;, which does not apply any limitation.
hard_memory_limit = &quot;none&quot;
# Notice a space between the value and percentage sign.
# hard_memory_limit = &quot;80 %&quot;</code></pre></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="quickstart/">Quick Start »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="auto">Automatic (OS)</option><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="catppuccin-latte">catppuccin-latte</option><option value="catppuccin-frappe">catppuccin-frappe</option><option value="catppuccin-macchiato">catppuccin-macchiato</option><option value="catppuccin-mocha">catppuccin-mocha</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.7.0 on <span class="colophon-date" title="Tuesday 24 September 2024 23:09">Tuesday 24 September 2024</span>. Using Julia version 1.10.5.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
# hard_memory_limit = &quot;80 %&quot;</code></pre></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="quickstart/">Quick Start »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="auto">Automatic (OS)</option><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="catppuccin-latte">catppuccin-latte</option><option value="catppuccin-frappe">catppuccin-frappe</option><option value="catppuccin-macchiato">catppuccin-macchiato</option><option value="catppuccin-mocha">catppuccin-mocha</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.7.0 on <span class="colophon-date" title="Monday 30 September 2024 07:10">Monday 30 September 2024</span>. Using Julia version 1.10.5.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Loading

0 comments on commit e20445d

Please sign in to comment.