## 5 IO Data Management and Data Sharing
### Distributed SQL Databases with RPC
#### 5.1.1. Replicated Data Bases and Tables
* HPG3-WS: HP G3 Mini, Intel i5-7500 CPU @ 3.40 GHz, 8 GB DRAM, 6 MB L3 Cache, 4 Cores, Debian 10, WorkShell, node.js v8
* HPZ620-WS: HP Z620 Workstation, Intel Xeon CPU E5-2667 0 @ 2.9 GHz, 2 CPU, 6 Cores/CPU, Debian 10, WorkShell, node.js v8 |
* XEON-WS: Intel Xeon Server, Intel Xeon CPU E3-1225 v3 @ 3.2 GHz, 4 Cores, 8 MB L3 cache, 16 GB DRAM, Debian 10, WorkShell, node.js v8 |
* RP3B-WS: Raspberry 3B, ARMv7 Processor rev 4, BCM 2837, 4 Cores @ 1.2 GHz, 1 GB DRAM, 512 kB L2 cache, Debian 10, WorkShell, node.js v10 |
* CFLX3-WB: Panasonic Notebook CF-LX3, Intel i5-4310U @ 3.0 GHz, 8 GB DRAM, 3 MB L3 cache, 2 Cores, SunOS 11.3, WorkBook, Firefox 52
* CFLX6-WB: Panasonic Notebook CF-LX6, Intel i5-7300U @ 3.5 GHz, 8 GB DRAM, 3 MB L3 cache, 2 Cores, Debian 10, WorkBook, Chromium 90
* G3-WB: Motorola Moto G3 smartphone, Qualcomm Snapdragon 410 8916 CPU @ 1.40 GHz, 4 Cores, 1 GB DRAM, Android OS 5.1, WorkBook, Chromium 89
* G7-WB: Motorola Moto G7 smartphone, Qualcomm Snapdragon 632 CPU @ 1.8 GHz, 8 Cores, 2 GB DRAM, Android OS 10, WorkBook, Chromium 89
* XL-WB: Unihertz Atom XL smartphone, Helio P60 CPU @ 2.0 GHz, 4 HP and 4 LP Cores, 2 MB L3 Cache, 6 GB DRAM Android OS 10, WorkBook, Chromium 89

The following two case studies will be used to investigate the capability of parallel and distributed data processing by evaluating the speeding-up \(S\) and the parallel scaling index \(\sigma\):

\[S=\frac{T_{1}}{T_{PN}} \tag{4}\]

\[\sigma=\frac{S}{PN}\]

where \(T\) is the computation time, with a specific parameter set, and \(PN\) is the number of parallel worker processes. The comparison of different computers for a specific computational task, requiring \(T_{1}\) (in seconds) for single-process execution, can be expressed by the \(R\) factor:

\[R=kjsdhrystones\cdot\frac{T_{1}}{1000} \tag{5}\]

For a dynamic-sized (or dynamically growing) problem, where the number of processes \(PN=DN\) grows linearly with the number of independent computed data (or model) sets \(DN\), there is:

\[S=(DN)\cdot\frac{T_{1}}{T_{PN}} \tag{6}\] \begin{table}
\begin{tabular}{c c c c c c c} \hline \hline
**Acronym** & **Class** & **NC** & **Jystones** & **T\({}_{\text{st}}\)** & **TDP** & **Eff. \(\eta\)** \\ \hline HPG3 & WS & 4 & 9800 k & 200 ms & 65 W & 600 \\ HPZ620 & WS & 2 \(\times\) 6 & 7100 k & 490 ms & 105/210 W & 405 \\ XEON & WS & 4 & 11,200 k & 300 ms & 84 W & 533 \\ RP3B & WS & 4 & 745 k & 5000 ms & 5 W & 596 \\ CFLX3 & WB & 2 & 6700 k \({}^{1}\) 2700 k \({}^{2}\) & 150 ms & 15 W & 890 \({}^{1}\) 360 \({}^{2}\) \\ CFLX6 & WB & 2 & 8200 k \({}^{1}\) 10,400 k \({}^{4}\) & 80 ms & 25 W & 656 \({}^{1}\) 832 \({}^{2}\) \\ G3 & WW & 2 & 140 k \({}^{3}\) & - & 5 W & 56 \\ G7 & WW & 4 & 340 k \({}^{3}\) & - & 7 W & 388 \\ XL & WW & 4 + 4 & 360 k \({}^{3.5}\)/280 k \({}^{3.6}\) & - & 5 W & 576 \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Test hardware and software platforms (\({}^{1}\) node.js, \({}^{2}\) Firefox 52, \({}^{3}\) Chrome 89, \({}^{4}\) Chrome 90, \({}^{5}\) high-performance cores, \({}^{6}\): low-performance cores, T\({}_{\text{st}}\): start-up time/worker, WS: WorkShell and shell worker, WB: WorkBook and web worker, WW: Web WorkShell and web worker). The parallelization of a static-sized problem with partitioning aims to reduce the total computation time, whereas a dynamic-sized problem aims to keep a constant total computation time. ### Simulation with Parallel Cellular Automata

Computation and simulation using cellular automata (CA) are well-suited for distributed and parallel processing, due to the short-range data dependencies. A rectangular and regular cell grid is assumed. The two-dimensional cell grid world can be partitioned in initially independent sub-partitions. Only the partition boundaries require data exchange. Typically, a cell of a CA requires only the state variables from some of the neighboring cells (the Moore and von Neuman neighborhood, with a radius typically within one or two hops). The partitioning of the CA world (cell grid) enables parallel processing.