Author: buildbot
Date: Fri Sep 18 15:11:53 2015
New Revision: 965910
Log:
Staging update by buildbot for singa
Modified:
websites/staging/singa/trunk/content/ (props changed)
websites/staging/singa/trunk/content/community.html
websites/staging/singa/trunk/content/community/issue-tracking.html
websites/staging/singa/trunk/content/community/mail-lists.html
websites/staging/singa/trunk/content/community/source-repository.html
websites/staging/singa/trunk/content/community/team-list.html
websites/staging/singa/trunk/content/develop/contribute-code.html
websites/staging/singa/trunk/content/develop/contribute-docs.html
websites/staging/singa/trunk/content/develop/how-contribute.html
websites/staging/singa/trunk/content/develop/schedule.html
websites/staging/singa/trunk/content/docs.html
websites/staging/singa/trunk/content/docs/architecture.html
websites/staging/singa/trunk/content/docs/checkpoint.html
websites/staging/singa/trunk/content/docs/cnn.html
websites/staging/singa/trunk/content/docs/code-structure.html
websites/staging/singa/trunk/content/docs/communication.html
websites/staging/singa/trunk/content/docs/data.html
websites/staging/singa/trunk/content/docs/debug.html
websites/staging/singa/trunk/content/docs/distributed-training.html
websites/staging/singa/trunk/content/docs/examples.html
websites/staging/singa/trunk/content/docs/frameworks.html
websites/staging/singa/trunk/content/docs/installation.html
websites/staging/singa/trunk/content/docs/layer.html
websites/staging/singa/trunk/content/docs/lmdb.html
websites/staging/singa/trunk/content/docs/mlp.html
websites/staging/singa/trunk/content/docs/model-config.html
websites/staging/singa/trunk/content/docs/neural-net.html
websites/staging/singa/trunk/content/docs/neuralnet-partition.html
websites/staging/singa/trunk/content/docs/overview.html
websites/staging/singa/trunk/content/docs/param.html
websites/staging/singa/trunk/content/docs/programmer-guide.html
websites/staging/singa/trunk/content/docs/programming-guide.html
websites/staging/singa/trunk/content/docs/quick-start.html
websites/staging/singa/trunk/content/docs/rbm.html
websites/staging/singa/trunk/content/docs/rnn.html
websites/staging/singa/trunk/content/docs/train-one-batch.html
websites/staging/singa/trunk/content/docs/updater.html
websites/staging/singa/trunk/content/index.html
websites/staging/singa/trunk/content/introduction.html
websites/staging/singa/trunk/content/quick-start.html
Propchange: websites/staging/singa/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Sep 18 15:11:53 2015
@@ -1 +1 @@
-1702958
+1703880
Modified: websites/staging/singa/trunk/content/community.html
==============================================================================
--- websites/staging/singa/trunk/content/community.html (original)
+++ websites/staging/singa/trunk/content/community.html Fri Sep 18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Community</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="./js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/community/issue-tracking.html
==============================================================================
--- websites/staging/singa/trunk/content/community/issue-tracking.html
(original)
+++ websites/staging/singa/trunk/content/community/issue-tracking.html Fri Sep
18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Issue Tracking</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/community/mail-lists.html
==============================================================================
--- websites/staging/singa/trunk/content/community/mail-lists.html (original)
+++ websites/staging/singa/trunk/content/community/mail-lists.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Project Mailing Lists</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/community/source-repository.html
==============================================================================
--- websites/staging/singa/trunk/content/community/source-repository.html
(original)
+++ websites/staging/singa/trunk/content/community/source-repository.html Fri
Sep 18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Source Repository</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/community/team-list.html
==============================================================================
--- websites/staging/singa/trunk/content/community/team-list.html (original)
+++ websites/staging/singa/trunk/content/community/team-list.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – The SINGA Team</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/develop/contribute-code.html
==============================================================================
--- websites/staging/singa/trunk/content/develop/contribute-code.html (original)
+++ websites/staging/singa/trunk/content/develop/contribute-code.html Fri Sep
18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – How to Contribute Code</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/develop/contribute-docs.html
==============================================================================
--- websites/staging/singa/trunk/content/develop/contribute-docs.html (original)
+++ websites/staging/singa/trunk/content/develop/contribute-docs.html Fri Sep
18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – How to Contribute Documentation</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/develop/how-contribute.html
==============================================================================
--- websites/staging/singa/trunk/content/develop/how-contribute.html (original)
+++ websites/staging/singa/trunk/content/develop/how-contribute.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – How to Contribute to SINGA</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/develop/schedule.html
==============================================================================
--- websites/staging/singa/trunk/content/develop/schedule.html (original)
+++ websites/staging/singa/trunk/content/develop/schedule.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Development Schedule</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
@@ -502,7 +508,7 @@
<tr class="b">
-<td>0.1 August </td>
+<td>0.1 September </td>
<td>Neural Network </td>
Modified: websites/staging/singa/trunk/content/docs.html
==============================================================================
--- websites/staging/singa/trunk/content/docs.html (original)
+++ websites/staging/singa/trunk/content/docs.html Fri Sep 18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Documentation</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="./js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
@@ -485,50 +491,57 @@
<div id="bodyColumn" class="span10" >
<h1>Documentation</h1>
+<hr />
<ul>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/overview">Introduction</a></li>
-
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/installation">Installation</a></li>
+<li><a href="docs/overview.html">Introduction</a></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/quick-start">Quick Start</a></li>
+<li><a href="docs/installation.html">Installation</a></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/programming-guide">Programming
Guide</a></li>
+<li><a href="docs/quick-start.html">Quick Start</a></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/neural-net">NeuralNet</a>
+<li><a href="docs/programming-guide.html">Programming Guide</a>
<ul>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/layer">Layer</a></li>
+<li><a href="docs/neural-net.html">NeuralNet</a>
+
+<ul>
+
+<li><a href="docs/layer.html">Layer</a></li>
+
+<li><a href="docs/param.html">Param</a></li>
+ </ul></li>
+
+<li><a href="docs/train-one-batch.html">TrainOneBatch</a></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/param">Param</a></li>
+<li><a href="docs/updater.html">Updater</a></li>
</ul></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/train-one-batch">TrainOneBatch</a></li>
+<li><a href="docs/distributed-training.html">Distributed Training</a></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/updater">Updater</a></li>
+<li><a href="docs/data.html">Data Preparation</a></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/distributed-training">Distributed
Training</a></li>
+<li><a href="docs/checkpoint.html">Checkpoint and Resume</a></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/data">Data Preparation</a></li>
-
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/checkpoint">Checkpoint and
Resume</a></li>
-
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/examples.html">Examples</a></li>
+<li><a href="docs/examples.html">Examples</a>
+<ul>
+
<li>Feed-forward models
-
+
<ul>
+
+<li><a href="docs/cnn.html">CNN</a></li>
+
+<li><a href="docs/mlp.html">MLP</a></li>
+ </ul></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/cnn">CNN</a></li>
+<li><a href="docs/rbm.html">RBM + Auto-encoder</a></li>
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/mlp">MLP</a></li>
+<li><a href="docs/rnn.html">RNN</a></li>
</ul></li>
-
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/rbm">RBM + Auto-encoder</a></li>
-
-<li><a class="externalLink"
href="http://singa.incubator.apache.org/docs/rnn">RNN</a></li>
</ul>
</div>
</div>
Modified: websites/staging/singa/trunk/content/docs/architecture.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/architecture.html (original)
+++ websites/staging/singa/trunk/content/docs/architecture.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – SINGA Architecture</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
@@ -483,9 +489,9 @@
<div id="bodyColumn" class="span10" >
<h1>SINGA Architecture</h1>
+<hr />
<div class="section">
-<div class="section">
-<h3><a name="Logical_Architecture"></a>Logical Architecture</h3>
+<h2><a name="Logical_Architecture"></a>Logical Architecture</h2>
<p><img src="http://singa.incubator.apache.org/assets/image/logical.png"
style="width: 550px" alt="" />
<p><b> Fig.1 - Logical system architecture</b></p>
<p>SINGA has flexible architecture to support different distributed <a
class="externalLink"
href="http://singa.incubator.apache.org/docs/frameworks.html">training
frameworks</a> (both synchronous and asynchronous). The logical system
architecture is shown in Fig.1. The architecture consists of multiple server
groups and worker groups:</p>
@@ -507,9 +513,9 @@
<li><a href=""><b>Hybrid parallelism</b></a>. SINGA also supports hybrid
parallelism.</li>
</ul></div>
<div class="section">
-<h3><a name="Implementation"></a>Implementation</h3>
+<h2><a name="Implementation"></a>Implementation</h2>
<p>In SINGA, servers and workers are execution units running in separate
threads. They communicate through <a class="externalLink"
href="http://singa.incubator.apache.org/docs/communication.html">messages</a>.
Every process runs the main thread as a stub that aggregates local messages and
forwards them to corresponding (remote) receivers.</p>
-<p>Each server group and worker group have a <i>ParamShard</i> object
representing a complete model replica. If workers and servers resident in the
same process, their <i>ParamShard</i> (partitions) can be configured to share
the same memory space. In this case, the messages transferred between different
execution units just contain pointers to the data, which reduces the
communication cost. Unlike in inter-process cases, the messages have to include
the parameter values.</p></div></div>
+<p>Each server group and worker group have a <i>ParamShard</i> object
representing a complete model replica. If workers and servers resident in the
same process, their <i>ParamShard</i> (partitions) can be configured to share
the same memory space. In this case, the messages transferred between different
execution units just contain pointers to the data, which reduces the
communication cost. Unlike in inter-process cases, the messages have to include
the parameter values.</p></div>
</div>
</div>
</div>
Modified: websites/staging/singa/trunk/content/docs/checkpoint.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/checkpoint.html (original)
+++ websites/staging/singa/trunk/content/docs/checkpoint.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – CheckPoint</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
@@ -483,6 +489,7 @@
<div id="bodyColumn" class="span10" >
<h1>CheckPoint</h1>
+<hr />
<p>SINGA checkpoints model parameters onto disk periodically according to user
configured frequency. By checkpointing model parameters, we can</p>
<ol style="list-style-type: decimal">
@@ -507,12 +514,18 @@
<div class="source">
<div class="source"><pre class="prettyprint"># job.conf
-workspace: "WORKSPACE"
checkpoint_after: 100
checkpoint_frequency: 300
...
</pre></div></div>
-<p>Checkpointing files are located at
<i>WORKSPACE/checkpoint/stepSTEP-workerWORKERID.bin</i>. For the above
configuration, after training for 700 steps, there would be two checkpointing
files,</p>
+<p>Checkpointing files are located at
<i>WORKSPACE/checkpoint/stepSTEP-workerWORKERID.bin</i>. <i>WORKSPACE</i> is
configured in</p>
+
+<div class="source">
+<div class="source"><pre class="prettyprint">cluster {
+ workspace:
+}
+</pre></div></div>
+<p>For the above configuration, after training for 700 steps, there would be
two checkpointing files,</p>
<div class="source">
<div class="source"><pre class="prettyprint">step400-worker0.bin
@@ -547,16 +560,7 @@ checkpoint : "WORKSPACE/checkpoint/
<div class="source">
<div class="source"><pre class="prettyprint">./bin/singa-run.sh -conf JOB_CONF
-</pre></div></div>
-<p>{% comment %}</p></div>
-<div class="section">
-<h2><a name="Advanced_user_guide"></a>Advanced user guide</h2>
-<p>Checkpointing is done in the <a class="externalLink"
href="http://singa.incubator.apache.org/api/classsinga_1_1Worker.html">Worker
class</a>. Only <tt>Param</tt>s from the first group are dumped into
checkpointing files. For a <tt>Param</tt> object, its name, version and values
are saved. It is possible that the snapshot is separated into multiple files
because the neural net is partitioned into multiple workers.</p>
-<p>The Worker’s <tt>InitLocalParam</tt> function will initialize
parameters from checkpointing files if the <tt>checkpoint</tt> field is set.
Otherwise it randomly initialize them using user configured initialization
method. The <tt>Param</tt> objects are matched based on name. If a
<tt>Param</tt> object is not configured with a name, <tt>NeuralNet</tt> class
will automatically create one for it based on the name of the layer. The
<tt>checkpoint</tt> can be set by users (Application 1) or by the
<tt>Resume</tt> function (Application 2) of the Trainer class, which finds the
files for the latest snapshot and add them to the <tt>checkpoint</tt> filed. It
also sets the <tt>step</tt> field of model configuration to the checkpoint step
(extracted from file name).</p>
-<div class="section">
-<h3><a name="Caution"></a>Caution</h3>
-<p>Both two applications must be taken carefully when <tt>Param</tt> objects
are partitioned due to model partitioning. Because if the training is done
using 2 workers, while the new model (or continue training) is trained with 3
workers, then the same original <tt>Param</tt> object is partitioned in
different ways and hence cannot be matched.</p>
-<p>{% endcomment %}</p></div></div>
+</pre></div></div></div>
</div>
</div>
</div>
Modified: websites/staging/singa/trunk/content/docs/cnn.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/cnn.html (original)
+++ websites/staging/singa/trunk/content/docs/cnn.html Fri Sep 18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – CNN Example</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
@@ -483,6 +489,7 @@
<div id="bodyColumn" class="span10" >
<h1>CNN Example</h1>
+<hr />
<p>Convolutional neural network (CNN) is a type of feed-forward artificial
neural network widely used for image and video classification. In this example,
we will use a deep CNN model to do image classification for the <a
class="externalLink" href="http://www.cs.toronto.edu/~kriz/cifar.html">CIFAR10
dataset</a>.</p>
<div class="section">
<h2><a name="Running_instructions"></a>Running instructions</h2>
Modified: websites/staging/singa/trunk/content/docs/code-structure.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/code-structure.html (original)
+++ websites/staging/singa/trunk/content/docs/code-structure.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Code Structure</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/docs/communication.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/communication.html (original)
+++ websites/staging/singa/trunk/content/docs/communication.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Communication</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
@@ -483,14 +489,14 @@
<div id="bodyColumn" class="span10" >
<h1>Communication</h1>
+<hr />
<p>Different messaging libraries has different benefits and drawbacks. For
instance, MPI provides fast message passing between GPUs (using GPUDirect), but
does not support fault-tolerance well. On the contrary, systems using ZeroMQ
can be fault-tolerant, but does not support GPUDirect. The AllReduce function
of MPI is also missing in ZeroMQ which is efficient for data aggregation for
distributed training. In Singa, we provide general messaging APIs for
communication between threads within a process and across processes, and let
users choose the underlying implementation (MPI or ZeroMQ) that meets their
requirements.</p>
<p>Singa’s messaging library consists of two components, namely the
message, and the socket to send and receive messages. <b>Socket</b> refers to a
Singa defined data structure instead of the Linux Socket. We will introduce the
two components in detail with the following figure as an example
architecture.</p>
<p><img src="../images/arch/arch2.png" style="width: 550px" alt="" /> <img
src="../images/arch/comm.png" style="width: 550px" alt="" />
<p><b> Fig.1 - Example physical architecture and network connection</b></p>
<p>Fig.1 shows an example physical architecture and its network connection. <a
class="externalLink"
href="http://singa.incubator.apache.org/docs/architecture.html}">Section-partition
server side ParamShard</a> has a detailed description of the architecture.
Each process consists of one main thread running the stub and multiple
background threads running the worker and server tasks. The stub of the main
thread forwards messages among threads . The worker and server tasks are
performed by the background threads.</p>
<div class="section">
-<div class="section">
-<h3><a name="Message"></a>Message</h3>
+<h2><a name="Message"></a>Message</h2>
<p><object type="image/svg+xml" style="width: 100px" data="../images/msg.svg">
Not supported </object>
<p><b> Fig.2 - Logical message format</b></p>
<p>Fig.2 shows the logical message format which has two parts, the header and
the content. The message header includes the sender’s and
receiver’s IDs, each consisting of the group ID and the worker/server ID
within the group. The stub forwards messages by looking up an address table
based on the receiver’s ID. There are two sets of messages according to
the message type defined below.</p>
@@ -700,10 +706,10 @@ inline int AddrType(int addr) {
}
</pre></div></div></div>
<div class="section">
-<h3><a name="Socket"></a>Socket</h3>
-<p>In Singa, there are two types of sockets, the Dealer Socket and the Router
Socket, whose names are adapted from ZeroMQ. All connections are of the same
type, i.e., Dealer<–>Router. The communication between dealers and
routers are asynchronous. In other words, one Dealer socket can talk with
multiple Router sockets, and one Router socket can talk with multiple Dealer
sockets.</p>
+<h2><a name="Socket"></a>Socket</h2>
+<p>In SINGA, there are two types of sockets, the Dealer Socket and the Router
Socket, whose names are adapted from ZeroMQ. All connections are of the same
type, i.e., Dealer<–>Router. The communication between dealers and
routers are asynchronous. In other words, one Dealer socket can talk with
multiple Router sockets, and one Router socket can talk with multiple Dealer
sockets.</p>
<div class="section">
-<h4><a name="Base_Socket"></a>Base Socket</h4>
+<h3><a name="Base_Socket"></a>Base Socket</h3>
<p>The basic functions of a Singa Socket is to send and receive messages. The
APIs are:</p>
<div class="source">
@@ -759,7 +765,7 @@ inline int AddrType(int addr) {
};
</pre></div></div></div>
<div class="section">
-<h4><a name="Dealer_Socket"></a>Dealer Socket</h4>
+<h3><a name="Dealer_Socket"></a>Dealer Socket</h3>
<p>The Dealer socket inherits from the base Socket. In Singa, every Dealer
socket only connects to one Router socket as shown in Fig.1. The connection is
set up by connecting the Dealer socket to the endpoint of a Router socket.</p>
<div class="source">
@@ -791,7 +797,7 @@ inline int AddrType(int addr) {
};
</pre></div></div></div>
<div class="section">
-<h4><a name="Router_Socket"></a>Router Socket</h4>
+<h3><a name="Router_Socket"></a>Router Socket</h3>
<p>The Router socket inherits from the base Socket. One Router socket connects
to at least one Dealer socket. Upon receiving a message, the router forwards it
to the appropriate dealer according to the receiver’s ID of this
message.</p>
<div class="source">
@@ -829,16 +835,16 @@ inline int AddrType(int addr) {
};
</pre></div></div></div></div>
<div class="section">
-<h3><a name="Implementation"></a>Implementation</h3>
+<h2><a name="Implementation"></a>Implementation</h2>
<div class="section">
-<h4><a name="ZeroMQ"></a>ZeroMQ</h4>
+<h3><a name="ZeroMQ"></a>ZeroMQ</h3>
<p><b>Why <a class="externalLink" href="http://zeromq.org/">ZeroMQ</a>?</b>
Our previous design used MPI for communication between Singa processes. But MPI
is a poor choice when it comes to fault-tolerance, because failure at one node
brings down the entire MPI cluster. ZeroMQ, on the other hand, is fault
tolerant in the sense that one node failure does not affect the other nodes.
ZeroMQ consists of several basic communication patterns that can be easily
combined to create more complex network topologies.</p>
<p><img src="../images/msg-flow.png" style="width: 550px" alt="" />
<p><b> Fig.3 - Messages flow for ZeroMQ</b></p>
<p>The communication APIs of Singa are similar to the DEALER-ROUTER pattern of
ZeroMQ. Hence we can easily implement the Dealer socket using ZeroMQ’s
DEALER socket, and Router socket using ZeroMQ’s ROUTER socket. The
intra-process can be implemented using ZeroMQ’s inproc transport, and
the inter-process can be implemented using the tcp transport (To exploit the
Infiniband, we can use the sdp transport). Fig.3 shows the message flow using
ZeroMQ as the underlying implementation. The messages sent from dealers has two
frames for the message header, and one or more frames for the message content.
The messages sent from routers have another frame for the identifier of the
destination dealer.</p>
<p>Besides the DEALER-ROUTER pattern, we may also implement the Dealer socket
and Router socket using other ZeroMQ patterns. To be continued.</p></div>
<div class="section">
-<h4><a name="MPI"></a>MPI</h4>
+<h3><a name="MPI"></a>MPI</h3>
<p>Since MPI does not provide intra-process communication, we have to
implement it inside the Router and Dealer socket. A simple solution is to
allocate one message queue for each socket. Messages sent to one socket is
inserted into the queue of that socket. We create a SafeQueue class to ensure
the consistency of the queue. All queues are created by the main thread and
passed to all sockets’ constructor via <i>args</i>.</p>
<div class="source">
@@ -856,51 +862,7 @@ class SafeQueue{
};
</pre></div></div>
<p>For inter-process communication, we serialize the message and call
MPI’s send/receive functions to transfer them. All inter-process
connections are setup by MPI at the beginning. Consequently, the Connect and
Bind functions do nothing for both inter-process and intra-process
communication.</p>
-<p>MPI’s AllReduce function is efficient for data aggregation in
distributed training. For example, <a class="externalLink"
href="http://arxiv.org/abs/1501.02876">DeepImage of Baidu</a> uses AllReduce to
aggregate the updates of parameter from all workers. It has similar
architecture as <a href="architecture.html">Fig.2</a>, where every process has
a server group and is connected with all other processes. Hence, we can
implement DeepImage in Singa by simply using MPI’s AllReduce function
for inter-process communication.</p>
-<p>{% comment %}</p></div>
-<div class="section">
-<h4><a name="Server_socket"></a>Server socket</h4>
-<p>Each server has a DEALER socket to communicate with the stub in the main
thread via an <i>in-proc</i> socket. It receives requests issued from workers
and other servers, and forwarded by the ROUTER of the stub. Since the requests
are forwarded by the stub, we can make the location of workers transparent to
server threads. The stub records the locations of workers and servers.</p>
-<p>As explained previously in the [APIs](<a class="externalLink"
href="http://singa.incubator.apache.org{%">http://singa.incubator.apache.org{%</a>
post_url /docs/2015-03-20-parameter-management %}) for parameter management,
some requests may not be processed immediately but have to be re-queued. For
instance, the Get request cannot be processed if the requested parameter is not
available, i.e., the parameter has not been put into the server’s
ParamShard. The re-queueing operation is implemented sendings the messages to
the ROUTER socket of the stub which treats the message as a newly arrived
request and queues it for processing.</p></div>
-<div class="section">
-<h4><a name="Worker_socket"></a>Worker socket</h4>
-<p>Each worker thread has a DEALER socket to communicate with the stub in the
main thread via an <i>in-proc</i> socket. It sends (Get/Update) requests to the
ROUTER in the stub which forwards the request to (local or remote) processes.
In case of the partition of ParamShard of worker side, it may also transfer
data with other workers via the DEALER socket. Again, the location of the other
side (a server or worker) of the communication is transparent to the worker.
The stub handles the addressing.</p>
-<p>PMClient executes the training logic, during which it generates GET and
UPDATE requests. A request received at the worker’s main thread contains
ID of the PMClient instance. The worker determines which server to send the
request based on its content, then sends it via the corresponding socket.
Response messages received from any of the server socket are forwarded to the
in-proc ROUTER socket. Since each response header contains the PMClient ID, it
is routed to the correct instance.</p></div>
-<div class="section">
-<h4><a name="Stub_sockets"></a>Stub sockets</h4>
-<div class="section">
-<h5><a name="ROUTER_socket"></a>ROUTER socket</h5>
-<p>The main thread has a ROUTER socket to communicate with background
threads.</p>
-<p>It forwards the requests from workers to background servers. There can be
multiple servers.If all servers maintain the same (sub) ParamShard, then the
request can be forwarded to any of them. Load-balance (like round-robin) can be
implemented in the stub to improve the performance. If each server maintains a
sub-set of the local ParamShard, then the stub forwards each request to the
corresponding server. It also forwards the synchronization requests from remote
servers to local servers in the same way.</p>
-<p>In the case of neural network partition (i.e., model partition), neighbor
layers would transfer data with each other. Hence, the ROUTER would forwards
data transfer requests from one worker to other worker. The stub looks up the
location table to decide where to forward each request.</p></div>
-<div class="section">
-<h5><a name="DEALER_sockets"></a>DEALER sockets</h5>
-<p>The main thread has multiple DEALER sockets to communicate with other
processes, one socket per process. Two processes are connected if one of the
following cases exists:</p>
-
-<ul>
-
-<li>one worker group spans across the two processes;</li>
-
-<li>two connected server groups are separated in the two processes;</li>
-
-<li>workers and the subscribed servers are separated in the two processes.</li>
-</ul>
-<p>All messages in SINGA are of multi-frame ZeroMQ format. The figure above
demonstrates different types of messages exchanged in the system.</p>
-
-<ol style="list-style-type: decimal">
-
-<li>Requests generated by PMClient consist of the parameter content (which
could be empty), followed by the parameter ID (key) and the request type
(GET/PUT/REQUEST). Responses received by PMClient are also of this format.</li>
-
-<li>Messages received by the worker’s main thread from PMClient
instances contain another frame identifying the PMClient connection (or
PMClient ID).</li>
-
-<li>Requests originating form a worker and arriving at the server contain
another frame identifying the worker’s connection (or Worker ID).</li>
-
-<li>Requests originating from another server and arriving at the server have
the same format as (3), but the first frame identifies the server connection
(or Server ID).</li>
-
-<li>After a PMServer processes a request, it generates a message with the
format similar to (3) but with extra frame indicating if the message is to be
routed back to a worker (a response message) or to route to another server (a
SYNC request).</li>
-
-<li>When a request is re-queued, the PMServer generates a message and sends it
directly to the server’s front-end socket. The re-queued request seen by
the server’s main thread consists of all the frames in (3), followed by
a REQUEUED frame, and finally by another frame generated by the ROUTER socket
identifying connection from the PMServer instance. The main thread then strips
off these additional two frames before forwarding it to another PMServer
instance like another ordinary request. {% endcomment %}</li>
-</ol></div></div></div></div>
+<p>MPI’s AllReduce function is efficient for data aggregation in
distributed training. For example, <a class="externalLink"
href="http://arxiv.org/abs/1501.02876">DeepImage of Baidu</a> uses AllReduce to
aggregate the updates of parameter from all workers. It has similar
architecture as <a href="architecture.html">Fig.2</a>, where every process has
a server group and is connected with all other processes. Hence, we can
implement DeepImage in Singa by simply using MPI’s AllReduce function
for inter-process communication.</p></div></div>
</div>
</div>
</div>
Modified: websites/staging/singa/trunk/content/docs/data.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/data.html (original)
+++ websites/staging/singa/trunk/content/docs/data.html Fri Sep 18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Data Preparation</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/docs/debug.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/debug.html (original)
+++ websites/staging/singa/trunk/content/docs/debug.html Fri Sep 18 15:11:53
2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – How to Debug</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
@@ -484,15 +490,11 @@
<h1>How to Debug</h1>
<hr />
-<div class="section">
-<div class="section">
-<h3><a name="Compile_with_-g"></a>Compile with -g</h3>
-<p>Since SINGA is developed on Linux using C++, GDB is the preferred debugging
tool. To use GDB, the code must be compiled with <tt>-g</tt> flag. The files
(e.g., Makefile.am) from GNU compilation tool are not easy to change. Hence
SINGA comes with a Makefile.example for developers. To compile the code for
debugging, just</p>
+<p>Since SINGA is developed on Linux using C++, GDB is the preferred debugging
tool. To use GDB, the code must be compiled with <tt>-g</tt> flag. This is
enabled by</p>
<div class="source">
-<div class="source"><pre class="prettyprint">cp Makefile.example Makefile
-#change -O3 to -g for the CXXFLAGS
-make singa
+<div class="source"><pre class="prettyprint">./configure --enable-debug
+make
</pre></div></div>
<p>To debug, first start zookeeper if it is not started yet, and launch GDB</p>
@@ -500,14 +502,14 @@ make singa
<div class="source"><pre class="prettyprint"># do this for only once
./bin/zk-service.sh start
# do this every time
-gdb singa
+gdb ./bin/singa
</pre></div></div>
<p>Then set the command line arguments</p>
<div class="source">
<div class="source"><pre class="prettyprint">set args -conf JOBCONF
</pre></div></div>
-<p>Now you can set your breakpoints and start running.</p></div></div>
+<p>Now you can set your breakpoints and start running.</p>
</div>
</div>
</div>
Modified: websites/staging/singa/trunk/content/docs/distributed-training.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/distributed-training.html
(original)
+++ websites/staging/singa/trunk/content/docs/distributed-training.html Fri Sep
18 15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Distributed Training</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/docs/examples.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/examples.html (original)
+++ websites/staging/singa/trunk/content/docs/examples.html Fri Sep 18 15:11:53
2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Example Models</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/docs/frameworks.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/frameworks.html (original)
+++ websites/staging/singa/trunk/content/docs/frameworks.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Distributed Training Framework</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
Modified: websites/staging/singa/trunk/content/docs/installation.html
==============================================================================
--- websites/staging/singa/trunk/content/docs/installation.html (original)
+++ websites/staging/singa/trunk/content/docs/installation.html Fri Sep 18
15:11:53 2015
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 2015-09-14
+ | Generated by Apache Maven Doxia at 2015-09-18
| Rendered using Apache Maven Fluido Skin 1.4
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20150914" />
+ <meta name="Date-Revision-yyyymmdd" content="20150918" />
<meta http-equiv="Content-Language" content="en" />
<title>Apache SINGA – Installation</title>
<link rel="stylesheet" href="../css/apache-maven-fluido-1.4.min.css" />
@@ -20,7 +20,13 @@
<script type="text/javascript"
src="../js/apache-maven-fluido-1.4.min.js"></script>
-
+
+
+<script
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
type="text/javascript"></script>
+
+
+<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath:
[['$','$'], ['\\(','\\)']]}});</script>
+
</head>
<body class="topBarEnabled">
@@ -483,11 +489,11 @@
<div id="bodyColumn" class="span10" >
<h1>Installation</h1>
+<hr />
<div class="section">
-<div class="section">
-<h3><a name="Dependencies"></a>Dependencies</h3>
+<h2><a name="Dependencies"></a>Dependencies</h2>
<p>SINGA is developed and tested on Linux platforms.</p>
-<p>The following dependenies are required:</p>
+<p>The following dependent libraries are required:</p>
<ul>
@@ -513,19 +519,12 @@
<ul>
-<li>
-<p>gtest version 1.7.0</p></li>
-
-<li>
-<p>opencv version 2.4.9</p></li>
-
-<li>
-<p>lmdb version 0.9.10</p></li>
+<li>lmdb version 0.9.10</li>
</ul>
-<p>SINGA comes with a script for installing the external libraries (see
below).</p></div>
+<p>SINGA comes with a script for installing the above libraries (see
below).</p></div>
<div class="section">
-<h3><a name="Building_SINGA_from_source"></a>Building SINGA from source</h3>
-<p>SINGA is built using GNU autotools. GCC (version >= 4.8) is required.
There are three ways to build SINGA,</p>
+<h2><a name="Building_SINGA_from_source"></a>Building SINGA from source</h2>
+<p>SINGA is built using GNU autotools. GCC (version >= 4.8) is required.
There are two ways to build SINGA,</p>
<ul>
@@ -540,6 +539,7 @@ $ ./configure
$ make
</pre></div></div></li>
</ul>
+<p>Note: It is an oversight that we forgot to delete the singa repo under <a
class="externalLink" href="https://github.com/orgs/nusinga">nusinga</a>
account after we became Apache Incubator project – the source in that
repo was not up to date, and we apologize for any inconvenience.</p>
<ul>
@@ -558,35 +558,35 @@ $ make
<div class="source"><pre class="prettyprint">$ ./configure --enable-lmdb
</pre></div></div></li>
</ul>
+<p>The SINGA test is not included by default settings. If you want to run the
test, please compile with <tt>--enable-test</tt>. You can run:</p>
-<ul>
-
-<li>
-<p>In case you do not have the GNU auto tools to run <tt>autogen.sh</tt>,
SINGA provides a Makefile.example file, which is used as</p>
-
<div class="source">
-<div class="source"><pre class="prettyprint">$ cp Makefile.example Makefile
+<div class="source"><pre class="prettyprint">$ ./configure --enable-test
$ make
</pre></div></div>
-<p>Code depending on lmdb can be added into the compilation by</p>
-
+<p>After compilation, you will find the binary file singatest. Just run it!
More details about configure script can be found by running:</p>
+
<div class="source">
-<div class="source"><pre class="prettyprint">make -DUSE_LMDB
-</pre></div></div></li>
-</ul>
-<p>After compiling SINGA successfully, the <tt>libsinga.so</tt> will be
generated into .lib/ folder and an executable file <tt>singa</tt> is generated
under bin/.</p>
+<div class="source"><pre class="prettyprint"> $ ./configure --help
+</pre></div></div>
+<p>After compiling SINGA successfully, the <i>libsinga.so</i> and the
executable file <i>singa</i> will be generated into <i>.libs/</i> folder.</p>
<p>If some dependent libraries are missing (or not detected), you can use the
following script to download and install them:</p>
<div class="source">
<div class="source"><pre class="prettyprint">$ cd thirdparty
$ ./install.sh MISSING_LIBRARY_NAME1 YOUR_INSTALL_PATH1 MISSING_LIBRARY_NAME2
YOUR_INSTALL_PATH2 ...
</pre></div></div>
-<p>If you do not specify the installation path, the library will be installed
in the default folder specified by the software itself. For example, if you
want to build <tt>zeromq</tt> library in system folder and <tt>gflags</tt> in
<tt>/usr/local</tt>, just run:</p>
+<p>If you do not specify the installation path, the library will be installed
in the default folder specified by the software itself. For example, if you
want to install <tt>zeromq</tt> library in the default system folder, run it
as</p>
+
+<div class="source">
+<div class="source"><pre class="prettyprint">$ ./install.sh zeromq
+</pre></div></div>
+<p>Or, if you want to install it into another folder,</p>
<div class="source">
-<div class="source"><pre class="prettyprint">$ ./install.sh zeromq gflags
/usr/local
+<div class="source"><pre class="prettyprint">$ ./install.sh zeromq
--prefix=YOUR_FOLDER
</pre></div></div>
-<p>You can also install all dependencies in <tt>/usr/local</tt> directory:</p>
+<p>You can also install all dependencies in <i>/usr/local</i> directory:</p>
<div class="source">
<div class="source"><pre class="prettyprint">$ ./install.sh all /usr/local
@@ -597,11 +597,9 @@ $ ./install.sh MISSING_LIBRARY_NAME1 YOU
<div class="source"><pre class="prettyprint">MISSING_LIBRARY_NAME LIBRARIES
cmake cmake tools
czmq* czmq lib
-gflags gflags lib
glog glog lib
lmdb lmdb lib
OpenBLAS OpenBLAS lib
-opencv OpenCV
protobuf Google protobuf
zeromq zeromq lib
zookeeper Apache zookeeper
@@ -609,9 +607,9 @@ zookeeper Apache zookeeper
<p>*: Since <tt>czmq</tt> depends on <tt>zeromq</tt>, the script offers you
one more argument to indicate <tt>zeromq</tt> location. The installation
commands of <tt>czmq</tt> is:</p>
<div class="source">
-<div class="source"><pre class="prettyprint">$./install.sh czmq /usr/local
/usr/local/zeromq
+<div class="source"><pre class="prettyprint">$./install.sh czmq /usr/local
/usr/local/zeromq
</pre></div></div>
-<p>After the execution, <tt>czmq</tt> will be installed in <tt>/usr/local</tt>
while <tt>zeromq</tt> is installed in <tt>/usr/local/zeromq</tt>.</p></div>
+<p>After the execution, <tt>czmq</tt> will be installed in <i>/usr/local</i>.
The last path specifies the path to zeromq.</p>
<div class="section">
<h3><a name="FAQ"></a>FAQ</h3>
<p>Q1:While compiling SINGA and installing <tt>glog</tt> on max OS X, I get
fatal error <tt>'ext/slist' file not found</tt></p>
@@ -634,7 +632,7 @@ zookeeper Apache zookeeper
</pre></div></div>
<p>Or as an alternative option, you can also edit LIBRARY_PATH to figure it
out.</p>
<p>Q4:I get <tt>ImportError: cannot import name enum_type_wrapper</tt> from
google.protobuf.internal when I try to import .py files.</p>
-<p>A4:After install google protobuf by “make install”, we should
install python runtime libraries. Go to protobuf source directory, run:</p>
+<p>A4:After install google protobuf by <tt>make install</tt>, we should
install python runtime libraries. Go to protobuf source directory, run:</p>
<div class="source">
<div class="source"><pre class="prettyprint">$ cd /PROTOBUF/SOURCE/FOLDER