Skip to content

Commit

Permalink
Deploying to gh-pages from @ b6aed21 🚀
Browse files Browse the repository at this point in the history
  • Loading branch information
gha3mi committed Jan 30, 2024
1 parent 2d8e6a5 commit 100025f
Show file tree
Hide file tree
Showing 24 changed files with 624 additions and 747 deletions.
34 changes: 31 additions & 3 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -80,16 +80,44 @@ <h2>Usage</h2>
<span class="n">a</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">dot_product</span><span class="p">(</span><span class="n">u</span><span class="p">,</span><span class="n">v</span><span class="p">,</span><span class="n">coarray</span><span class="p">,</span><span class="n">option</span><span class="p">,</span><span class="n">nblock</span><span class="p">)</span>
</code></pre></div>

<h2>fpm dependency</h2>
<ul>
<li><code>coarray</code> is an optional logical variable. Set it to <code>.true.</code> and use the <code>-DUSE_COARRAY</code> flag to enable coarray.</li>
<li><code>nblock</code> is an optional integer variable.</li>
<li>
<p><code>options</code> is a character variable. Available options are <code>'m1'</code> to <code>'m4'</code>.</p>
</li>
<li>
<p><strong>Note</strong>: Use the flag <code>-DUSE_DO_CONCURRENT</code> to enable do concurrent. This implementation of do concurrent is currently only supported by the Intel Compiler (ifx).</p>
</li>
</ul>
<h2>Requirements</h2>
<ul>
<li>A Fortran Compiler</li>
<li>BLAS Library</li>
<li>Fortran Package Manager (fpm)</li>
</ul>
<h2>fpm Dependency</h2>
<p>If you want to use <code>ForDot</code> as a dependency in your own fpm project,
you can easily include it by adding the following line to your <code>fpm.toml</code> file:</p>
<div class="codehilite"><pre><span></span><code><span class="k">[dependencies]</span>
<span class="n">fordot</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">{</span><span class="n">git</span><span class="p">=</span><span class="s2">&quot;https://github.com/gha3mi/fordot.git&quot;</span><span class="p">}</span>
</code></pre></div>

<h2>Runing Tests</h2>
<p>Execute the following commands to run tests with specific compilers:</p>
<div class="codehilite"><pre><span></span><code>fpm<span class="w"> </span>@&lt;compiler&gt;-test
</code></pre></div>

<p><code>compiler: ifx, ifort, gfortran, nvfortran</code></p>
<p>For coarray testing use:</p>
<div class="codehilite"><pre><span></span><code>fpm<span class="w"> </span>@&lt;compiler&gt;-test-coarray
</code></pre></div>

<p><code>compiler: ifx, ifort</code></p>
<p>All compiler options are accessible in the fpm response file <code>fpm.rsp</code>.</p>
<h2>Benchmarks</h2>
<p>You can find benchmark results on <a href="https://github.com/gha3mi/forbenchmark/tree/main/benchmarks/dot">ForBenchmark</a>.</p>
<h2>API documentation</h2>
<h2>API Documentation</h2>
<p>The most up-to-date API documentation for the master branch is available
<a href="https://gha3mi.github.io/fordot/">here</a>.
To generate the API documentation for <code>ForDot</code> using
Expand Down Expand Up @@ -162,7 +190,7 @@ <h3>Procedures</h3>
<p class="text-end">
Documentation generated by
<a href="https://github.com/Fortran-FOSS-Programmers/ford">FORD</a>
on 2024-01-27T20:38:45.594944 </p>
on 2024-01-30T22:29:50.740555 </p>
</div>
</div>
<br>
Expand Down
83 changes: 31 additions & 52 deletions interface/dot.html
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ <h1>dot
<li class="list-inline-item" id="statements"><i class="fa fa-list-ol"></i>
<a data-bs-toggle="tooltip"
data-bs-placement="bottom" data-html="true"
title="<p>15.7% of total for procedures.</p>Including implementation: 20 statements, 15.7% of total for procedures.">20 statements</a>
title="<p>14.8% of total for procedures.</p>Including implementation: 20 statements, 14.8% of total for procedures.">20 statements</a>
</li>

