commit c4bd3a73cb5cec7f77996e018435632373e381ec
parent db8206cd63994115c040f5f82034640473594c9b
Author: Ivan Gankevich <igankevich@ya.ru>
Date: Wed, 27 Mar 2019 20:06:18 +0300
Discussion.
Diffstat:
2 files changed, 24 insertions(+), 3 deletions(-)
diff --git a/main.tex b/main.tex
@@ -474,8 +474,8 @@ frame rate and small simulation time steps.
\begin{itemize}
- \item We achieved more than 60 simulation steps per second on each of the
- workstations. For Storm and GPUlab the most performant programme
+ \item We achieved more than 60 simulation steps per second (SSPS) on each
+ of the workstations. For Storm and GPUlab the most performant programme
version was the one for graphical accelerator and for Capybara the most
performant version was the one for the processor (tab.~\ref{tab:best}).
@@ -536,6 +536,27 @@ frame rate and small simulation time steps.
\section{Discussion}
+Although, graphical accelerator gives noticeable performance increase only for
+the least powerful workstation, we considered only the simplest simulation
+scenario (ship motions induced by a plane Stokes wave) in the benchmarks: The
+problem that we solve is too small to saturate graphical accelerator cores. We
+tried to eliminate expensive data copying operations between host and graphical
+accelerator memory, where possible, but we need to simulate more physical
+phenomena and at a larger scale (ships with large number of panels, large
+number of compartments with large number of faces, wind simulation etc.) to
+verify that performance gap increases for powerful workstations. On the bright
+side, even if a computer does not have powerful graphical accelerator (e.g.~a
+laptop with integrated graphics), it still can run Virtual testbed with
+acceptable performance.
+
+Large SSPS is needed neither for smooth visualisation, nor for accurate
+simulation; however, it gives performance reserve for further increase in
+detail and scale of simulated physical phenomena. We manually limit simulation
+time step to a minimum of \(1/30\) of the second to prevent floating-point
+numerical errors due to small time steps. Also, we limit maximum time step to
+maintain Nyquist frequency for precise computation of time partial derivatives.
+
+
\section{Conclusion}
Wind simulation, rudder and propeller, compartment flooding and fire,
diff --git a/shell/profile b/shell/profile
@@ -49,7 +49,7 @@ do
echo
echo "Best time ($i)"
query "
- SELECT node,profile,nthreads, MIN(total)
+ SELECT node,profile,nthreads, MIN(total), fps1
FROM profile
WHERE profile='$i'
GROUP BY node,profile