Specified variable and added change to the last review point.

This commit is contained in:
Janita Willumsen 2023-12-05 15:32:39 +01:00
parent 5df0a2411b
commit 4b711a477e
5 changed files with 22 additions and 8 deletions

View File

@ -6,7 +6,7 @@
temperature, when undergoing phase transition. To generate spin configurations, temperature, when undergoing phase transition. To generate spin configurations,
we used the Metropolis-Hastings algorithm, which applies a Markov chain Monte we used the Metropolis-Hastings algorithm, which applies a Markov chain Monte
Carlo sampling method. We determined the time of equilibrium to be approximately Carlo sampling method. We determined the time of equilibrium to be approximately
3000 Monte Carlo cycles, and used the following samples to find the probability $5000$ Monte Carlo cycles, and used the following samples to find the probability
distribution at temperature $T_{1} = 1.0 J / k_{B}$, and $T_{2} = 2.4 J / k_{B}$. distribution at temperature $T_{1} = 1.0 J / k_{B}$, and $T_{2} = 2.4 J / k_{B}$.
For $T_{1}$ the mean energy per spin is $\langle \epsilon \rangle \approx -1.9969 J$, For $T_{1}$ the mean energy per spin is $\langle \epsilon \rangle \approx -1.9969 J$,
with a variance $\text{Var} (\epsilon) = 0.0001$. And for $T_{2}$, close to the critical with a variance $\text{Var} (\epsilon) = 0.0001$. And for $T_{2}$, close to the critical
@ -16,6 +16,6 @@
susceptibility. We have estimated the critical temperatures of finite lattice sizes, susceptibility. We have estimated the critical temperatures of finite lattice sizes,
and used these values to approximate the critical temperature of a lattice of and used these values to approximate the critical temperature of a lattice of
infinite size. Using linear regression, we estimated the critical temperature infinite size. Using linear regression, we estimated the critical temperature
to be $T_{c}(L = \infty) \approx 2.2695 J/k_{B}$. to be $T_{c}^{*}(L = \infty) \approx 2.2693 J/k_{B}$.
\end{abstract} \end{abstract}
\end{document} \end{document}

View File

@ -216,4 +216,12 @@ the magnetic susceptibility.
\label{fig:phase_susceptibility_1M} \label{fig:phase_susceptibility_1M}
\end{figure} \end{figure}
Result of profiling using Score-P in Figure \ref{fig:scorep_assessment}.
\begin{figure}[H]
\centering
\includegraphics[width=\linewidth]{../images/profiling.pdf}
\caption{Score-P assessment of parallel efficiency.}
\label{fig:scorep_assessment}
\end{figure}
\end{document} \end{document}

View File

@ -30,6 +30,6 @@ heat capacity and susceptibility for lattices of size $L = {20, 40, 60, 80, 100}
We observed a phase transition in the temperature range $T \in [2.1, 2.4] J / k_{B}$. We observed a phase transition in the temperature range $T \in [2.1, 2.4] J / k_{B}$.
Using the values from the finite lattices, we approximated the critical temperature Using the values from the finite lattices, we approximated the critical temperature
of a lattice of infinite size. Using linear regression, we numerically estimated of a lattice of infinite size. Using linear regression, we numerically estimated
$T_{c}(L = \infty) \approx 2.2695 J/k_{B}$ which is close to the analytical solution $T_{c}^{*}(L = \infty) \approx 2.2693 J/k_{B}$ which is close to the analytical solution
$T_{C}(L = \infty) \approx 2.269 J/k_{B}$ Lars Onsager found in 1944. $T_{c}(L = \infty) \approx 2.269 J/k_{B}$ Lars Onsager found in 1944.
\end{document} \end{document}

View File