<li class="list-inline-item" id="source-file">
Expand Down Expand Up @@ -156,112 +156,91 @@ <h3 class="card-title">Called by</h3>
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: interface~~dot~~CalledByGraph Pages: 1 -->
<svg id="interfacedotCalledByGraph" width="641pt" height="44pt"
viewBox="0.00 0.00 641.00 44.17" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="interface~~dot~~CalledByGraph" class="graph" transform="scale(1.68 1.68) rotate(0) translate(4 70)">
<svg id="interfacedotCalledByGraph" width="641pt" height="20pt"
viewBox="0.00 0.00 641.00 19.97" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="interface~~dot~~CalledByGraph" class="graph" transform="scale(1.6 1.6) rotate(0) translate(4 28)">
<title>interface~~dot~~CalledByGraph</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-70 1070,-70 1070,4 -4,4"/>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-28 1023,-28 1023,4 -4,4"/>
<!-- interface~dot -->
<g id="interface~~dot~~CalledByGraph_node1" class="node">
<title>interface~dot</title>
<polygon fill="none" stroke="black" points="1066,-45 904,-45 904,-21 1066,-21 1066,-45"/>
<text text-anchor="middle" x="985" y="-30.6" font-family="Helvetica,sans-Serif" font-size="10.50">external_interfaces_dot::dot</text>
<polygon fill="none" stroke="black" points="1019,-24 857,-24 857,0 1019,0 1019,-24"/>
<text text-anchor="middle" x="938" y="-9.6" font-family="Helvetica,sans-Serif" font-size="10.50">external_interfaces_dot::dot</text>
</g>
<!-- proc~md_2 -->
<g id="interface~~dot~~CalledByGraph_node2" class="node">
<title>proc~md_2</title>
<g id="a_interface~~dot~~CalledByGraph_node2"><a xlink:href="../proc/md_2.html" xlink:title="fordot_opts::md_2">
<polygon fill="#d94e8f" stroke="#d94e8f" points="868,-45 759,-45 759,-21 868,-21 868,-45"/>
<text text-anchor="middle" x="813.5" y="-30.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot_opts::md_2</text>
<polygon fill="#d94e8f" stroke="#d94e8f" points="821,-24 712,-24 712,0 821,0 821,-24"/>
<text text-anchor="middle" x="766.5" y="-9.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot_opts::md_2</text>
</a>
</g>
</g>
<!-- proc~md_2&#45;&gt;interface~dot -->
<g id="interface~~dot~~CalledByGraph_edge1" class="edge">
<title>proc~md_2&#45;&gt;interface~dot</title>
<path fill="none" stroke="#255000" d="M868.13,-33C876.29,-33 884.89,-33 893.57,-33"/>
<polygon fill="#255000" stroke="#255000" points="893.78,-36.5 903.78,-33 893.78,-29.5 893.78,-36.5"/>
<path fill="none" stroke="#255000" d="M821.13,-12C829.29,-12 837.89,-12 846.57,-12"/>
<polygon fill="#255000" stroke="#255000" points="846.78,-15.5 856.78,-12 846.78,-8.5 846.78,-15.5"/>
</g>
<!-- proc~dot_r0r1r1_rel_opts -->
<g id="interface~~dot~~CalledByGraph_node3" class="node">
<title>proc~dot_r0r1r1_rel_opts</title>
<g id="a_interface~~dot~~CalledByGraph_node3"><a xlink:href="../proc/dot_r0r1r1_rel_opts.html" xlink:title="fordot_opts::dot_R0R1R1_rel_opts">
<polygon fill="#d94e8f" stroke="#d94e8f" points="723,-45 531,-45 531,-21 723,-21 723,-45"/>
<text text-anchor="middle" x="627" y="-30.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot_opts::dot_R0R1R1_rel_opts</text>
<polygon fill="#d94e8f" stroke="#d94e8f" points="676,-24 484,-24 484,0 676,0 676,-24"/>
<text text-anchor="middle" x="580" y="-9.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot_opts::dot_R0R1R1_rel_opts</text>
</a>
</g>
</g>
<!-- proc~dot_r0r1r1_rel_opts&#45;&gt;proc~md_2 -->
<g id="interface~~dot~~CalledByGraph_edge2" class="edge">
<title>proc~dot_r0r1r1_rel_opts&#45;&gt;proc~md_2</title>
<path fill="none" stroke="#255000" d="M723.22,-33C731.77,-33 740.29,-33 748.47,-33"/>
<polygon fill="#255000" stroke="#255000" points="748.65,-36.5 758.65,-33 748.65,-29.5 748.65,-36.5"/>
<path fill="none" stroke="#255000" d="M676.22,-12C684.77,-12 693.29,-12 701.47,-12"/>
<polygon fill="#255000" stroke="#255000" points="701.65,-15.5 711.65,-12 701.65,-8.5 701.65,-15.5"/>
</g>
<!-- interface~dot_opts -->
<g id="interface~~dot~~CalledByGraph_node4" class="node">
<title>interface~dot_opts</title>
<g id="a_interface~~dot~~CalledByGraph_node4"><a xlink:href="../interface/dot_opts.html" xlink:title="fordot_opts::dot_opts">
<polygon fill="#a7506f" stroke="#a7506f" points="495,-45 370,-45 370,-21 495,-21 495,-45"/>
<text text-anchor="middle" x="432.5" y="-30.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot_opts::dot_opts</text>
<polygon fill="#a7506f" stroke="#a7506f" points="448,-24 323,-24 323,0 448,0 448,-24"/>
<text text-anchor="middle" x="385.5" y="-9.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot_opts::dot_opts</text>
</a>
</g>
</g>
<!-- interface~dot_opts&#45;&gt;proc~dot_r0r1r1_rel_opts -->
<g id="interface~~dot~~CalledByGraph_edge3" class="edge">
<title>interface~dot_opts&#45;&gt;proc~dot_r0r1r1_rel_opts</title>
<path fill="none" stroke="#255000" stroke-dasharray="5,2" d="M495.2,-33C503.42,-33 512.03,-33 520.74,-33"/>
<polygon fill="#255000" stroke="#255000" points="520.99,-36.5 530.99,-33 520.99,-29.5 520.99,-36.5"/>
<path fill="none" stroke="#255000" stroke-dasharray="5,2" d="M448.2,-12C456.42,-12 465.03,-12 473.74,-12"/>
<polygon fill="#255000" stroke="#255000" points="473.99,-15.5 483.99,-12 473.99,-8.5 473.99,-15.5"/>
</g>
<!-- proc~dot_r0r1r1_rel -->
<g id="interface~~dot~~CalledByGraph_node5" class="node">
<title>proc~dot_r0r1r1_rel</title>
<g id="a_interface~~dot~~CalledByGraph_node5"><a xlink:href="../proc/dot_r0r1r1_rel.html" xlink:title="fordot::dot_R0R1R1_rel">
<polygon fill="#d94e8f" stroke="#d94e8f" points="310.5,-66 174.5,-66 174.5,-42 310.5,-42 310.5,-66"/>
<text text-anchor="middle" x="242.5" y="-51.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot::dot_R0R1R1_rel</text>
<polygon fill="#d94e8f" stroke="#d94e8f" points="287,-24 151,-24 151,0 287,0 287,-24"/>
<text text-anchor="middle" x="219" y="-9.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot::dot_R0R1R1_rel</text>
</a>
</g>
</g>
<!-- proc~dot_r0r1r1_rel&#45;&gt;interface~dot_opts -->
<g id="interface~~dot~~CalledByGraph_edge4" class="edge">
<title>proc~dot_r0r1r1_rel&#45;&gt;interface~dot_opts</title>
<path fill="none" stroke="#255000" d="M310.58,-46.51C326.41,-44.74 343.35,-42.85 359.39,-41.05"/>
<polygon fill="#255000" stroke="#255000" points="360.23,-44.48 369.78,-39.89 359.45,-37.53 360.23,-44.48"/>
</g>
<!-- proc~dot_r0r1r1_rel_coarray -->
<g id="interface~~dot~~CalledByGraph_node6" class="node">
<title>proc~dot_r0r1r1_rel_coarray</title>
<g id="a_interface~~dot~~CalledByGraph_node6"><a xlink:href="../proc/dot_r0r1r1_rel_coarray.html" xlink:title="fordot::dot_R0R1R1_rel_coarray">
<polygon fill="#d94e8f" stroke="#d94e8f" points="334,-24 151,-24 151,0 334,0 334,-24"/>
<text text-anchor="middle" x="242.5" y="-9.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot::dot_R0R1R1_rel_coarray</text>
</a>
</g>
</g>
<!-- proc~dot_r0r1r1_rel_coarray&#45;&gt;interface~dot_opts -->
<g id="interface~~dot~~CalledByGraph_edge5" class="edge">
<title>proc~dot_r0r1r1_rel_coarray&#45;&gt;interface~dot_opts</title>
<path fill="none" stroke="#255000" d="M334.2,-22.13C342.81,-23.09 351.46,-24.06 359.85,-25"/>
<polygon fill="#255000" stroke="#255000" points="359.62,-28.49 369.95,-26.12 360.4,-21.54 359.62,-28.49"/>
<path fill="none" stroke="#255000" d="M287.38,-12C295.71,-12 304.25,-12 312.64,-12"/>
<polygon fill="#255000" stroke="#255000" points="312.77,-15.5 322.77,-12 312.77,-8.5 312.77,-15.5"/>
</g>
<!-- interface~dot_product -->
<g id="interface~~dot~~CalledByGraph_node7" class="node">
<g id="interface~~dot~~CalledByGraph_node6" class="node">
<title>interface~dot_product</title>
<g id="a_interface~~dot~~CalledByGraph_node7"><a xlink:href="../interface/dot_product.html" xlink:title="fordot::dot_product">
<polygon fill="#a7506f" stroke="#a7506f" points="115,-45 0,-45 0,-21 115,-21 115,-45"/>
<text text-anchor="middle" x="57.5" y="-30.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot::dot_product</text>
<g id="a_interface~~dot~~CalledByGraph_node6"><a xlink:href="../interface/dot_product.html" xlink:title="fordot::dot_product">
<polygon fill="#a7506f" stroke="#a7506f" points="115,-24 0,-24 0,0 115,0 115,-24"/>
<text text-anchor="middle" x="57.5" y="-9.6" font-family="Helvetica,sans-Serif" font-size="10.50" fill="white">fordot::dot_product</text>
</a>
</g>
</g>
<!-- interface~dot_product&#45;&gt;proc~dot_r0r1r1_rel -->
<g id="interface~~dot~~CalledByGraph_edge6" class="edge">
<g id="interface~~dot~~CalledByGraph_edge5" class="edge">
<title>interface~dot_product&#45;&gt;proc~dot_r0r1r1_rel</title>
<path fill="none" stroke="#255000" stroke-dasharray="5,2" d="M115.4,-39.53C130.87,-41.3 147.88,-43.26 164.27,-45.14"/>
<polygon fill="#255000" stroke="#255000" points="164.03,-48.63 174.37,-46.3 164.83,-41.68 164.03,-48.63"/>
</g>
<!-- interface~dot_product&#45;&gt;proc~dot_r0r1r1_rel_coarray -->
<g id="interface~~dot~~CalledByGraph_edge7" class="edge">
<title>interface~dot_product&#45;&gt;proc~dot_r0r1r1_rel_coarray</title>
<path fill="none" stroke="#025525" stroke-dasharray="5,2" stroke-opacity="0.019608" d="M115.4,-26.47C123.47,-25.54 131.96,-24.57 140.56,-23.58"/>
<polygon fill="#025525" fill-opacity="0.019608" stroke="#025525" stroke-opacity="0.019608" points="141.16,-27.04 150.69,-22.42 140.36,-20.08 141.16,-27.04"/>
<path fill="none" stroke="#255000" stroke-dasharray="5,2" d="M115.18,-12C123.48,-12 132.15,-12 140.78,-12"/>
<polygon fill="#255000" stroke="#255000" points="140.87,-15.5 150.87,-12 140.87,-8.5 140.87,-15.5"/>
</g>
</g>
</svg>
Expand Down Expand Up @@ -680,7 +659,7 @@ <h4>
<p class="text-end">
Documentation generated by
<a href="https://github.com/Fortran-FOSS-Programmers/ford">FORD</a>
on 2024-01-27T20:38:45.594944 </p>
on 2024-01-30T22:29:50.740555 </p>
</div>
</div>
<br>
Expand Down
Loading

0 comments on commit 100025f

Please sign in to comment.