Skip to content

Commit

Permalink
build based on 14764bd
Browse files Browse the repository at this point in the history
  • Loading branch information
Documenter.jl committed Sep 4, 2023
1 parent 6089427 commit cdb3a4e
Show file tree
Hide file tree
Showing 19 changed files with 1,596 additions and 0 deletions.
71 changes: 71 additions & 0 deletions previews/PR99/api/array/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>MoYeArray · MoYe.jl</title><script data-outdated-warner src="../../assets/warner.js"></script><link rel="canonical" href="https://YichengDWu.github.io/MoYe.jl/api/array/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.045/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../../">MoYe.jl</a></span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><span class="tocitem">Manual</span><ul><li><a class="tocitem" href="../../manual/layout/">Layout</a></li><li><a class="tocitem" href="../../manual/array/">Array</a></li><li><a class="tocitem" href="../../manual/broadcast/">Broadcasting</a></li><li><a class="tocitem" href="../../manual/tiling_matmul/">MatMul</a></li><li><input class="collapse-toggle" id="menuitem-2-5" type="checkbox"/><label class="tocitem" for="menuitem-2-5"><span class="docs-label">Data Movement</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../../manual/datamovement/gs/">Global Memory &amp; Shared Memory</a></li></ul></li></ul></li><li><span class="tocitem">API Reference</span><ul><li><a class="tocitem" href="../layout/">Layout</a></li><li class="is-active"><a class="tocitem" href>MoYeArray</a><ul class="internal"><li><a class="tocitem" href="#MoYeArray"><span>MoYeArray</span></a></li><li><a class="tocitem" href="#Index"><span>Index</span></a></li></ul></li><li><a class="tocitem" href="../tiling/">Tiling</a></li><li><a class="tocitem" href="../copy/">Data Movement</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">API Reference</a></li><li class="is-active"><a href>MoYeArray</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>MoYeArray</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/YichengDWu/MoYe.jl/blob/main/docs/src/api/array.md#" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h2 id="MoYeArray"><a class="docs-heading-anchor" href="#MoYeArray">MoYeArray</a><a id="MoYeArray-1"></a><a class="docs-heading-anchor-permalink" href="#MoYeArray" title="Permalink"></a></h2><h2 id="Index"><a class="docs-heading-anchor" href="#Index">Index</a><a id="Index-1"></a><a class="docs-heading-anchor-permalink" href="#Index" title="Permalink"></a></h2><ul><li><a href="#MoYe.ArrayEngine"><code>MoYe.ArrayEngine</code></a></li><li><a href="#MoYe.MoYeArray"><code>MoYe.MoYeArray</code></a></li><li><a href="#MoYe.ViewEngine"><code>MoYe.ViewEngine</code></a></li><li><a href="#MoYe.recast"><code>MoYe.recast</code></a></li><li><a href="#MoYe.zeros!"><code>MoYe.zeros!</code></a></li></ul><article class="docstring"><header><a class="docstring-binding" id="MoYe.ViewEngine" href="#MoYe.ViewEngine"><code>MoYe.ViewEngine</code></a><span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">ViewEngine{T, P}</code></pre><p>A wrapper of a pointer. <code>P</code> is the type of the pointer.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/YichengDWu/MoYe.jl/blob/14764bd2983a26bc45bc0abec478ba4a00cd3508/src/engine.jl#L1-L5">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="MoYe.ArrayEngine" href="#MoYe.ArrayEngine"><code>MoYe.ArrayEngine</code></a><span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">ArrayEngine{T, L} &lt;: DenseVector{T}</code></pre><p>A owning and mutable vector of type <code>T</code> with static length <code>L</code>.</p><p><strong>Examples</strong></p><pre><code class="language-julia hljs">julia&gt; x = ArrayEngine{Float32}(undef, static(3))
3-element ArrayEngine{Float32, 3}:
-9.8271385f-36
7.57f-43
-9.8271385f-36

julia&gt; x[1] = 10f0
10.0f0

julia&gt; x
3-element ArrayEngine{Float32, 3}:
10.0
7.57f-43
-9.8271385f-36</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/YichengDWu/MoYe.jl/blob/14764bd2983a26bc45bc0abec478ba4a00cd3508/src/engine.jl#L52-L75">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="MoYe.MoYeArray" href="#MoYe.MoYeArray"><code>MoYe.MoYeArray</code></a><span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">MoYeArray(engine::Engine, layout::Layout)
MoYeArray{T}(::UndefInitializer, layout::StaticLayout)
MoYeArray(ptr, layout::Layout)</code></pre><p>Create a MoYeArray from an engine and a layout. See also <a href="#MoYe.ArrayEngine"><code>ArrayEngine</code></a> and <a href="#MoYe.ViewEngine"><code>ViewEngine</code></a>.</p><p><strong>Examples</strong></p><pre><code class="language-julia hljs">julia&gt; slayout = @Layout (5, 2);

