forked from materialsproject/pymatgen
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pymatgen.apps.borg.queen.html
180 lines (163 loc) · 9.73 KB
/
pymatgen.apps.borg.queen.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
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>pymatgen.apps.borg.queen module — pymatgen 2019.5.1 documentation</title>
<link rel="stylesheet" href="_static/proBlue.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></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="_static/language_data.js"></script>
<script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
<link rel="shortcut icon" href="_static/favicon.ico"/>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-33990148-1']);
_gaq.push(['_trackPageview']);
</script>
</head><body>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">pymatgen 2019.5.1 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="module-pymatgen.apps.borg.queen">
<span id="pymatgen-apps-borg-queen-module"></span><h1>pymatgen.apps.borg.queen module<a class="headerlink" href="#module-pymatgen.apps.borg.queen" title="Permalink to this headline">¶</a></h1>
<p>This module defines the BorgQueen class, which manages drones to assimilate
data using Python’s multiprocessing.</p>
<dl class="class">
<dt id="pymatgen.apps.borg.queen.BorgQueen">
<em class="property">class </em><code class="descname">BorgQueen</code><span class="sig-paren">(</span><em>drone</em>, <em>rootpath=None</em>, <em>number_of_drones=1</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/apps/borg/queen.html#BorgQueen"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.apps.borg.queen.BorgQueen" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>The Borg Queen controls the drones to assimilate data in an entire
directory tree. Uses multiprocessing to speed up things considerably. It
also contains convenience methods to save and load data between sessions.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>drone</strong> (<em>Drone</em>) – An implementation of
<a class="reference internal" href="pymatgen.apps.borg.hive.html#pymatgen.apps.borg.hive.AbstractDrone" title="pymatgen.apps.borg.hive.AbstractDrone"><code class="xref py py-class docutils literal notranslate"><span class="pre">pymatgen.apps.borg.hive.AbstractDrone</span></code></a> to use for
assimilation.</p></li>
<li><p><strong>rootpath</strong> (<em>str</em>) – The root directory to start assimilation. Leave it
as None if you want to do assimilation later, or is using the
BorgQueen to load previously assimilated data.</p></li>
<li><p><strong>ndrones</strong> (<em>int</em>) – Number of drones to parallelize over.
Typical machines today have up to four processors. Note that you
won’t see a 100% improvement with two drones over one, but you
will definitely see a significant speedup of at least 50% or so.
If you are running this over a server with far more processors,
the speedup will be even greater.</p></li>
</ul>
</dd>
</dl>
<dl class="method">
<dt id="pymatgen.apps.borg.queen.BorgQueen.get_data">
<code class="descname">get_data</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/apps/borg/queen.html#BorgQueen.get_data"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.apps.borg.queen.BorgQueen.get_data" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns an list of assimilated objects</p>
</dd></dl>
<dl class="method">
<dt id="pymatgen.apps.borg.queen.BorgQueen.load_data">
<code class="descname">load_data</code><span class="sig-paren">(</span><em>filename</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/apps/borg/queen.html#BorgQueen.load_data"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.apps.borg.queen.BorgQueen.load_data" title="Permalink to this definition">¶</a></dt>
<dd><p>Load assimilated data from a file</p>
</dd></dl>
<dl class="method">
<dt id="pymatgen.apps.borg.queen.BorgQueen.parallel_assimilate">
<code class="descname">parallel_assimilate</code><span class="sig-paren">(</span><em>rootpath</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/apps/borg/queen.html#BorgQueen.parallel_assimilate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.apps.borg.queen.BorgQueen.parallel_assimilate" title="Permalink to this definition">¶</a></dt>
<dd><p>Assimilate the entire subdirectory structure in rootpath.</p>
</dd></dl>
<dl class="method">
<dt id="pymatgen.apps.borg.queen.BorgQueen.save_data">
<code class="descname">save_data</code><span class="sig-paren">(</span><em>filename</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/apps/borg/queen.html#BorgQueen.save_data"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.apps.borg.queen.BorgQueen.save_data" title="Permalink to this definition">¶</a></dt>
<dd><p>Save the assimilated data to a file.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>filename</strong> (<em>str</em>) – filename to save the assimilated data to. Note
that if the filename ends with gz or bz2, the relevant gzip
or bz2 compression will be applied.</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="pymatgen.apps.borg.queen.BorgQueen.serial_assimilate">
<code class="descname">serial_assimilate</code><span class="sig-paren">(</span><em>rootpath</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/apps/borg/queen.html#BorgQueen.serial_assimilate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.apps.borg.queen.BorgQueen.serial_assimilate" title="Permalink to this definition">¶</a></dt>
<dd><p>Assimilate the entire subdirectory structure in rootpath serially.</p>
</dd></dl>
</dd></dl>
<dl class="function">
<dt id="pymatgen.apps.borg.queen.order_assimilation">
<code class="descname">order_assimilation</code><span class="sig-paren">(</span><em>args</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/pymatgen/apps/borg/queen.html#order_assimilation"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pymatgen.apps.borg.queen.order_assimilation" title="Permalink to this definition">¶</a></dt>
<dd><p>Internal helper method for BorgQueen to process assimilation</p>
</dd></dl>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="_sources/pymatgen.apps.borg.queen.rst.txt"
rel="nofollow">Show Source</a></li>
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="search.html" method="get">
<input type="text" name="q" />
<input type="submit" value="Go" />
</form>
</div>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">pymatgen 2019.5.1 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
© Copyright 2011, Pymatgen Development Team.
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.0.1.
</div>
<div class="footer">This page uses <a href="http://analytics.google.com/">
Google Analytics</a> to collect statistics. You can disable it by blocking
the JavaScript coming from www.google-analytics.com.
<script type="text/javascript">
(function() {
var ga = document.createElement('script');
ga.src = ('https:' == document.location.protocol ?
'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
ga.setAttribute('async', 'true');
document.documentElement.firstChild.appendChild(ga);
})();
</script>
</div>
</body>
</html>