<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Templet Web: The Experimental Use of Volunteer Computing Approach in Scientific Platform-as-a-Service Implementation</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Sergei</forename><surname>Vostokin</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Samara University</orgName>
								<address>
									<settlement>Samara</settlement>
									<country>Russia vostokin</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Yuriy</forename><surname>Artamonov</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Samara University</orgName>
								<address>
									<settlement>Samara</settlement>
									<country>Russia vostokin</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Danil</forename><surname>Tsarev</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Samara University</orgName>
								<address>
									<settlement>Samara</settlement>
									<country>Russia vostokin</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Templet Web: The Experimental Use of Volunteer Computing Approach in Scientific Platform-as-a-Service Implementation</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">100F7271E84DB5C0C40FB662242219A9</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T13:55+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Cloud Computing</term>
					<term>Platform as a Service</term>
					<term>Volunteer Computing</term>
					<term>Scientific Computing</term>
					<term>Automatic Parallel Programming</term>
					<term>Cluster Computing</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>This article presents the Templet Web cloud service [a1]. The service is designed for high-performance scientific computing automation. The use of high-performance technology is specifically required by new fields of computational science such as data mining, artificial intelligence, machine learning, and others. Cloud technologies provide a significant cost reduction for high-performance scientific applications. The main objectives to achieve this cost reduction in the Templet Web service design are: (1) the implementation of "on-demand" access; (2) source code deployment management; (3) high-performance computing programs development automation. The distinctive feature of the service is the approach mainly used in the field of volunteer computing, when a person who has access to the computer system delegates his access rights to the requesting user. We developed an access procedure, algorithms, and software for utilization of free computational resources of the academic cluster system in line with the methods of volunteer computing. The Templet Web service has been in operation for five years. It has been successfully used for conducting laboratory workshops and solving research problems, some of which are considered in this article. The article also provides an overview of research directions related to the service development.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Modern mathematical modeling is based on numerical methods. Of all the numerical methods, the methods that are implemented exclusively in high-performance computing systems are becoming increasingly popular. Thus, the development of data mining or deep machine learning is fundamentally impossible without the use of highperformance technology. Moreover, rejecting high-performance parallel computing when sequential computing may be implemented can lead to incorrect results. For example, it is possible to get an incomplete study of a model's parametric space; to get an incorrect conclusion about the properties, adequacy and boundaries of the applicability of the model to the studied object.</p><p>Despite the affordability and widespread use of high-performance computing hardware, such as multi-core processors, general-purpose GPUs, and cluster-based systems, the developers of numerical models often implement the models in the form of a traditional sequential program. We may presuppose the following three reasons for this limited use of high-performance computing.</p><p>Firstly, it is important to access high-performance resources "on demand" in low-budget projects, preliminary studies, or training. At the same time, the access to high-performance academic systems is usually associated with bureaucratic procedures and is not implemented remotely via the Internet. The offline access registration entails financial costs and time loss when renting computing power.</p><p>Secondly, the usual form of access to computing resources for the high-performance computing industry is terminal access over a secure channel based on SSH protocols. Along with great flexibility, which is an advantage for a system programmer, this form of access is inconvenient for a mathematician. It requires him to master the skills of system administration that are not typical professional skills for a numerical modeling expert. This leads to an increase in the expenditure of time and finances for the organization of calculations on the model.</p><p>Finally, an equally important problem is the development of a parallel program for a numerical algorithm. The traditional form of the representation of a numerical algorithm is a sequential program representation. This algorithmic representation is natural for the mathematician. However, at present, the theory of compilation gives no universal methods of transforming the algorithmic representation into binary code suitable for practical use in high-performance systems. Therefore, modern tools for the development of high-performance computing programs require an explicit description of simultaneously performed calculations and taking into account the hardware features of the computing equipment. The study of programming tools and equipment features involves time and financial costs.</p><p>Modern mathematical modeling is used primarily for applied problems. Thus, reduction of the financial and time cost factors for setting up experiments with the models is practically important. In this regard, the motivation for our research in cloud computing service development is the problem of complex automation. The aim of automation is to reduce the negative role of factors considered above. This automation includes: (1) the automation of the access procedure for a high-performance system; (2) the automation of program deployment (code upload, building, starting, and control of the program execution, downloading the results); (3) automatic parallel programming for high-performance computing systems.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Research Methods</head><p>Development and maintenance of a service with the requirements stated above are associated with solving many technical and scientific problems. The core of our strategy of providing access to a remote computing system is the concept of volunteer computing [WTWB + 97]. The donors of computing resources in our system are academic cluster account holders. The system is implemented as PaaS (platform as a service) cloud service <ref type="bibr" target="#b14">[MG11]</ref>. In this approach, the infrastructure that implements and provides the service is completely hidden from the user, and it is possible to work with the service using just a web browser.</p><p>The specifics of access to computing resources lead us to the need of solving the problem of forecasting the computational load of the cluster. A user who provides the access to a cluster should know the periods when the access can be granted without compromising his/her own projects and the overall cluster load. At the same time, a user who gets the access needs to know when the effective work on the cluster will be possible. In order to solve this problem, mathematical methods of forecasting and data mining are used <ref type="bibr" target="#b11">[HKP11,</ref><ref type="bibr" target="#b15">MWH98]</ref>.</p><p>Automation of parallel programming in our service is based on the concept of algorithmic skeletons <ref type="bibr" target="#b9">[Col04,</ref><ref type="bibr" target="#b10">GVL10]</ref>. This method implies the storage of a set of frameworks for controlling parallel computations. The frameworks can be extended with sequential code for a task. To specify the semantics of parallel execution for the algorithmic skeletons, we apply the version of the actor model <ref type="bibr" target="#b18">[Vos16]</ref> and define the model in the temporal logic of actions <ref type="bibr" target="#b12">[Lam94]</ref>. The syntax of skeletons is developed according to the language-oriented programming approach <ref type="bibr" target="#b20">[War95]</ref>, considering the maximum compatibility with development environments and tools that are traditional for high-performance computing (C++, OpenMP, MPI).</p><p>Below we consider the technologies developed and tested in the service, statistical data on its functioning, and numerical modeling tasks solved with the help of it. In conclusion, the results of service development are summarized.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">On-demand Access to Academic Cluster</head><p>Our service uses the idea of volunteer computing to access a remote computer system. A Volunteer is a person who has an account on a remote system accessible via the SSH protocol. A Consumer is a person who does not have an account on the remote system, but wants to use the Volunteer's account. To run the Consumer's program through the Volunteer's account, our service implements the following protocol:</p><p>• Consumer submits the program source code and input data to Volunteer;</p><p>• Volunteer runs the program on his/her own behalf on the remote system;</p><p>• Volunteer returns result of the run to Consumer.</p><p>The system acts as a broker and assumes the following obligations:</p><p>• storing of source code, data and the result of computations for mutual audit of Consumers and Volunteers actions;</p><p>• organizing the access to this information by both Volunteer and Consumer;</p><p>• multiplexing access for many Consumers to the same Volunteer account.</p><p>Each Consumer can interact with an arbitrary number of Volunteers; each Volunteer can simultaneously provide access to his remote system for an arbitrary number of Consumers. The roles of the Consumer and the Volunteer can be entitled to one and the same person. Unlike the traditional BOINC <ref type="bibr" target="#b3">[And04]</ref> volunteer computing middleware, in our implementation, multiplexing is used when connecting to Volunteer, not to Consumer. It is also assumed that the Volunteer gives access to a multitasking system (for instance, batch system).</p><p>Thus, if Volunteer trusts Consumer and knows his identifier in our system, he can immediately grant access to the Consumer.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Deployment Automation</head><p>Three entities are involved in managing the deployment of user programs on a cluster: Task, Template, and Environment.</p><p>A Task is the main entity of the system. The attributes of a task are the code of the Customer program, the input data, the output data and the execution status. The Task is generated from the Template.</p><p>Each Template contains sample code that users can adapt to their algorithm; the script that controls the assembly of the Task on the Volunteer system; there are also a start script and the script for downloading the results. Any Template can be used to create many Tasks. Each Task is related to one Template.</p><p>Task is performed in an Environment. Each Environment contains information for connecting to the Volunteer system. Environment implements the life cycle of Tasks in Volunteer system. Specific operations of the life cycle are defined in the Template. For example, Environment defines the moment when the program is started on the Volunteer system and runs the build.sh script specified in the Template.</p><p>The system has additional entities that are used to manage access rights and implement collaboration scenarios. The main scenarios include the work of a student group and the work of a research group on a cluster. You can grant access to one or more computing clusters to a group of students and monitor their work. The students can perform individual or group projects. The working in a project can be conducted using the browser or a version control system.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Automatic Parallel Programming</head><p>Let us demonstrate automatic parallel programming in our system using the example of a computation by the master-workers scheme. This scheme is typical for volunteer computations in BOINC. When you create Tasks from the master-workers Template, the user is given the following code sample (some details are omitted).</p><p>struct task{/*-to be filled by the user-*/}; struct result{/*-to be filled by the user-*/}; struct bag{ bool get(task*t){/*-to be filled by the user-*/} void put(result*r){/*-to be filled by the user-*/} /*-to be filled by the user-*/ }; void proc(task*t,result*r){/*-to be filled by the user-*/} int main(int argc, char* argv[]) { bag b; /*-to be filled by the user-*/ b.run(); /*-to be filled by the user-*/ return EXIT_SUCCESS; } Here, struct task is the input data of the task; struct result is the result of the calculation of the task; proc is the procedure for calculating the task performed by the workflow; struct bag is a state and methods of the master process; get is a method for creating a new task or informing that there are no tasks; put is a method for recording the result of calculating a task in a master process.</p><p>The user fills in the parts marked with the comment /*-to filled by the user -*/, with his/her sequential code. The resulting skeleton can be compiled and checked for syntactical correctness in the usual way. The algorithm for converting the skeleton into executable code for volunteer system architecture is contained in Template. The system implements the conversion of this skeleton into the code to be executed in the shared memory using OpenMP and into the code for distributed execution using MPI <ref type="bibr" target="#b19">[VT17]</ref>.</p><p>The master-workers skeleton can be used to prototype the applications for the BOINC platform. Note that the integration of BOINC with cluster systems was studied earlier in the CluBORun project [ABM + 15, ZMK + 17]. In the future, it is possible to run master-workers applications from our system to the BOINC network, if we consider the BOINC control node as special type of Volunteer system. Other skeletons, for example pipeline, are also implemented in our system. Our system has a DSL-based constructor for developing skeletons in the form of actor networks.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">Results of Service Operation</head><p>The Templet Web service is deployed in the private cloud of the Supercomputer Center of Samara University [a15]. The service is used for teaching students high-performance programming, for automatic parallel programming technologies research, and for solving applied problems using numerical algorithms <ref type="bibr" target="#b7">[AV15]</ref>.</p><p>Most users are bachelor's and master's degree students. Students act as the Consumers of the service. Teachers who have accounts on the "Sergey Korolev" cluster act as the Volunteers providing resources for temporary access. The dynamics of user growth is shown in Table <ref type="table" target="#tab_0">1</ref> Table <ref type="table" target="#tab_1">2</ref> shows the number of tasks running on the "Sergey Korolev" cluster during the period of operation of the Templet Web system. This number of tasks is multiplexed through three accounts on the cluster and one account on a test low-power Linux system.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Year</head><p>Total The system includes a universal skeleton constructor based on the Templet markup language <ref type="bibr" target="#b18">[Vos16]</ref>. The source code for the skeleton constructor and examples of its use are available online <ref type="bibr">[a17]</ref>.</p><p>An important part of the service is the subsystem for monitoring and forecasting the load of the "Sergey Korolev" cluster. It implements a 12-hour forecast of changing the cluster load, calculated by various mathematical methods: maximum likelihood method <ref type="bibr" target="#b5">[Art16]</ref>, neural networks <ref type="bibr">[and17]</ref>, an adaptive combination of the listed methods <ref type="bibr" target="#b6">[Art17]</ref>. The forecasting system is implemented using the microservice approach <ref type="bibr" target="#b8">[AV16]</ref>.</p><p>We use Templet Web system to solve problems in modeling the dynamics of space vehicles. The study of dynamics includes the numerical solution of the equations of spacecraft motion with different initial conditions, the construction of phase trajectories and Poincaré maps. The aim of the study is to identify chaotic processes and unstable modes in operation of the spacecraft orientation systems. This class of models is realized by the above-described scheme of master-workers calculations <ref type="bibr" target="#b17">[VDA16]</ref>.</p><p>In this project, we also examined the applicability of the master-workers scheme to parallel algorithms implementation for training neural networks with the selection of the optimal structure of neurons in hidden layers <ref type="bibr" target="#b13">[Lit14]</ref>. A program for parallel continuous wavelet transform has been developed in the course of the study of the problem of analysis of acoustic signals from a cutting tool <ref type="bibr" target="#b16">[SVP17]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="7">Conclusion</head><p>The experience we have gained from the development and operation of the Templet Web system shows the practical importance of a comprehensive approach to automating high-performance computing in mathematical modeling. This approach includes the automation of programming, on-demand access to resources and the automation of deployment. The PaaS implementation of the Templet Web system is accessible through a standard web browser. This design significantly reduced the complexity of a cluster system for users and led to an increase of cluster usage. The technology of providing access to the computer system by the principles of volunteer computing has made it possible to simplify cluster administration considerably in the organization of the educational process using the resources of the Supercomputer Center of Samara University.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head>Table 1 :</head><label>1</label><figDesc>. The dynamics of Templet Web user growth</figDesc><table><row><cell>Year</cell><cell cols="2">Total in the period Accumulated total</cell></row><row><cell>2013-2015</cell><cell>212</cell><cell>212</cell></row><row><cell>2016</cell><cell>63</cell><cell>278</cell></row><row><cell cols="2">2017 (first six months) 88</cell><cell>366</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head>Table 2 :</head><label>2</label><figDesc>The number of task runs on Templet Web system Users develop tasks in projects. The project allows you to control access to Environments and Tasks for a group of users. Table3shows the dynamics of creating projects in the system.</figDesc><table><row><cell></cell><cell></cell><cell>in the period Accumulated total</cell></row><row><cell>2013-2015</cell><cell>141</cell><cell>141</cell></row><row><cell>2016</cell><cell>2597</cell><cell>2738</cell></row><row><cell cols="2">2017 (first six months) 1308</cell><cell>4046</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head>Table 3 :</head><label>3</label><figDesc>The dynamics of creating projects in Templet Web system In 2016, the function of editing code in a web browser was added to the system. As you can see from Tables 2-4, this function is in demand among users and increased the intensity of Templet Web usage. Projects are basically created with the ability to edit the code in the browser.</figDesc><table><row><cell>Year</cell><cell cols="2">Total in the period Accumulated total</cell></row><row><cell>2013-2015</cell><cell>0</cell><cell>0</cell></row><row><cell>2016</cell><cell>97</cell><cell>97</cell></row><row><cell cols="2">2017 (first six months) 226</cell><cell>323</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_3"><head>Table 4 :</head><label>4</label><figDesc>The number of Templet Web projects managed exclusively in browser</figDesc><table /></figure>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Acknowledgments</head><p>This work is partially supported by the Russian Foundation for Basic Research (RFBR No. 15-08-05934-A), and by the Ministry of Education and Science of the Russian Federation in the framework of the State Assignments program (No. 9.1616.2017/PCh).</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<ptr target="http://templet.ssau.ru/" />
		<title level="m">The templet project</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<title level="m" type="main">The templet markup language: a tool for concurrent, actor-oriented, skeleton programming</title>
		<ptr target="https://github.com/templet-language" />
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Technology for integrating idle computing cluster resources into volunteer computing projects</title>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">P</forename><surname>Afanasiev</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><forename type="middle">V</forename><surname>Bychkov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">O</forename><surname>Manzyuk</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">A</forename><surname>Posypkin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Semenov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><forename type="middle">S</forename><surname>Zaikin</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">5th International Workshop on Computer Science and Engineering: Information Processing and Control Engineering, WCSE 2015-IPCE</title>
				<imprint>
			<date type="published" when="2015">2015</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Boinc: A system for public-resource computing and storage</title>
		<author>
			<persName><forename type="first">David</forename><forename type="middle">P</forename><surname>Anderson</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 5th IEEE/ACM International Workshop on Grid Computing, GRID &apos;04</title>
				<meeting>the 5th IEEE/ACM International Workshop on Grid Computing, GRID &apos;04<address><addrLine>Washington, DC, USA</addrLine></address></meeting>
		<imprint>
			<publisher>IEEE Computer Society</publisher>
			<date type="published" when="2004">2004</date>
			<biblScope unit="page" from="4" to="10" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">Prediction of cluster system load using artificial neural networks</title>
		<author>
			<persName><forename type="first">S</forename><surname>Yuriy</surname></persName>
		</author>
		<author>
			<persName><surname>Artamonov</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2017">2017</date>
		</imprint>
		<respStmt>
			<orgName>Data Science. Samara University</orgName>
		</respStmt>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Using the emmsp model to predict the available computing resources in the cluster systems (in russian)</title>
		<author>
			<persName><forename type="first">Y</forename><forename type="middle">S</forename><surname>Artamonov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Proceedings of the Samara Scientific Center of the Russian Academy of Sciences</title>
		<imprint>
			<biblScope unit="volume">18</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="681" to="687" />
			<date type="published" when="2016">2016</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Prediction of cluster system load using adaptive model mixture (in russian)</title>
		<author>
			<persName><forename type="first">Y</forename><forename type="middle">S</forename><surname>Artamonov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">International Journal of Open Information Technologies</title>
		<imprint>
			<biblScope unit="volume">5</biblScope>
			<biblScope unit="issue">5</biblScope>
			<biblScope unit="page" from="9" to="15" />
			<date type="published" when="2017">2017</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">The use of cloud services templet web in conducting laboratory workshops on the supercomputer &quot;sergey korolev</title>
		<author>
			<persName><forename type="first">Y</forename><forename type="middle">S</forename><surname>Artamonov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">V</forename><surname>Vostokin</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of X Int. Scientific and practical conference Modern information technologies and IT education, MSU</title>
				<meeting>of X Int. Scientific and practical conference Modern information technologies and IT education, MSU<address><addrLine>Moscow</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2015">2015</date>
			<biblScope unit="volume">2</biblScope>
			<biblScope unit="page" from="409" to="414" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Development of distributed applications for data collection and analysis on the basis of a microservice architecture (in russian)</title>
		<author>
			<persName><forename type="first">Y</forename><forename type="middle">S</forename><surname>Artamonov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">V</forename><surname>Vostokin</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Proceedings of the Samara Scientific Center of the Russian Academy of Sciences</title>
		<imprint>
			<biblScope unit="volume">18</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="688" to="693" />
			<date type="published" when="2016">2016</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Bringing skeletons out of the closet: a pragmatic manifesto for skeletal parallel programming</title>
		<author>
			<persName><forename type="first">M</forename><surname>Cole</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Parallel Computing</title>
		<imprint>
			<biblScope unit="volume">30</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="389" to="406" />
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">A survey of algorithmic skeleton frameworks: high-level structured parallel programming enablers</title>
		<author>
			<persName><forename type="first">Horacio</forename><surname>González</surname></persName>
		</author>
		<author>
			<persName><forename type="first">-</forename><surname>Vélez</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Mario</forename><surname>Leyton</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Software: Practice and Experience</title>
		<imprint>
			<biblScope unit="volume">40</biblScope>
			<biblScope unit="issue">12</biblScope>
			<biblScope unit="page" from="1135" to="1160" />
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<monogr>
		<title level="m" type="main">Data mining: concepts and techniques</title>
		<author>
			<persName><forename type="first">J</forename><surname>Han</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Kamber</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Pei</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2011">2011</date>
			<publisher>Elsevier</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">The temporal logic of actions</title>
		<author>
			<persName><forename type="first">Leslie</forename><surname>Lamport</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Trans. Program. Lang. Syst</title>
		<imprint>
			<biblScope unit="volume">16</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="872" to="923" />
			<date type="published" when="1994-05">May 1994</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Development and application of the computational model for skeleton solutions. case study -using &quot;bag-of-task&quot; for hrbf neural network learning</title>
		<author>
			<persName><forename type="first">V</forename><forename type="middle">G</forename><surname>Litvinov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">J. Samara State Tech. Univ., Ser. Phys. &amp; Math. Sci</title>
		<imprint>
			<biblScope unit="volume">3</biblScope>
			<biblScope unit="issue">36</biblScope>
			<biblScope unit="page" from="183" to="195" />
			<date type="published" when="2014">2014</date>
		</imprint>
	</monogr>
	<note>in russian</note>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<title level="m" type="main">The nist definition of cloud computing</title>
		<author>
			<persName><forename type="first">P</forename><surname>Mell</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Grance</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2011">2011</date>
			<biblScope unit="page" from="800" to="145" />
		</imprint>
		<respStmt>
			<orgName>National Institute of Standards and Technology: U.S. Department of Commerce</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Special publication</note>
