/
index.html
290 lines (219 loc) · 12.8 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Welcome to Copernicus’s documentation! — Copernicus 2.1 documentation</title>
<link href='https://fonts.googleapis.com/css?family=Lato:400,700|Roboto+Slab:400,700|Inconsolata:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="top" title="Copernicus 2.1 documentation" href="#"/>
<link rel="next" title="Getting Started" href="getting-started.html"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.6.2/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-nav-search">
<a href="#" class="fa fa-home"> Copernicus</a>
<div role="search">
<form id ="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul>
<li class="toctree-l1"><a class="reference internal" href="getting-started.html">Getting Started</a><ul>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#downloading-copernicus">Downloading Copernicus</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#server-setup">Server Setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#client-setup">Client Setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#worker-setup">Worker Setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#summary">Summary</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="network/index.html">Copernicus overlay network</a><ul>
<li class="toctree-l2"><a class="reference internal" href="network/server.html">Server</a></li>
<li class="toctree-l2"><a class="reference internal" href="network/worker.html">Worker</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="tutorials/index.html">Tutorials</a><ul>
<li class="toctree-l2"><a class="reference internal" href="tutorials/md-tutorial.html">Introductory Tutorial</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorials/msm-tutorial.html">MSM Tutorial</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorials/swarms-tutorial.html">Swarms Tutorial</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="developers/index.html">Developer Documentation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="developers/submitting-pull-requests.html">Submitting Pull requetsts</a></li>
<li class="toctree-l2"><a class="reference internal" href="developers/writing-docs.html">Writing Documentation</a></li>
</ul>
</li>
</ul>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="#">Copernicus</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="#">Docs</a> »</li>
<li>Welcome to Copernicus’s documentation!</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/index.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main">
<div class="section" id="welcome-to-copernicus-s-documentation">
<h1>Welcome to Copernicus’s documentation!<a class="headerlink" href="#welcome-to-copernicus-s-documentation" title="Permalink to this headline">¶</a></h1>
<p>Contents:</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="getting-started.html">Getting Started</a><ul>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#downloading-copernicus">Downloading Copernicus</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#server-setup">Server Setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#client-setup">Client Setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#worker-setup">Worker Setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#summary">Summary</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="network/index.html">Copernicus overlay network</a><ul>
<li class="toctree-l2"><a class="reference internal" href="network/server.html">Server</a></li>
<li class="toctree-l2"><a class="reference internal" href="network/worker.html">Worker</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="tutorials/index.html">Tutorials</a><ul>
<li class="toctree-l2"><a class="reference internal" href="tutorials/md-tutorial.html">Introductory Tutorial</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorials/msm-tutorial.html">MSM Tutorial</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorials/swarms-tutorial.html">Swarms Tutorial</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="developers/index.html">Developer Documentation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="developers/submitting-pull-requests.html">Submitting Pull requetsts</a></li>
<li class="toctree-l2"><a class="reference internal" href="developers/writing-docs.html">Writing Documentation</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div class="section" id="introduction">
<h1>Introduction<a class="headerlink" href="#introduction" title="Permalink to this headline">¶</a></h1>
<p>Copernicus is a peer to peer distributed computing platform designed for high level
parallelization of statistical problems.</p>
<p>Many computational problems are growing bigger and require more compute resources.
Bigger problems and more resources put other requirements such as</p>
<ul class="simple">
<li>effective distribution of computational work</li>
<li>fault tolerance of computation</li>
<li>reproducability and traceability of results</li>
<li>Automatic postprocessing of data</li>
<li>Automatic result consolidation</li>
</ul>
<p>Copernicus is a platform aimed at making distributed computing easy to use. Out of the box it provides.</p>
<ul class="simple">
<li>Easy and effective consolidation of heterogeneous compute resources</li>
<li>Automatic resource matching of jobs against compute resources</li>
<li>Automatic fault tolerance of distributed work</li>
<li>A workflow execution engine to easily define a problem and trace its results live</li>
<li>Flexible plugin facilites allowing programs to be integrated to the workflow execution engine</li>
</ul>
<p>This section will cover how copernicus works and what its possibilites are.
The subsequent sections will in detail cover how to use the platform.</p>
<div class="section" id="the-architecture-of-copernicus">
<h2>The architecture of Copernicus<a class="headerlink" href="#the-architecture-of-copernicus" title="Permalink to this headline">¶</a></h2>
<p>Copernicus consists of four components; the Server, the Worker,the Client and the
Workflow execution engine. The server is the backbone of the platform and manages
projects, generates jobs (computational work units) and matches these to the best
computational resource. Workers are programs residing on your computational resources.
They are responsible for executing jobs and returning the results back to the server.
Workers can reside on any type of machine, desktops, laptops, cloud instances or a
cluster environment. The client is the tool where you setup your project and monitor it.
Actually, nothing is running on the client ever. It only sends commands to the server.
This way you can run the client on your laptop, startup a project, close your laptop,
open it up some time later and see that your project has progressed.
All communication between these three components is encrypted.
And as you will see later all communication has to be authorized.</p>
<p>Copernicus is designed in a way so that any individual can set it up,
consolidate any type of resource available and put them to use. There is no central
server that you will communicate to. You have full control of everything.</p>
<p>The workflow execution engine is what allows you to define your problem in a very easy way.
Think of it as a flowchart where you define what you want to do and connect different important blocks.
The workflow resides in the server and is a key component in every copernicus project.
By just providing a workflow with input the server will automatically generate jobs
and handle the execution of those. This way you will never have to focus on what to run where.
Instead you can just focus on defining your problem.</p>
<p>The workflow gives also gives you the possibility to trace your work progress and
look at intermediate results. You will also be a able to alter inputs in the middle
of the run of a project in case things have gone wrong or if you want to test another approach.</p>
<p>Workflow components can actually be any type program. And with the plugin utilites
in copernicus you can define these programs as workflow items, also known as functions.</p>
</div>
<div class="section" id="authors">
<h2>Authors<a class="headerlink" href="#authors" title="Permalink to this headline">¶</a></h2>
<div class="section" id="head-authors-project-leaders">
<h3>Head authors & project leaders<a class="headerlink" href="#head-authors-project-leaders" title="Permalink to this headline">¶</a></h3>
<p>Sander Pronk <br />
Iman Pouya (Royal Institute of Technology, Sweden) <br />
Peter Kasson (University of Virginia, USA) <br />
Erik Lindahl (Royal Institute of Technology, Sweden)</p>
</div>
<div class="section" id="other-current-developers">
<h3>Other current developers<a class="headerlink" href="#other-current-developers" title="Permalink to this headline">¶</a></h3>
<p>Magnus Lundborg (Royal Institute of Technology, Sweden) <br />
Björn Wesen (Royal Institute of Technology,Sweden)</p>
</div>
<div class="section" id="previous-developers-and-contributors">
<h3>Previous developers and contributors<a class="headerlink" href="#previous-developers-and-contributors" title="Permalink to this headline">¶</a></h3>
<p>Patrik Falkman <br />
Grant Rotskoff ( University of California, Berkley, US )</p>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="getting-started.html" class="btn btn-neutral float-right" title="Getting Started"/>Next <span class="fa fa-arrow-circle-right"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>
© Copyright 2015, Sander Pronk, Iman Pouya, Erik Lindahl and others.
</p>
</div>
<a href="https://github.com/snide/sphinx_rtd_theme">Sphinx theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'./',
VERSION:'2.1',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
</script>
</body>
</html>