julia&gt; array_engine = ArrayEngine{Float32}(undef, cosize(slayout)); # owning array

julia&gt; MoYeArray(array_engine, slayout)
5×2 MoYeArray{Float32, 2, ArrayEngine{Float32, 10}, Layout{2, Tuple{Static.StaticInt{5}, Static.StaticInt{2}}, Tuple{Static.StaticInt{1}, Static.StaticInt{5}}}}:
-3.24118f12 0.0
7.57f-43 0.0
0.0 0.0
0.0 0.0
7.89217f-40 0.0

julia&gt; MoYeArray{Float32}(undef, slayout)
5×2 MoYeArray{Float32, 2, ArrayEngine{Float32, 10}, Layout{2, Tuple{Static.StaticInt{5}, Static.StaticInt{2}}, Tuple{Static.StaticInt{1}, Static.StaticInt{5}}}}:
4.0f-45 7.57f-43
0.0 0.0
-1.81623f7 0.0
7.57f-43 0.0
-1.81623f7 0.0

julia&gt; A = ones(10);

julia&gt; MoYeArray(pointer(A), slayout) # non-owning array
5×2 MoYeArray{Float64, 2, ViewEngine{Float64, Ptr{Float64}}, Layout{2, Tuple{Static.StaticInt{5}, Static.StaticInt{2}}, Tuple{Static.StaticInt{1}, Static.StaticInt{5}}}}:
1.0 1.0
1.0 1.0
1.0 1.0
1.0 1.0
1.0 1.0

julia&gt; function test_alloc() # when powered by a ArrayEngine, MoYeArray is stack-allocated
slayout = @Layout (2, 3) # and mutable
x = MoYeArray{Float32}(undef, slayout)
fill!(x, 1.0f0)
return sum(x)
end
test_alloc (generic function with 2 methods)

julia&gt; @allocated(test_alloc())
0
</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/YichengDWu/MoYe.jl/blob/14764bd2983a26bc45bc0abec478ba4a00cd3508/src/array.jl#L1-L53">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="MoYe.recast" href="#MoYe.recast"><code>MoYe.recast</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">recast(::Type{NewType}, x::MoYeArray{OldType}) -&gt; MoYeArray{NewType}</code></pre><p>Recast the element type of a MoYeArray. This is similar to <code>Base.reinterpret</code>, but dose all the computation at compile time, if possible.</p><p><strong>Examples</strong></p><pre><code class="language-julia hljs">julia&gt; x = MoYeArray{Int32}(undef, @Layout((2,3)))
2×3 MoYeArray{Int32, 2, ArrayEngine{Int32, 6}, Layout{2, Tuple{Static.StaticInt{2}, Static.StaticInt{3}}, Tuple{Static.StaticInt{1}, Static.StaticInt{2}}}}:
-1948408944 0 2
514 -268435456 0

julia&gt; x2 = recast(Int16, x)
4×3 MoYeArray{Int16, 2, ViewEngine{Int16, Ptr{Int16}}, Layout{2, Tuple{Static.StaticInt{4}, Static.StaticInt{3}}, Tuple{Static.StaticInt{1}, Static.StaticInt{4}}}}:
-23664 0 2
-29731 0 0
514 0 0
0 -4096 0