</biblStruct>

<biblStruct xml:id="b15">
	<monogr>
		<title level="m" type="main">Forecasting: Methods and Applications</title>
		<author>
			<persName><forename type="first">S</forename><surname>Makridakis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">C</forename><surname>Wheelwright</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">J</forename><surname>Hyndman</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1998">1998</date>
			<publisher>John Wiley and Sons</publisher>
		</imprint>
	</monogr>
	<note>Third edition</note>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">Calculation of coefficients of wavelet transform on cluster systems</title>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">A</forename><surname>Stolbova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">V</forename><surname>Vostokin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">N</forename><surname>Popov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the international scientific conference Advanced information technologies and scientific computing (PIT-2017)</title>
				<meeting>the international scientific conference Advanced information technologies and scientific computing (PIT-2017)</meeting>
		<imprint>
			<publisher>Samara Scientific Center of RAS</publisher>
			<date type="published" when="2017">2017</date>
			<biblScope unit="page" from="476" to="478" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">Application of the templet web system to solve problems of mathematical modeling using high-performance systems (in russian)</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">V</forename><surname>Vostokin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">V</forename><surname>Doroshin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><forename type="middle">S</forename><surname>Artamonov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Collected Works of the XVIII All-Russian Seminar on Motion Control and Navigation of Aircraft: Part II</title>
				<meeting><address><addrLine>Samara</addrLine></address></meeting>
		<imprint>
			<publisher>Samara Science Center of RAS</publisher>
			<date type="published" when="2015-06-17">15-17 June 2015. 2016</date>
			<biblScope unit="page" from="17" to="21" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<analytic>
		<title level="a" type="main">Templet: a markup language for concurrent actor-oriented programming</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">V</forename><surname>Vostokin</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">CEUR Workshop Proceedings</title>
				<imprint>
			<date type="published" when="2016">2016</date>
			<biblScope unit="volume">1638</biblScope>
			<biblScope unit="page" from="460" to="468" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<analytic>
		<title level="a" type="main">Skeletal software deployment technology to automate the calculations on a supercomputer sergey korolev</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">V</forename><surname>Vostokin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">A</forename><surname>Tsarev</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the international scientific conference Advanced information technologies and scientific computing (PIT-2017)</title>
				<meeting>the international scientific conference Advanced information technologies and scientific computing (PIT-2017)</meeting>
		<imprint>
			<publisher>Samara Scientific Center of RAS</publisher>
			<date type="published" when="2017">2017</date>
			<biblScope unit="page" from="481" to="484" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b20">
	<analytic>
		<title level="a" type="main">A new major seti project based on project serendip data and 100,000 personal computers</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">P</forename><surname>Ward</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Sullivan</forename><surname>Woodruff</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename></persName>
		</author>
		<author>
			<persName><forename type="first">Dan</forename><surname>Werthimer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Stuart</forename><surname>Bowyer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Jeff</forename><surname>Cobb</surname></persName>
		</author>
		<author>
			<persName><forename type="first">David</forename><surname>Gedye</surname></persName>
		</author>
		<author>
			<persName><forename type="first">David</forename><surname>Anderson</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">A Volunteer-Computing-Based Grid Architecture Incorporating Idle Resources of Computational Clusters</title>
				<editor>
			<persName><forename type="first">Oleg</forename><surname>Zaikin</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Maxim</forename><surname>Manzyuk</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Stepan</forename><surname>Kochemazov</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Igor</forename><surname>Bychkov</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Alexander</forename><surname>Semenov</surname></persName>
		</editor>
		<meeting><address><addrLine>Cham</addrLine></address></meeting>
		<imprint>
			<publisher>Springer International Publishing</publisher>
			<date type="published" when="1995">1995. 1997. 2017</date>
			<biblScope unit="volume">15</biblScope>
			<biblScope unit="page" from="769" to="776" />
		</imprint>
	</monogr>
	<note>International Astronomical Union Colloquium</note>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