@ -102,8 +102,13 @@ MPI processes. Each process was set to spawn $10$ threads, resulting in a total
$100$ threads working in parallel. We include results for $1$ million MC cycles $100$ threads working in parallel. We include results for $1$ million MC cycles
in Appendix \ref{sec:additional_results} in Appendix \ref{sec:additional_results}
$\boldsymbol{Rewrite}$ We used a profiler to make sure the program was fully optimized which found that the To evaluate the performance of the parallelization, we used a profiler. The
workload was balanced, the threads was not left idle to long/not a lot of downtime. assessment output can be found in Appendix \ref{sec:additional_results} in Figure
\ref{fig:scorep_assessment}. The assessment shows a lower score for the MPI load
balance, compared to the OpenMP load balance. The master process gatheres all the
data using blocking communication, resulting in the other processes waiting. This
results in one process, the master, having to work more. The OpenMP load balance
score is very good, suggesting the threads are not left idle for long periods.
In Figure \ref{fig:phase_energy_10M}, for the larger lattices we observe a sharper In Figure \ref{fig:phase_energy_10M}, for the larger lattices we observe a sharper
increase in $\langle \epsilon \rangle$ in the temperature range $T \in [2.25, 2.35]$. %] increase in $\langle \epsilon \rangle$ in the temperature range $T \in [2.25, 2.35]$. %]
@ -179,10 +184,10 @@ the lattice size increase toward infinity, $1/L$ approaches zero. %
\end{figure} \end{figure}
We used linear regression to find the intercept $\beta_{0}$, which gives us an estimated value We used linear regression to find the intercept $\beta_{0}$, which gives us an estimated value
of the critical temperature for a lattice of infinite size. The estimated critical temperature of the critical temperature for a lattice of infinite size. The estimated critical temperature
is $T_{c \text{num}} \approx 2.2693 J/k_{B}$. We also compared the is $T_{c}^{*}(L = \infty) \approx 2.2693 J/k_{B}$. We also compared the
estimate with the analytical solution, the relative error of our estimate is estimate with the analytical solution, the relative error of our estimate is
\begin{equation*} \begin{equation*}
\text{Relative error} = \frac{T_{c \text{ numerical}} - T_{c \text{ analytical}}}{T_{c \text{ analytical}}} \approx 5.05405 \cdot 10^{-5} J/k_{B} \text{Relative error} = \frac{T_{c}^{*} - T_{c \text{ analytical}}}{T_{c \text{ analytical}}} \approx 5.05405 \cdot 10^{-5} J/k_{B}
\end{equation*} \end{equation*}
\end{document} \end{document}

View File

@ -104,6 +104,7 @@ I agree!
- janitaws: So instead of "We ran a profiler" it should be "We used a profiler"? Could you suggest a way of formulating the sentence so that the info is correct? - janitaws: So instead of "We ran a profiler" it should be "We used a profiler"? Could you suggest a way of formulating the sentence so that the info is correct?
- coryab: Yes to the first point. "To check if the parallelization was optimal, we used a profiler, which found that the program was efficient. The thing that scored slightly less was the MPI load balance, which is most likely because the master process gathered all data using blocking communication, which made the other processes wait, in addition to having one process work more." - coryab: Yes to the first point. "To check if the parallelization was optimal, we used a profiler, which found that the program was efficient. The thing that scored slightly less was the MPI load balance, which is most likely because the master process gathered all data using blocking communication, which made the other processes wait, in addition to having one process work more."
- janitaws: If we simply state that the program was efficient we should include some sort of evidence supporting the statement, since the view of efficiency is subjective. Maybe we could include percentage here to support it, the profile gave a number right? - janitaws: If we simply state that the program was efficient we should include some sort of evidence supporting the statement, since the view of efficiency is subjective. Maybe we could include percentage here to support it, the profile gave a number right?
- janitaws: made a change to the entire paragraph, including reference to figure in appendix
[ ] 106: was => were [ ] 106: was => were
- janitaws: My previous comment might make this unnecessary? - janitaws: My previous comment might make this unnecessary?
- coryab: If you use my suggestion, then this can be checked off at the same time. - coryab: If you use my suggestion, then this can be checked off at the same time.