forked from julian.kunkel/reading-templates
Nai
parent
e1d90946ec
commit
0aad3cfba5
|
@ -49,42 +49,44 @@ The goal of this thesis is to see if HPC applications and storage systems can be
|
|||
|
||||
Relevant related work can be classified into:
|
||||
\begin{enumerate}
|
||||
\item a) The usage of microservices in different disciplines and particularly HPC
|
||||
\item b) Software engineering and software architectures in HPC
|
||||
\item c) Performance analysis of microservices
|
||||
\item The usage of microservices in different disciplines and particularly HPC
|
||||
\item Software engineering and software architectures in HPC
|
||||
\item Performance analysis of microservices
|
||||
\end{enumerate}
|
||||
|
||||
|
||||
\paragraph{a) The usage of microservices in different disciplines and particularly HPC.}
|
||||
\paragraph{1. The usage of microservices in different disciplines and particularly HPC.}
|
||||
Although microservices are found in HPC applications the majority of research found has applied microservices in storage \citep{Orcutt2015}, pre/post processing, middleware, scheduling, workflow and caching services that wrap around the main HPC processing. Also storage services like iRODS harness microservices, however, these systems are not as performance-critical as a typical HPC application which might be one of the reasons why iRODS is not used in HPC environments.
|
||||
|
||||
\paragraph{b) Software engineering and software architectures in HPC.} Software engineering has a focus on of having maintainable code using various designs, patterns and principles which has an influence on the software architecture \citep{Johanson2018}. Trade offs are an important decision making process when selecting an architecture, so by having an architecture that is close in performance to a traditional HPC with an increase of maintainability as opposed to an application with high performance an no maintainability might be worth that particular trade off \citep{Jenkins2017}. Other attributes may be included in the trade off besides performance such as security \citep{Joab2018}.
|
||||
\paragraph{2. Software engineering and software architectures in HPC.} Software engineering has a focus on of having maintainable code using various designs, patterns and principles which has an influence on the software architecture \citep{Johanson2018}. Trade offs are an important decision making process when selecting an architecture, so by having an architecture that is close in performance to a traditional HPC with an increase of maintainability as opposed to an application with high performance an no maintainability might be worth that particular trade off \citep{Jenkins2017}. Other attributes may be included in the trade off besides performance such as security \citep{Joab2018}.
|
||||
|
||||
\paragraph{c) Performance analysis of microservices} Here we will see how the loosely coupled architecture has an influence on the performance aspect of this analysis \citep{Fatema2017}
|
||||
\paragraph{3. Performance analysis of microservices}
|
||||
The loosely coupled architecture has an influence on the performance aspect of this analysis, as shown, for example, in \citep{Fatema2017}
|
||||
Some preliminary analysis of RESTful services exist, but this is only one potential framework for microservices.
|
||||
|
||||
\medskip
|
||||
|
||||
\paragraph{Other areas within an HPC and storage environment where microservices has been used:}
|
||||
|
||||
\paragraph{Caching Service.} Microservices were used as a distributed interpolation-based memoization cache \citep{Jenkins2017}.
|
||||
|
||||
\paragraph{Containers for High Performance Computing.} Thoughts on how containers may or may not be used in HPC. Containers are commonly used in microservice architectures. \citep{Joab2018}.
|
||||
|
||||
\paragraph{Distributed Virtual Machine Cloud Microservice for HPC:SPMD Applications} How Virtual Machines were used in a cloud based microservice architecture in an HPC environment:SPMD. \citep{Fatema2017}.
|
||||
|
||||
\paragraph{Scheduling Scientific Workflows in HPC} How to dynamically approach to scheduling reconfigurable scientific workflows in heterogeneous HPC environments. \citep{Cheptsov2016}.
|
||||
|
||||
\paragraph{Middleware cloud based microservice in HPC} Shows how middleware has made use of microservices within a HPC environment. \citep{Benchara2016}.
|
||||
|
||||
\paragraph{iRODS integrated Microservice Rulebook} Shows how iRODS uses Microservices for storage. \citep{Rajasekar2015}.
|
||||
|
||||
\paragraph{Microservices in Ocean Climate Data } Shows how Ocean-Derived Climate Data uses Microservices. \citep{Arne2016}
|
||||
|
||||
\paragraph{Software Engineering in Computational Science} How Software Engineering practices can be used in Computational Science environments. \citep{Johanson2018}
|
||||
|
||||
\paragraph{Workflow-Oriented Cyberinfrastructure for Sensor Data Analytics} How the use of iRODS was used with streaming sensors. \citep{Orcutt2015}
|
||||
|
||||
\paragraph {http://eprints.uni-kiel.de/42726/1/2018-04-19GeomarDataScience.pdf}
|
||||
% \medskip
|
||||
%
|
||||
% \paragraph{Other areas within an HPC and storage environment where microservices has been used:}
|
||||
%
|
||||
% \paragraph{Caching Service.} Microservices were used as a distributed interpolation-based memoization cache \citep{Jenkins2017}.
|
||||
%
|
||||
% \paragraph{Containers for High Performance Computing.} Thoughts on how containers may or may not be used in HPC. Containers are commonly used in microservice architectures. \citep{Joab2018}.
|
||||
%
|
||||
% \paragraph{Distributed Virtual Machine Cloud Microservice for HPC:SPMD Applications} How Virtual Machines were used in a cloud based microservice architecture in an HPC environment:SPMD. \citep{Fatema2017}.
|
||||
%
|
||||
% \paragraph{Scheduling Scientific Workflows in HPC} How to dynamically approach to scheduling reconfigurable scientific workflows in heterogeneous HPC environments. \citep{Cheptsov2016}.
|
||||
%
|
||||
% \paragraph{Middleware cloud based microservice in HPC} Shows how middleware has made use of microservices within a HPC environment. \citep{Benchara2016}.
|
||||
%
|
||||
% \paragraph{iRODS integrated Microservice Rulebook} Shows how iRODS uses Microservices for storage. \citep{Rajasekar2015}.
|
||||
%
|
||||
% \paragraph{Microservices in Ocean Climate Data } Shows how Ocean-Derived Climate Data uses Microservices. \citep{Arne2016}
|
||||
%
|
||||
% \paragraph{Software Engineering in Computational Science} How Software Engineering practices can be used in Computational Science environments. \citep{Johanson2018}
|
||||
%
|
||||
% \paragraph{Workflow-Oriented Cyberinfrastructure for Sensor Data Analytics} How the use of iRODS was used with streaming sensors. \citep{Orcutt2015}
|
||||
%
|
||||
% \paragraph {http://eprints.uni-kiel.de/42726/1/2018-04-19GeomarDataScience.pdf}
|
||||
|
||||
\section{Research methodology}
|
||||
Firstly, I must understand the limitations and performance characteristics of alternatives software architectures. This is performed in two steps:
|
||||
|
|
Loading…
Reference in New Issue