julia&gt; x3 = recast(Int64, x)
1×3 MoYeArray{Int64, 2, ViewEngine{Int64, Ptr{Int64}}, Layout{2, Tuple{Static.StaticInt{1}, Static.StaticInt{3}}, Tuple{Static.StaticInt{1}, Static.StaticInt{1}}}}:
2209959748496 -1152921504606846976 2</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/YichengDWu/MoYe.jl/blob/14764bd2983a26bc45bc0abec478ba4a00cd3508/src/array.jl#L259-L283">source</a></section></article><article class="docstring"><header><a class="docstring-binding" id="MoYe.zeros!" href="#MoYe.zeros!"><code>MoYe.zeros!</code></a><span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">zeros!(x::MoYeArray)</code></pre><p>Fill <code>x</code> with zeros.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/YichengDWu/MoYe.jl/blob/14764bd2983a26bc45bc0abec478ba4a00cd3508/src/algorithm/array_algorithms.jl#L170-L174">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../layout/">« Layout</a><a class="docs-footer-nextpage" href="../tiling/">Tiling »</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="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.25 on <span class="colophon-date" title="Monday 4 September 2023 20:27">Monday 4 September 2023</span>. Using Julia version 1.9.3.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
2 changes: 2 additions & 0 deletions previews/PR99/api/copy/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Data Movement · MoYe.jl</title><script data-outdated-warner src="../../assets/warner.js"></script><link rel="canonical" href="https://YichengDWu.github.io/MoYe.jl/api/copy/"/><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.045/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="../.."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="../../assets/documenter.js"></script><script src="../../siteinfo.js"></script><script src="../../../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="../../assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="../../assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><div class="docs-package-name"><span class="docs-autofit"><a href="../../">MoYe.jl</a></span></div><form class="docs-search" action="../../search/"><input class="docs-search-query" id="documenter-search-query" name="q" type="text" placeholder="Search docs"/></form><ul class="docs-menu"><li><a class="tocitem" href="../../">Home</a></li><li><span class="tocitem">Manual</span><ul><li><a class="tocitem" href="../../manual/layout/">Layout</a></li><li><a class="tocitem" href="../../manual/array/">Array</a></li><li><a class="tocitem" href="../../manual/broadcast/">Broadcasting</a></li><li><a class="tocitem" href="../../manual/tiling_matmul/">MatMul</a></li><li><input class="collapse-toggle" id="menuitem-2-5" type="checkbox"/><label class="tocitem" for="menuitem-2-5"><span class="docs-label">Data Movement</span><i class="docs-chevron"></i></label><ul class="collapsed"><li><a class="tocitem" href="../../manual/datamovement/gs/">Global Memory &amp; Shared Memory</a></li></ul></li></ul></li><li><span class="tocitem">API Reference</span><ul><li><a class="tocitem" href="../layout/">Layout</a></li><li><a class="tocitem" href="../array/">MoYeArray</a></li><li><a class="tocitem" href="../tiling/">Tiling</a></li><li class="is-active"><a class="tocitem" href>Data Movement</a><ul class="internal"><li><a class="tocitem" href="#Data-Movement"><span>Data Movement</span></a></li><li><a class="tocitem" href="#Index"><span>Index</span></a></li></ul></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">API Reference</a></li><li class="is-active"><a href>Data Movement</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href>Data Movement</a></li></ul></nav><div class="docs-right"><a class="docs-edit-link" href="https://github.com/YichengDWu/MoYe.jl/blob/main/docs/src/api/copy.md#" title="Edit on GitHub"><span class="docs-icon fab"></span><span class="docs-label is-hidden-touch">Edit on GitHub</span></a><a class="docs-settings-button fas fa-cog" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-sidebar-button fa fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a></div></header><article class="content" id="documenter-page"><h2 id="Data-Movement"><a class="docs-heading-anchor" href="#Data-Movement">Data Movement</a><a id="Data-Movement-1"></a><a class="docs-heading-anchor-permalink" href="#Data-Movement" title="Permalink"></a></h2><h2 id="Index"><a class="docs-heading-anchor" href="#Index">Index</a><a id="Index-1"></a><a class="docs-heading-anchor-permalink" href="#Index" title="Permalink"></a></h2><ul><li><a href="#Base.copyto!-Tuple{MoYeArray{T, N, &lt;:ViewEngine, L} where {T, N, L}, MoYeArray{T, N, &lt;:ViewEngine, L} where {T, N, L}}"><code>Base.copyto!</code></a></li></ul><article class="docstring"><header><a class="docstring-binding" id="Base.copyto!-Tuple{MoYeArray{T, N, &lt;:ViewEngine, L} where {T, N, L}, MoYeArray{T, N, &lt;:ViewEngine, L} where {T, N, L}}" href="#Base.copyto!-Tuple{MoYeArray{T, N, &lt;:ViewEngine, L} where {T, N, L}, MoYeArray{T, N, &lt;:ViewEngine, L} where {T, N, L}}"><code>Base.copyto!</code></a><span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">copyto!(dest::StaticNonOwningArray, src::StaticNonOwningArray)</code></pre><p>Copy the contents of <code>src</code> to <code>dest</code>. The function automatically carries out potential vectorization. In particular, while transferring data from global memory to shared memory, it automatically initiates asynchronous copying, if your device supports so.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/YichengDWu/MoYe.jl/blob/14764bd2983a26bc45bc0abec478ba4a00cd3508/src/algorithm/copy.jl#L50-L56">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../tiling/">« Tiling</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="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 0.27.25 on <span class="colophon-date" title="Monday 4 September 2023 20:27">Monday 4 September 2023</span>. Using Julia version 1.9.3.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Loading

0 comments on commit cdb3a4e

Please sign in to comment.