4.2 Parallel LP algorithm
Each processor execute the next parallel algorithm of LP with the portion of data it contains.
Parallel LP algorithm for IASVP
1.
T = [ trace(
AitAr) ]
r,i=1,l
(* using ddot of BLAS,MPI_REDUCE of MPI *)
2. [L,U] = lu(T)
(* using pdgetrf, pdgetrs of ScaLAPACK *)
3. Compute T-1
(* using pdgetri of ScaLAPACK *)
4. stop = 0
5. For k = 0,1,..., While stop = 0
5.1 A(k) = A0 + c1(k)A1 + ... + cl(k)Al
(* using daxpy of BLAS *)
5.2 [P(k),S(k),Q(k)] = svd(A(k))
(* using pdgesvd of ScaLAPACK *)
5.3 X(k) = P(k)S*Q(k)t
(* using dscal of BLAS,pdgemm of PBLAS *)
5.4 d(k)=[trace(Art (X(k) - A0t)]r =1,l
(* using ddot of BLAS,
MPI_REDUCE of MPI,*)
5.5 Compute c(k+1) solving Tc(k+1) = d(k)
(* using pdgemv of PBLAS *)
5.6 Broadcast c(k+1) to all processors
(* using dgebs2d,dgebr2d of BLACS *)
5.7 error = || c(k+1)- c(k)||2
(* using daxpy, dnrm of BLAS *)
5.8 If error < tol Then stop = 1
The theoretical computational cost is:
TA = O(
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAccAAAL/CAIAAACcX5u4AAA7r0lEQVR4nO3dd3wUdfrA8fQEEjrSIVICAiqgKOVEERXrDxDOE6VJU1GkCyLogb0gxXIiqIA0pRwInA2PU1FERBSEBAiGQEgIQiAB0iDl973kjsNkk8zOPNOyn/cfvHB357uPCp/M7M7OBuXn5/sBAIQE2T0AAJQrVBUAJFFVAJBEVQFAElUFAElUFQAkUVUAkERVAUASVQUASVQVACRRVQCQRFUBQBJVBQBJVBUAJFFVAJBEVQFAElUFAElUFQAkUVUAkERVAUASVQUASVQVACRRVQCQRFUBQBJVBQBJVBUAJFFVAJBEVQFAElUFAElUFQAkUVUAkERVAUASVQUASVQVACRRVQCQRFUBQBJVBQBJVBUAJFFVAJBEVQFAElUFAElUFQAkUVUAkERVAUASVQUASVQVACRRVQCQRFUBQBJVBQBJVBUAJFFVAJBEVQFAElUFAElUFQAkUVUAkERVAUASVQUASVQVACRRVQCQRFUBQBJVBQBJVBUAJFFVAJBEVQFAElUFAElUFQAkUVUAkERVAUASVQUASVQVACRRVQCQRFUBQBJVBQBJVBUAJFFVAJBEVQFAElUFAElUFQAkUVUAkERVAUASVQUASVQVACRRVQCQRFUB1+vTp8+aNWtKujcvL8/KYUBVAXd77733SkkqrEdVARc7cODAmDFj7J4Cf0BVAbfKzc3t379/enq63YPgD6gq4FbTp0/ftm2b3VOgKKoKuNJ333334osv2j0FPKCqgPucOXNmwIABubm5dg8CD6gq4D6PPvpofHy83VPAM6oKuMxHH320ZMkSu6dAiagq4CZHjhwZMWKE3VOgNFQVcI38/PwBAwakpqbaPQhKQ1UB13jllVe+/vpru6dAGagq4A47dux4+umn7Z4CZaOqgAtkZmb269fv/Pnzdg+CslFVwAXGjx+/b98+u6eAJlQVcLoNGzbMnTvX7imgFVUFHO33338fOnSo3VPAC1QVcLTBgwcfP37c7ingBaoKONdbb7316aef2j0FvENVAYeKiYmZOHGix7smT57MBasci6oCTnT+/Pn7778/MzOz+F233HLL888/T1Udi6oCTvTkk0/u3Lmz+O01atRYuHCh5ePAC1QVcJxNmzbNnDnT413z5s2rW7euxfPAK1QV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JIMsqiovKirKq8ereQYNGqT20UyaRzl48OBNN920ZcuWatWqGV9NHfKrHckdO3YYX6oUarc9LCzskUceMfVZAHG+WFVT+6U0a9ZM+4Nffvnlp59+Wu2rmjdPoX379qkUrl+/3uA6s2bNevLJJ719D02fMWPGtGrVqmvXrhY8FyDFF6s6Z86c77///scC+/fvF3+NVeO+6smTJwcMGGD8XSnt/vGPf7zxxhuPPfaYvs1TU1PVgfm6detkpypFTk5O//791a5x5cqVLXtSwCBfrGr7AoW/P3PmzPbt21VeC389dOiQ8fW1VPWXX37p2bNnQkKC8afzitov7tu37yWXXOLthrt371YDHzx40IypSpGUlDRp0qS3337b4ucFdPPFql6sUqVKNxYo/McTJ078eJHff/9dx5plvgKwdu1atZeanp6uY3GD0tLSpk+f/uabb3q11YYNG/r16+ftiahS3n333QkTJuh4DxCwha9XtYiaNWveXkD9fv/+/Zdddpm3K5R5WtXs2bPHjx9v6qldpVuwYIEKa40aNTQ+/o033hg7dqyN7zjn5ua+8MIL7733nl0DAF6hqiX69ddfdWxV+i7VlClTXnzxRb0TycjMzJw3b97kyZO1PNgJAyvLly+fOXNmlSpV7B4EKBtVLZG+qpbyouqIESPeeecdAxOJWbZsmZaqPvTQQ/Pnz7dgnjJlZWV9+OGHah67BwHKRlVLJFtVr5J6ySWX3HXXXd27d2/btm39+vVDQ0NPFNi2bdsXX3yxYcMGgx8W2LNnT3R0dKtWrUp6QH5+/rBhwxYsWKBxwWrVqt15552FAzdq1KhixYonT548fvz4Tz/99Nlnn61fv974i8hr166lqnAFqloifVX1+FbVo48+qjGpnTt3HjduXI8ePYKC/vC/pm6BK664YujQoYmJiVOnTl20aJGO8S7YuHFjKVUdMmSIxvU7deo0evToXr16FbnUQK0CrVu3Hjhw4NGjR9Wu8QcffGBk4M2bN587d46LWsH5qKpnamcwLi5Ox4bF91WfeeYZLScGXXfddS+88IL6tcxHqr1XtRep9grHjh2rY8JC33zzjaqhx7vGjx+vJaldunR57rnn1K9lPlL9PFi4cGHLli01vpjrUUZGxvbt29VPHd0rANagqp6pY2R973oX2VdVeZo2bVrpm6hD5pkzZ/bu3durJ1JN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)
) +
k O(
![](data:image/png;base64,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vUvO08kJ7P3796muhGRwct+1zj0DzYccSWvWrNm4cWNfX1/ysUyZMiKULoiAP/7ct0MK+vTp059//rlv3z6SRpovdK3egwcP5s6du3DhQjLUIJ+w8KCN8PBwqvkjZLR08ODBtWvX5vs6OWvZv39/vulttLy9vanak0ES+bhkyRKS+vn+i/zEDxw4oGE9tD+g1NRUTXYHekXJseTl5UVySNyn6RQqgfP333+r/lmjRg1/f//u3bs3atRI6l3nI1YsnT9/fteuXeRgKnUa5UNOAshOyUFz4MCBS5cu1e67EVRX8FTIaC/fV8jAmoQ6bagUZGdnR9U+LS3tzJkzixcvzvd1e3t7Uo/mDyOmrUfz52WA/lByLEm93pea/RLff/+9k5NTnz59vvjii2rVqsmzawHLyeSNpQ8fPmzduvWXX36hvSdXXDk5OapQ/O6771SL1GkFbSzNnj073w1G5Nh99uxZMpLWvBhzc3MTExM1txzlEx8f//nnn+c7JytduvRff/2leUYacENAqvYC3sECvaXkWNK6Fy9erOP4+flNnDixW7duUu9RwIoyqlh6/PjxihUrtm/fLsUDF4RJT0+fNm3aiRMnSFI6OzvLXwBtLMXExOT9pyoDRMkkA+7tPf6ZZPDfe0t5kSARZdymon6diILYef8V2IdYksPfnPr1669cubJly5bS7UhALMXFxZGB3e7du6mOerI5c+ZMo0aNyPHU09NT5l3T3kubl4WFBQnUunXrilVMwZihQgYrR44c8fHxEaue169fU7W3t7cXa9egeIgl+dy8ebN169b+/v4//PCDRO+aCIgldp4fWhQSnM2aNTt69Cj5KNtOyWFXkyTYtGlT48aNRaxHwB1pef3888/FruBAhfbF0cp4F3QUYklu5PB64cKFX3/9tX///qJvXIb5Tg4ODtWqVatUqZKrq2v58uXLlStXhmNra2tpaWnGMTIyUt2u9OzZs0ePHkVERFy6dOnq1auCrxC+e/euY8eO58+fb9CggbjfTlEEzHfINXfu3AEDBohYjAF3O6rgvlOnTh01apSIxRjQryeCFcSBP/2KJScnp5o1a6puNiLHUxcXF3I8LVmypI2NDTmYmpqaGhoapnM+ffpEPpJT5pf/IccFcniNjIzU8HIK8f79+4EDB546dWr9+vUWFhaifGsqol+II0lTu3btunXrent7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)
) Flops
TC=O(
Prc m2+
Prc m2) +
k O(
Prc m
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAr4AAAHxCAIAAAAEAygGAABRtklEQVR4nO3dd3wUxeP/8RQgIXRIIAkYCC1UBYRARMBCr4JK71VEaVIEBORLlSa9iUhQLIBSlVBEUDqCtCSUEHrH0AKBFPKbz+X7zS+f5G5v9253r72ef/AIe3M7E7jbfe/szGy21NRUNwAAAHmy2boBAADAkRAdAACAAkQHAACgANEBAAAoQHQAAAAKEB0AAIACRAcAAKAA0QEAAChAdAAAAAoQHQAAgAJEBwAAoADRAQAAKEB0AAAAChAdAACAAkQHAACgANEBAAAoQHQAAAAKEB0AAIACRAcAAKAA0QEAAChAdAAAAAoQHQAAgAJEBwAAoADRAQAAKEB0AAAAChAdAACAAkQHAACgANEBAAAoQHQAAAAKEB0AAIACRAcAAKAA0QEAAChAdAAAAAoQHQAAgAJEBwAAoADRAQAAKEB0AAAAChAdAACAAkQHAACgANEBAAAoQHQAAAAKEB0AAIACRAf8r+Tk5DNnzpw8efLixYuXDa5du/bkyZOnT58mGHh6enp5efn4+Pj6+hYuXLh48eIhISGVKlUKCwsrVKiQrZsPANAJ0cF1vXjxIjIy8uDBg4cOHTp27FhUVFRiYqJ0+aSkpPj4+Dt37ojCGV8qX758q1at2rZtW6VKFW0bDQCwNaKD68qXL9+TJ09U2VW0wbRp02rWrDlixIjWrVurslsAgB0iOrgutXJDRocOHXr33Xdfe+21r776qnz58qrvHwBgc0QHGOHj4xMWFhYaGlqjRo3g4OBChQr5+vqK7fcNrly5sn///n379v3111/JyclZ3y5erV69+oIFC3r06KF72wEA2iI64P/Lnj1769at33///aZNm+bMmTNrgQCDChUqNG7cWPz18uXLM2fO/Prrr589e5apZEJCQq9evW7cuDFmzBg9mg4A0AvRAf+rX79+48eP9/f3l/+W4sWLz58/v0ePHi1bthQpIWuBsWPH5s+ff8CAAeo1EwBgY0QH/IeHh8fMmTNz5cplwXurVat25MiRmjVrXrt2LeurgwcPTrvxYXUbAQB2geiA/6hYsaJluSFNQEBAeHh4/fr1U1NTM72UkpLSvXv3U6dOiXRiXRsBAHaB6ID/qFWrlpV7ePPNN7t167Zy5cqsL0VHR69atUoECCurAADYA6ID/qNmzZrW72TgwIFGo4Mwd+5cogMAOAeiA/7D+l4HoUqVKtWrV//777+zvnTixInIyMiKFStaXwsAwLaIDnDLmzevWss31a1b12h0EHbs2EF0AAAnQHSAW2hoqLu7uyq7krjxceDAgcGDB6tSCwDAhogOUOduRZoKFSqYeuncuXNq1QIAsCGig+t68eKF6vvMnz+/qZeMrvoAAHA4RAeoSSI6xMfH69gQAIBWiA5Qk7e3t6mXjD4oCwDgcIgOUNPjx49NvWT0eVoAAIdDdICaJO5KSNzLAAA4EKID1CTR61C0aFE9WwIA0AjRAWp6+PChqZdKly6tZ0sAABohOkBNEos3VKlSRceGAAC0QnSAmqKioky9VKdOHT1bAgDQCNEBajIVHQoVKlSjRg2dGwMA0ALRAWo6fvy40e0dO3ZU6zEZAADbIjpANadOnTK12nTv3r11bgwAQCNEB6hm06ZNRrfXqFGjcuXKOjcGAKARogNUs3nzZqPbP/30U51bAgDQDtEB6jhx4sThw4ezbn/ttddat26tf3sAABohOkAdM2bMULQdAOCgiA5QwZUrV9asWZN1e7du3cLCwvRvDwBAO0QHqODzzz/P+kztkiVLzp8/3ybtscbSpUv79+9v/X5evHhh/U4AwA4RHWCtP//8c+XKlZk2ZsuWbfXq1blz57ZFiwAAGiI6wCpJSUn9+vXLun3KlCk1a9bUvz0AAK0RHWCVMWPGnD17NtPGvn37Dhs2zCbtsV7Tpk2XLFly9v9cunQpJSXF1o0CADtCdIDl1qxZM3PmzEwbmzRpsnDhQpu0RxUvvfSSiD7pf01KSoqJiTn73+Li4mzYQgCwLaIDLHTq1KmePXtm2lijRg2RJzw9PW3SJC1kz569vEHGjR4eHrZqD5DR7Nmz9e/hy5Ytm5eXl7e3t/gzX758/v7+RYoUEX+WKVOmokGhQoV0bhJ0RnSAJa5fv96yZcunT59m3Chyw/bt23PlymWrVgGu5uTJk/pXmmzw5MkT8fONGzeio6MzFShatOibBvXr13/ppZf0byG0RnSAYvfu3WvQoMHly5czbkzLDeISxFatAlzQqVOnbN0EI8SlxXcG7u7uYWFhHTt2bNeuHV0RzoToAGUePnzYsGHDM2fOZNxYs2bNiIgIcgOgpxcvXkRFRdm6FVJSU1P3GwwbNqxr165Dhw4tW7asrRsFFRAdoMCDBw8aN258/PjxjBsbNGiwfv16Hx8fGzUKcFEeHh7R0dFRGYi/Pn782NbtMuLZs2fLli376quvRICYNm1akSJFbN0iWIXoALnu3bvXsGHDTLmhXbt2q1atyp49u40aBbi0EgZNmzZN33L16tVMYUIkfts18L+kpqaGh4eLK42pU6eqsmYrbIXoAFlu3rxZv379TOOhPvzww/nz57u7u9uqVQAyecmgUaNGaX89duxY9erV5byxTZs269atkyggTvzPDP79919xQLh06dKpU6f++eef/fv3JyQkyG/ho0ePBgwY8Pvvv3/99dfc5XRQRAeYFxsbK45EFy5cSN8i4oK4bhgxYoQNWwXALPnjKCtXrixdQHzrcxoUKFCgdOnSderUSduemJi4Z8+eVatW/fLLL/IzhCgcFRW1c+fOwMBAmW+B/SA6wIyjR482a9bszp076Vu8vb3FYeK9996zYasAyCF/9qbZ6GBKjhw5GhjMnj175syZ8+fPf/bsmZw3njlzRuSPXbt2FS9e3LKqYStEB0jZtm3b+++/Hx8fn77F19d306ZNtWrVsmGrAMikYq+DWX5+fl988UXv3r179Oixf/9+OW+5ePFiixYtRGEeledYiA4wKTw8vE+fPhmfpl2uXLktW7aULFnShq0CIJ/M6JAzZ87SpUurUmOZMmV279794YcfLl++XE7506dPd+nSZf369arUDn0QHWDcuHHjJk2alHFLgwYN1q5dmzdvXls1CYAi9+7du337tpySFSpUUHG8c7Zs2ZYtW+bp6bl06VI55Tdu3Lh69epOnTqp1QBojeiAzBITE3v06PHDDz9k3CiuIebOnetMD6cAnJ4OAx0kLFq06MKFCzt37pRTeOjQoc2bN2fChaMgOuC/xMXFvfPOO3v37k3fIuKCCA0iOtiwVQAsYNvo4O7uHh4eXrFiRTkLS9y9e3fBggVjxoxRvRnQAtEB/9/58+ebNWsWExOTviVv3rxr1qxp2LChDVsFwDJ6jpE0KiAgYNSoUSNHjpRTeP78+cOGDfPy8tKiJVAX0QH/a+/eve+8805cXFz6lhIlSmzZsqVChQo2bBUAi9k8OggDBw6cMWPGvXv3zJa8c+fOxo0b27Ztq1FLoCKiA/7j+++/79mzZ2JiYvqW1157bf369X5+fjZsFQCLpaamRkZGyinp6+ur3UMlvLy8unbtOnv2bDmF16xZQ3RwCEQHuE2cOHH8+PEZt3Ts2HHFihU5cuSwVZMAWCkmJkbm2o7adTmk6dy5s8zosHXr1qSkJJ6JY/+IDi4tJSWlT58+K1euzLhx9OjRmaZlAnA49nC3Ik2VKlX8/f1v3bpltqTIOkePHmXFOftHdHBd8fHx77333vbt29O3ZMuWbdGiRb1797ZhqwCowrbTKzKpW7fumjVr5JTct28f0cH+ER1clLgCaNq0acYnaOfOnXvt2rXpD9wDkJiY6Li37eyn10F45ZVXZEaHqKgorRsD6xEdXFF0dHSTJk2uXLmSviUwMPDXX38VX28btgqwH+LbMXny5PXr1//1118hISG2bo4lZPY6uLu7V6xYUevGyK/i4sWLmrYEqiA6uKLXX3/9/v37GbfcuHGjatWqOlT94sULHWoBLHb58mURGsLDw5OSksRfW7VqdejQIYdb5fDp06exsbFySgYHB+fKlUvr9hQtWlRmSfHvr2lLoAqigyvKlBsAuGUJDWnOnTvXvn37rVu32rBhFoiMjExNTZVTUoe7FW6Gfk2ZJR89eqRpS6AKogMAV3fp0iURGlatWpUxNKSrXr26/k2ykl2NkXQzDKWSWfLJkyeatgSqIDoAcF1poSE8PDzjw+Uz+uSTTyZOnKhzq6xnV2MkBW9vb5kljaY32BuiAwBXJELDpEmTVq1aZSo0CB999NGMGTP0bJVa7C06yH/oro+Pj6YtgSpcPTrcv39/8+bNu3fvPnnypDiUPHr0KFeuXH5+foULF37ttdcaN25cp04dtZY2E3Vt2bJlz549oq6LFy+KukQSFxUVKVJE9brgytLW1RHEx+yyQVxc3NOnTxMMcuTI4WOQL1++oKCg4sWLlyhRomrVqqGhoXY+GDAqKur06dPiz/Pnz982uHfv3jMDcfoX39w8efLkzZtX/BYBAQFFixYVv1pwcHBISEjZsmUzfrPEP0va7QmJ0CD06dNn3rx52v9ampAZHby8vMqUKaN1Y9wMn0mZJXUYswnruW50OHz48MyZMzdu3Jipf+yhQUxMzP79+0WBwMDAzz//vGfPnh4eHhbXdeDAgVmzZm3atCnToUpU/fjx4wsXLqTVVaxYsQkTJnTr1s2auuCyjh079vPPP2/dulWcNlJSUkwVSzvXijBx7dq1jM84cHd3F2dZEWHfffddkWXFX3VptRk3btwQv9SOHTv27t0r/ezmRwbXr1/P+pLIDeLaunbt2nXr1v3tt9++/fZb6dAgdO3adenSpda03IZu3bol53FTQrly5eT3B1iD6OBk7DE6iONa7ty5LZvFlzNnTrOjbP7888+xY8f+9ddfcnYojlx9+/ZdtGjRli1b5A8STrdz585x48YdPHhQTmFxKO/Vq9eSJUs2b95cuHBhpXXBNYnzpTjJLV68+NKlS9bsJzU19YzBnDlz/P39+/XrN2DAAF9fX5WaqYyIPiIxLFy4UCQGmTMFJIiMfsxg/vz5csq3a9duxYoVVlZqQ/Y2RtJNybwJCw6z0J89RofTp09bPPtfuvPt7t27w4YNE9ccSnd7/PjxsLCwbdu2iZAu8y0i+A8ZMuSnn35SWteRI0dq1aoVERFRtmxZpe+VicUVnMPjx48nT54sQoP4Qd09i0/vhAkTpk+fLrKs+KFAgQLq7l+CCArh4eHjx4+/evWqbpVm1Lp16++++86he/7sbaCDm+G6SGbJ4OBgTVsCVdhjdJAfmbOSON3+8MMP4ipKus9TgjiQtWzZUmQIOaN4xLFv0KBBFk9QFpePrVq1EhdJOXPmtGwPcHpr1qwZOnTojRs3tKsiISFhwYIFP/7447Rp03r27KldRenEOa9Hjx7ik69DXUY1a9ZM/L769OFrxw6jg/wgWKJECS0bAnXYY3R444035syZc+jQocOHD1+4cEHRe40uGZuYmDhkyBBxcWZlw2JiYsTBesmSJRJlnj9/LgKK9b2dZ8+eFeFj2bJlVu4Hzkec0Xv16iXOcPpUd+/evd69e2/cuPHbb7/NmzevdhUtWrTok08+Ed8g6WIiuzds2PC1116rWrVqUFBQkSJFRMIWJ3vxz3L//n1xioqMjDx48OCvv/56+/ZtRQ2oX7/+unXrnGCosh3esJB/JNdhVWxYzx6jQ8mSJQcOHJj2szgWHP4/R44cuXPnjvR7s/Y6iMuyd9555++//1albeJcLs7o5cuXN/rqlStXRF0ZnylljeXLlw8ePLhChQqq7A3OQXzGWrVqdeLECbMlPTw8atWq1aRJk0qVKolPbKFChXLnzi1OsY8fP37w4IHIpuIUu2PHjt27d4tsbXZvmzdvrlGjhggQ8u/ZKSJCw5dffildplSpUiNGjOjcubPR3rhcBsWKFQsLCxNZJzU1NSIiYsqUKfv27ZPTgHr16onfzsvLy5LW25OUlJTo6Gg5JfPnzy9/fWgrHT16VGZJ8d+naUugCnuMDhkVKFCgkYGbIUpXqVJFunymXoeYmJgGDRqouyj6kiVL5s6dm3V7VFSUaKfRAd4WmzdvnnQnB1yKyA1169bN+Nwyo0RE6N+//5AhQ/z9/bO+WsAgODi4cePG4oQtksRXX30lTttmP7rnz59/4403RNRQPT189NFHixYtkijg7u4+evTosWPHyn+OpXhLE4OVK1cOGDDA7Ah/8eV1jvuD586dM9tzk0a3Lgc3w/QfOcUCAwNF+NO6MbCevUeHjOTcwMsYHcSVmTgcZO2oEFdjDRs2bN++vYi3QUFB4pgijombNm0SgSA+Pt5sFatWrZoxY0amQ9jBgwebNWuW9dkQoq769eu///77derUEXWJr7RIMxs2bJBZ13fffTd79mzWSIFw8+bNt99+22xuEGW++eYb+cffPHnyDB06VEQNcW6eP3++9BBa8W166623RHpQcQzvnDlzpHND9uzZf/zxx9atW1u2/+7du4tzpPgaPnz4UKKYyCXigFCvXj3LarEfdjjQQRxgZV5TOcG/v4twqujg5+eXvqaNyA3iCinTwUJciIiz+Pjx4zPecfDy8qph0KdPH3HYNXtPTuxTJOhatWqlb9m3b5/IKE+fPjVbl7e396sGPXv2fPPNN82eBsQ+jxw5wtcJSUlJrVq1Mvvh/Pjjj412iZklLri//PJLcX4VkVp6evOtW7dES8THUv5TCSQcPXp0+PDh0mWWL19ucW5II75x69evF7+dRDBKSUkRRwBxkHH0exZ2GB02b94ss2SbNm00bQnU4lTRIb3LITY2tkmTJplyQ6lSpb766iuRJ0y9PSgoSBxfqlWrZna5mLT5k2k/nzx5snnz5plyQ+nSpUVdEqf84OBgcSFVu3Zts3PWDx48SHTAsGHDzI7XGTRokNnhAtKaNWu2c+fOt956S7p7/+zZs71797Z+nKbIQz169JBYvUro3Llzly5drKzIzTD4eujQoTNnzpQoExMTs2DBgk8++cT66mzIDsdIbtiwQU4xkV/FcVvjtkAdThUd0jpR79y506hRI3FtlPElcZUvDgpmH8FSqVKljh07rlq1SrpY+kFcXAWKujJllLT1a81eu4jwITKH2Twuf3gRnFVERITZtYzEJfWsWbOsr6tmzZqrV69+9913pUPtmjVrRM6w8qS+fPny06dPSxTw8fH54osvrKkio88+++zrr7+WfuK8yF4DBw506EkW8nsdxOFO05akiYyM3Lt3r5ySLVu25Oaso3CY6CBOz2YXFQkJCcnar5sjR46FCxf26tVLZkUdOnQwGx3SJtOLJomMnHECmIgLS5Ys6datm8y62rdvbzY63L17V+be4JQSExPTJxyZkitXrhUrVqi1itE777zTt29fs8swjxgxQnzXLJ6uKX6vqVOnSpfp1KlTQECAZfvPSjS1R48es2fPligjvtpbtmyx8v6IDcXHx8scFR4UFKTpVNt04ppNZslBgwZp2hKoyGGig8wxkoMHDz506FD6ljx58mzYsOHNN9+UX1GNGjXMlklbV0pccsXExKRvFN/DjRs3Krq58Oqrr5otI32RBKc3a9asjB8zo0aNGqXuuPQZM2Zs2rTp5s2bEmVEaB4/frzFt0jWr19v9mJAnOkt27kp4jsrHR3cDGvHOW50EMdJmet263O3IjY29ptvvpFTMiwsLOMAMtg5p4oOhw8fzrjuk6+v77Zt26pWraqoooIFC2bLlk16uMPDhw8nTpwork4y1rV9+3azc0czKVKkiNkyFi9/CScgLiKnT58uXUZk1o8//ljdenPnzv3pp5+avQpcunSpSC2WPW8lPDxcuoCfn1/NmjUt2LOEV155JSAgQDoSiYPGixcvHHQhansbIzly5Eg5q4a4GW4nad0YqMipooO4VEr/OX/+/Bacy9N4eXlJR4fLly9PmDAh/a/58uUThxsL6pIzj5znTbiyZcuWSU8pdDOM48mTJ4/qVfft23fy5MnSi7A9e/Zs3rx5kyZNUrpzEYl27twpXaZ27dpaPL3ztdde+/nnnyUKPH78+NixY9WrV1e9ah3Y1RjJtWvXSv9Tp2vRogUDJB2LU0WH9Mdn+/j4REREWJYbxE4yTZeQqMjNMN/y119/Vdq3kUbOU4u0OCvAIaSkpMiZadm5c2ctahcBukuXLmaHXi5evFhcL5odgJzJvn37zM5jknM7zwLVqlUzez47fPiwg0YH++l1ENdX/fr1k1NSfHgsm1EMG3KY6CA9EjsjcaWyatWq0NBQyyq6evWqoof8rlixQlzHWFaX2XW13QzdtpbtHI5OXJebfWhQqVKlxLlQowb06NHDbHS4f//+li1b3nvvPUV7ljPkXvopuBYrXbq02TLyjzb2RmZ0yJ49u0YLiqe5e/duo0aNZN5snTNnDo+8cjiOER3EAdRst2268ePHW7OuiKIHbn366aft27e3uC45T5MLCgqyeP9waHIWTmjYsKF2DahQoULJkiVjY2Oli4l2Ko0OZ8+eNVtGo4cvy9nt+fPntahaa9euXZN5tg4JCcmWTauDf9r0+HPnzskp3L179759+2rUEmjHMaKD/F64OnXqjB071pq65BzU0oSGhk6cONGauuTEFPK4a0pKSpKzkI6i2UMWaNKkycKFC6XL/Pbbb/Hx8YoWl5Tzydeov83X19dsGelxlHbLHu5WnDhxomXLljIfsR0WFmb9A41hE04VHfLkybNq1Sorh1bJfOicj4/Pt99+6+npaU1dZifdCcWLF7emCjio/fv3y+lpU30OQib16tUzGx2ePXu2d+/exo0by9+tnHNzwYIF5e9QPjm7lXMn0Q7ZNjq8ePFi9uzZ48ePN/uksTTioxsREeHoy367LKeKDp999pn1J1qZtzlHjhxp/b1YOTFFxecMwYHs3r3bbJl8+fK99NJLmjZD5ljFPXv2KIoO0o/JSKN06KVMcs5VZgdK2ycbTq8QIWDMmDH//POPzPJhYWHiLYwBd1zOEx1EaDC76J4ckZGRZssUK1Zs2LBh1tclJzpoOpoJdkucjM2WqVixotbNCA4OLlCggNl1yeS0NiM552b5z9dWRM5uZT602t7o3+sg/h/Xr18/b968I0eOyH9Xr169Fi5cqNH/L/ThANEhOTn5zJkzZouNGjXK+r6v27dvx8XFyalLzpIM0hISEsw+ObNgwYLMsHBBqampGRdFNUWjgYSZlC1b1mxjjh07lpKSIv/+XbZs2aSfeuVmmJtq5Q1BU7s1W0a7IYTakXmcdDOsIWbl4OubN2/+/vvv27Zt27hxY3x8vPw3ent7z5kzh3GRTsABviFnz57NuI6CUfny5VNldrucLgfxxevatav1dUVHR5udBUqXg2uKjY2Vc8NYn9k3pUuXNhsdEhMTL1y4IP/mWp48ecxe2Yt9Wh/Qje7WbBlHfAiTyA1mj5NpZHZWPTcQn8N79+7dNDh37tzp06dPnTpldtKNUQ0bNly4cGGpUqUseC/sjQNEBzm9cO3atVPl2x4VFWW2TPv27XPlyqVPXTr0SMMOyflsuBlunGndEjfD0hFyiok2y48OuXPnFick6TLiclaL6CDnKlnRbBE7If9uxYEDB3ReZjs4OHjq1Klt27bVs1JoykmiQ4MGDVSpS844o0aNGulWF9HBNcmc5qPPzSyZz64UbX7nnXdk7rNAgQKXLl2SLhMXF6fFLyjnUbRaDz7VgvwxknoqV67cqFGjOnbsqMW9J9iQk0QHRc+rtLKuN954Q7e6iA6uSeZzk+0qOph9DGZGZcqUMTsa/8aNGyEhIfL3KZPYrdkyjriYivxeBx3kyJGjRYsW3bt3b9q0qRYPIoHNOUN0EIc2Ocu8yGF2rIO4HBEXTKrURXSAKbdu3ZJTTKOVDzKR83xXN9ltTlO+fHmzZWJjY7VY8ErOalRymmdv7KHXwcfHp06dOq1atWrXrp1ax0nYJ3uPDo8fPzZ7BabW+fXSpUtm74OqVdf9+/fNXv0UKlTI399flergWG7fvi2nmD635GVOvpfZ5jRyzs0yB3woJWcodFhYmBZVa+fhw4eKen1UVLhw4cqVK4eGhtavX7927dpMuXQR9h4d5CzQVKlSJVXqktMNoGdddDm4LLuKDnnz5pVTTFF0qFu3rru7u/QMo7///lv+DuU7fPiwdIHs2bNrvUan6jS6W+Hp6elt4OXlJf7Mnz+/uJgJMAgMDCxbtqwIDcwed032Hh30PMXKiSlq1aVnTIHDkTlXXp85hDJ7HeQsEJlOnIGqVKkiPdxBnOOfPn2q7u/44MGDY8eOSZdp0KCBKlOo9CT/bsWIESOmTZumaWPgCpwhOjhrrwPRwWXJXM1Qn5WLxFW4nGJKV2Bs1qyZdHQQO4yIiLDmKbhZbdmyxeySUO3atVOxRn3Yw4Ov4FKcITro1uvg7u5eoUIFVeoiOkCCK0SHnj17Tp06VfpEvnz5cnWjw4oVK6QLFClSxBGXHyA6QGcOHx2CgoJUueObnJxs9nHbwcHBaq1Ro+cYDjgcmadhfebKaxQdSpQo8e67765Zs0aizLZt244fP16lShVFezbl77//NvtQsSFDhjjisxxlPrRPZE1HnDwCO2TX0eHGjRtmn7uj1vlVznLXanVvXLly5fHjx9JlAgMD8+fPr0p1cDgeHh4vXrwwWyw1NVWHSfNyWuJmaLPSPY8cOXLdunUS+xe/oDiX//HHH0r3bNTw4cOlC4hrg48//liVuvR0+fLlR48eySlZtmxZmUEQkGbX0cFZBx9wtwLSxIVvcnKy2WIpKSk63LOQ+WQECy7Wq1atKk7Vc+fOlSizZ8+eadOmffrpp0p3nsmXX35p9vGeS5Ys0WLpa63Z8FnbcFkOHx30nPLA9AroQ5yG5UxYEPFCh+ggJ8S4GR6KaMHOp0yZsmXLFullmsaMGePv79+9e3cL9p9m3bp1ZrscRC1qrWevMwY6QH92HR3kpGm1TrHOuoAEHJHM03BiYqJlJ2xFnj17JqeYZUMExFX+L7/8Uq9evQcPHpgqk5qa2rNnz6ioqEmTJildcUjkHpFOJkyYIL2GxHvvvTdx4kRFe7YfRAfoz66jg9mvhIeHh1qjfszW5enpqdYjsIkOkJYvXz45j1qIj4+XuV6TNWTeR7d44WFxPvvtt9/EFb90R8vMmTM3bNgwZsyYDh06yAkQSUlJa9asmTp1qtlVKTt16rRy5UpFbbYr3LCA/uw3OqSkpJh9fmDJkiVVueoSxyyzy12XLl1alTVW5UzlcHd3ZylJV1akSBE5D89UtAqTxcwO6U0j81EXRtWqVev3338Xl/7SqynHxMT06NFj0KBBTZo0qV279ssvvxwUFOTn5ycOAuIr8/Tp03///ffKlSsnTpw4cOCAiCMPHz6Urldce4wdO3bcuHGO+4imxMTE8+fPyymZO3duR3ysF+yT/UaHc+fOiW+FdBkV71ZI92eqWNeZM2fMjjtTcRYoHJHMZ5fIPKlbSeJWQkbWRAchNDT02LFjnTp12rFjh3TJR48e/WRgTXVCqVKlvvrqK7UehGsrImLKHIxCRyZUZL/Rwa4Wg1KxLu5WwCyZp+F79+5p3RLh5s2bcopZGR0EX1/fbdu2rVmzZvTo0bGxsVbuTUKBAgWGDx8+dOhQJ3hWE3crYBOOHR0ccdwi0QFmlSxZUk6xu3fvat0SN9lP0y5durQq1bVt27ZFixYiqV+6dEmVHWZUrly5Dz74oHfv3vo8/kMHjJGETRAd/oNeB9gVmeud37lzR+uWCNevX5dTTMVlCgcOHJgxN6QNRDB7S9GU7NmzV69e/e23337vvfdefvllVVpoP+h1gE04cHQQR4SyZcvqU1eOHDl0q8uN6ODyZEaHK1euaN0SN8PgRDnF1Hq8y/jx47/++uuMWzp06LBs2TKR76Ojoy8a3Lhx4969e//+++/jx4+fP3+emJgo4kXas6Hz5s1bpEgRf3//4OBgkWZEq6pVq+bEI4fodYBN2Gl0ePLkidnuyjJlyqiyqOpdA+kyIjeo8rwAcaQze7gXv1RISIj1dcFxBQQEFChQwOwq7PpEBzkD+H19fQsXLmx9XSIiZFpfQXzvPv/8cx8fn1AD66twJnFxcTJHoohPVMGCBbVuD1yHnUYHPac82NudEbUiERxa7dq1t2zZIl1GZn+ANZKTk+XU8vrrr1tf16ZNmwYMGJBpY9euXdUaReF8uFsBW7HT6MD0Cri4evXqmY0OZ8+e1XotavHtkPNIzLp161pZ0cGDBzt06JDpGdwiQ48bN87KPTsx7lbAVhw4OjhirwPRATKJ6GC2TGJiokgPmq4e9vfff8spJqe1EsRv0bx584SEhEzbe/XqVbx4cWv27NzodYCtOHB0oNcBTuzVV18NCAgweyd77969mkaHnTt3mi1TrFixqlWrWlzFrVu3GjduHBcXl2m7l5fXmDFjLN6tK6DXAbbiqNHB29tbrTugkZGR0gVy5sxZqlQpVeoiOkAmd3f39957b/78+dLFdu/e3a9fP43a8OLFCznRoW3bthZX8fjx4yZNmhhdBv6DDz4oWrSoxXt2BWaPXWk8PT3Vmv8CpLHH6CCuQv7991/pMuXKlfPw8LC+rkuXLsXHx5utS5Ul7m/cuGF2zLyKMQWOrl27dmajw44dO7Qb7iBySdbOgKwsjg5JSUmtW7c+ceJE1pd8fHxGjRpl2W5dxIULF2Q+xERcZVn2XFPAFHuMDnrerbC3gQ7ly5d33CfxQF2vvfaaiK1nzpyRKCNO7Tt37mzcuLEWDfjmm2/Mlnn55ZctnjPZvXv3Xbt2GX3po48+UmW2pxPjbgVsyFGjg56nc0eMKXAOQ4cO7du3r3SZVatWaREd7t69+8svv5gtJlpo2f6HDx/+ww8/mHo16yxNZEJ0gA25enSQM0aS6RWwla5du3722WfSC06vW7du+vTpxYoVU7fqmTNnZp3ykElAQECHDh0s2PmcOXNmzZolUeCLL76YP38+PXASmF4BG3LU6OCIPQFEByiVI0eOcePGffTRRxJlkpOTp0yZsmjRIhXrvXr1qpwdTpgwwbLlyz799FPpAqL248ePi9/L+hUjnBW9DrAhu4sOL168iIqKki6TO3fuEiVKWF+XOOaeO3dOukyePHmCgoKsr0v8XtHR0WaLER2QyQcffLB06VLp88SyZcv69ev3yiuvqFVp//79zQ7Bq1q1aq9evSzbf6FChczOO92/f/8bb7xRpkyZli1b1qpVKyQkpGjRouK7z1qrwrNnz2SuJerj4yPzQaxOIzU19Q+Dffv2Xbx48e7duykpKXnz5vX19RUp6scff7Rst/Hx8YcPHz5w4MDBgwdFtv7XwN3dPZ9B/vz5ixcvLj6l5QzEkdy5P6h2Fx3E90F8K6TLqDXR6MyZM0lJSfrUdf78ebOr8onPn+rdznB0Hh4eCxYsePPNN0X6NFVGvNSlSxdxRFPlWdJffvnlb7/9JqdVFt9QqFKlisyHL4gvjvStDUVEg728vLy9vdOekhUQECCO9eI7XrNmTXG4V6sWHURGRkp8HjKqWLGiQ9z3Eb+OOADKmTPSt2/fJUuWGH0pLi5u7ty533zzzbVr1zK9lPasIvFfr7RhInZERESEh4dv3rzZ6DE8ISEh7cH0hw4dSt8oPmavvvrq22+/3aRJExF8lVZq/+wuOrjyYlCaru0Dx1WnTp1Ro0ZNnjxZooz4MHfr1u2nn36yctLy+vXrhw8fbrbY2LFjw8LCLK6lVatWW7dutfjtFhPXo88MHjx4kOnhYYULF27evHmHDh3E4V7/hinlfHcrzp07J3OuqdGHGIuTuoiY06dPf/TokcR7FT11PTk5edmyZZMmTUpLBoqI9uw3mDhxYmBgoPhuSn9/HY5DRgdHHHzAQAdYY8KECX/99deff/4pUebnn39u37796tWrLe4pXb58ef/+/c1eztatW1dEB8uqSNO5c+dx48ZJD//UmWjMCoOQkJCRI0eKY709X6w73xjJcuXK3b9//0QGkZGRRnugs0aH48ePi0+U2Tvdbkr+NUQKHzNmTGxsrMzyEm7cuLF27Vqig7ZcudeB6ABTPDw8RDIQ52zpETPr1q0TBzuRHpQ+t11chX/88cfijWZLim/EL7/8YmXfho+Pz+zZs8Xh3pqdaOTs2bM9e/ZctGiRCFKKLlL15Hy9Dm6GO7Z1DdL+OnXqVKMrkWeKDvPmzRs+fLjZW89p5PyHigTTp08fUzOTS5Qo0bFjxzp16oh/2EKFCqWkpIjQefPmzV27dv36668HDx40+i7nW83TIaODI/YEEB1gJXGc2rlzpzhmSV8JHTt27JVXXunVq9eIESPkPDsqLi5u4cKFc+fOlbNwZKlSpXbs2FGwYEEF7TZBHH9/MbB+V1r4+++/w8LCvvrqK9FOW7fFCKeMDpkY/R2zZcuWPuozNTV1yJAhIjrI36fZf43du3d36dLl+vXrWV8SoXnKlCktWrTItL2Egfi0iKCzd+9e8b3LGiCc72a0fUWHhIQEsx1E+fPnDwwMtL6uJ0+eGF05P6MCBQoEBARYX9fTp0/ldHwRHSBNfBr//PPPVq1aHT16VKJYYmLi4sWLlyxZUr169aZNm4okUb58eV9f3zx58nh4eDx+/FhcV505c0Ycmrdv3/7XX38lJyfLqT00NHT9+vX+/v4q/TZu33777bVr1w4fPqzWDtUlDkfiLCIOFOIa1OYtiYyMPJWB/Hs9ISEh4lwbbJD+gzjV5ciRQ9M2W89or7Boedqy6y9evOjQocPatWszFRCf9pYtWzZs2DAoKEh8umrXrp3+kp+fX5EiRSRq/P7773v06JG1A0PUOHbsWJEMzHa2vf766yI9DB8+/Msvv8y4nV4HbckZNqzi3QoRWvWpS/xeZutyM3SmVc3A1aZU2Sfxgbx48eKZ/ybnjeI4Ve7/pE3ZEv+h1j94ReRmcbLv3bu3OMxJlxQfuSMGVtaYpmvXrsuWLVP3fJMzZ85t27a9++67ppajtjnxb/jBBx+IxNa8eXPdKhUfuZiYmIxBQVx4yJxPkdWDBw+OGWTc6O7uLj5IGcNE2g9io52M8BBx9uzZs1m3lylTJu0H8RXIlBsaNWokzu7i5J2+pVixYoUKFUp/IpJ0l8O8efOGDBmS9UBdsGDBDRs2ZNytNPEdnzVrlji/7NixI30jvQ7asrd1JPUc6OBmeO7XVoO0v+bNm1ck6LQYIY5c4jugSmMgLe22ZXpKEAdxs7NqjRIHrH0G6VvEebd06dLpM7/r1atn2ZIh3t7e3333XYsWLQYPHnz79m0L9qCIaKQ4qoorOS12ni9fvoiIiFGjRomrNIvPjpoS55IuXbqcPHnypZde0qfGbt26yRl0Yg3xS103EJfIGbePHj160qRJmlYtk8gNRocvpA10GDZs2MqVK9M3io/okiVLsi7HLmJQgwYN0hdykIgO4mRvdGJR4cKFd+/ebcHE3YzT7EWYcKypv3K4bnSwt7qyevTo0V8G4uejR48SHfSxadOm/v37a7HnxMTEKIO0v06cONHoKDCZ2rVrJ46VEyZMWLZs2dOnT1Vq438pUKDARx99NHLkSFWWizAlW7ZsM2bMeP/994cOHbp//37tKrLYw4cPBw0apNuwDKOPEtWH/dwzNXVpJ6KDyM2zZ89O39KpU6fFixfnzp3baPlGjRqlRwdTYyQ3bNgwYsSIrNvFxZvItZad9TM+vC04ONiC9STsnONFB2edXiFBXK3az1ca9kNcsotjqMgf8+bNW758ucxFluQQh8sPPvigd+/emoaGjEJDQ8UV8M6dOxcsWCDSmz6VyifOLkeOHKlRo4bWFZnqqNeH/cwoMXV8FvlbfDLTfvb09Jw2bdonn3wisZ+GDRum/2y01+HYsWOdO3c2ekM5PDy8SpUq8tucUcZBFc53t8LNEaOD6/Q6ZGyGc69pCmsUKlRowoQJn3/++Z9//rlmzZpt27ZZNhldJFRxoGzatOm7775rq4OdqFfORA+bmDFjhvjn1boWOUvcakR8AJTO6dWOqejwP//zP2l9bOKQ+P3334vPqvR+AgICRGIQR2APD4+sn+r4+Pg2bdoY7bQbNGhQq1atLGr7f2SMDs43RtLN3qKDBYt2WUyHm8Q2qQtW6mdg61Yo5u7uXs/AzbDm7oEDB06ePHnx4sVLly5du3bt8ePHTw3E1VXOnDl9fHzEn4ULFw4KCipevHjJkiVfffXVqlWr2nbU/Z49e9q3b5/xy+Ll5bV+/Xp1HymekJDw4MGDmzdvHj58eNeuXRs3bpR5qt6yZYs405jqGFeLuE6wzzEfOjN1uXX//n03wwdj3bp1zZo1k7OrRo0aib2VKlVKfOYzvTRq1KhMi4qmEV+KKVOmKGzyf8l4w4JeBwAOwM/Pr6WBrRuiwOLFi8V1XsZpop6enqrnBjfDtA5BXIxWq1btgw8+EJcrI0eO/Pbbb82+8dmzZzt27GjdurW67UFWIt6J1GvqVQ8Pj9WrV8vMDcJ0g6zbDx48KD51Rt8yd+7crDlDEXodAEBD4iJ74MCBWZ/xLQ73queGrPz9/cPDw2vVqjVgwACzhfft20d00IH0bPZ58+a1adPG+lr69u1rtIMnNDTU+tidHh1E0ClfvryVe7NDRAcANpOUlNSpU6d169Zl2t60adMhQ4bo1oz+/fvHxsaafUSn/CdHwBoSY9jF/9SHH35ofRXr1683Vcvnn39u/f59fX09PT1TUlJKlCjhfNMr3IgOAGxF5IZWrVpFRERk2p4nTx5TT1XWjjhhfPvtt9KrNEr0okNFpgY6hIaGzpkzR5UqvvjiC6Pby5Ytq0pfl7u7u62Gu+qD6ADANrp165Y1NwiffPJJxhV19JErV64ePXqYOqOkSV+XEJoy1R8wefJkVeaa/fHHH6aWP9doTRfnQ3QAYANjxoxJX6sno4IFCw4dOlT/9ggNGjSQjg5PnjzRrTGuzFR0UOtRXlkH1qTx9PTs0KGDKlU4PaIDAL2Jy75p06YZfal3795aT4A0xeyqBtY/ggRmxcXFGV3czM/PL+OMR4slJCSkL/afSb169VSpwhUQHQDoSly79+jRw9QQehsuqiFOTtIF8uTJo09LXJmpLge1FuiLiIgwtXC7NWtAuRqiAwBdLViwwOg6PEK1atWCg4N1bk86s2sx+fr66tMSV6Z1dPj5559NvfTWW2+pUoUrIDoA0I+44JOYAyl/nR8tPHr0SLpA2mMboSmto4OpuxV+fn5OueyjRogOAPQTERFx7949U6+Ghobq2ZhMLly4IF3A+R6dbIdMzcxUJTpER0enLWWdVbVq1azfv+sgOgDQz+bNmyVete0TYs0+TbdOnTr6tMSVRUZGGt2uymfD1JxMtfbvOogOAPRz9OhRiVdtO5hg586dEq96enrWrVtXt8a4puvXrz948CDr9qCgIFXGqEZHR5t6ySmfNKEdogMA/Ridd5fOho/ufPr06bZt2yQK1K9fnxkWWtN6oMO5c+dMvaT/KmQOjegAQD9GrynT/fvvv/7+/nq15b98//330sMku3TpoltjXJamAx3cDL0apl4KDAxUpQoXQXQAoJ9cuXJJnKHv3Lljk+iQmJg4efJkiQKFCxdW5WmNkKZ1r8Pt27dNvWR2VQ9kRHQAoJ+iRYtKRIdDhw69/PLLerYnzaRJky5fvixRYPjw4U75/EN7o3V0kOj0ypkzpypVuAiiAwD9iHOAxFC1HTt29OnTR8/2uBlGR06ZMkWiQFBQkCoPeoa01NTUqKiorNs9PT3Lly+vShXPnj0z9RLRUBGiAwD9vPXWW2vXrjX16tatW+Pi4goWLKhbew4fPtymTRvpdSSXL1/OJakOYmJijJ7aS5cu7eXlpUoVEg/CFgFFlSpcBNEBgH5atmz58ccfJycnG331yZMnY8eOXbhwoT6N2bx5c6dOneLj4yXKDBw4sH79+vq0x8VpfbdCyJ49e2JiotGXHj16lD9/frUqcnpEBwD6CQgIaN26tUTHw+LFi2vVqqX1dAZxdSsyypdffind39C0adPZs2dr2hKk0yE65M6dOy4uzuhLRAdFiA4AdDVhwoQNGzZIdB336NHj3r17Q4YM0agBa9as+eyzz2JiYqSL1a5d+6effuJB27rRemammyG5mooOd+/eDQoKUqsip0d0AKCrcuXKjR49WgQIUwVevHjxySefbN68efr06dWrV1er3sePH3/33XeLFi0ytdRxRk2bNl23bh1D5/SkQ69DcHCwqf/948ePv/rqq2pV5PSIDgD0Nm7cuH/++WfTpk0SZXbv3h0aGlqnTp1u3bo1b968cOHCltV19erVP/74Y8OGDdu2bUtISJDzlkGDBs2cOZNxc3pKTEw02g8k0luZMmXUquXll1/esmWL0ZeOHj3aq1cvtSpyekQHAHpzd3dfs2ZN27ZtpdOD8JeBKC8uPWvUqFG5cmVx4fjSSy8VLFiwQIECXl5eaWtXP3/+XJx7njx5cufOnbt374q4cM7gyJEj165dk98wX1/fb775xrbP/nZNZ86cMTp4tly5cireM6pdu7apl7Zv365WLa6A6ADABsQp/+effx4zZsyMGTNSU1OlC4sCpwy0a0+2bNn69+//+eefi0SiXS0wRYeBDsIbb7zh7e1tdApobGzsrl273nrrLRWrc2JEBwC24enpOW3atIYNG3700UfiotNWzRCh4b333hs3bpy4wLVVG6DDQAc3w5KR77zzzo8//mj01enTp1sZHVauXLlixYqIiAgfHx9r9mP/iA4AbEkcrE+ePPn111/PnDnzwoULelZdqFChrl27Dh48+KWXXtKzXmSlT3QQBgwYYCo6bN++PTw8vFu3bhbs9siRIx9//PHhw4fFz0OGDFm6dKlVrbR7RAcANiau+/v169e3b9/ffvvt22+/3bRpk8SCwdbLnTt38+bNO3bs2LhxY1G1dhVBPn1uWLgZhjvUr19/586dRl8VwcLf379Ro0byd7hnz57p06dv3bo17a/u7u6uMMmTrw0AuyCOuc0Mnj59+scff4hLwL/++isyMlJiBQj5ChYsWKVKlTcNQkNDSQx2JT4+/sqVK1m3582bV4vT8Pz588WH4fnz51lfEp+9li1bTpgwYfDgwdJTc588ebJh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)
).
4.3 Experimental results
We present some results from numerical experiences carried out with the two methods proposed in this work for solving the IASVP. The algorithms have been implemented in FORTRAN90 language and have been tested and validated on a cluster of PCs, formed by six PCs, each one with Pentium Xeon processors, working at 2 Ghz, with 1 Gbytes of RAM, and connected through a SCI network. For the sake of simplicity we only show a few results. A more detailed analysis and figures can be found in [Flo04].
First, we analyse the convergence of both algorithms. In Table 1 the convergence of
MI and
LP are tested with different
c(0), with
m=
n=
l=10.
MI shows a fast convergence when
c(0) is close to
c*, and give good approximations to
S*;
LP always converges to
S* although with a high number of iterations and with less precision.
Table 1.
Convergence of MI and
EP algorithms, with differents initial points
c(0).
c(0) = c* +
|
MI
|
i
|
K
|
||S(k)-S*||2
|
Convergence
|
1e-3
|
2
|
2e-9
|
yes
|
1e-2
|
3
|
4e-9
|
yes
|
1e-1
|
14000
|
5e2
|
no
|
1e0
|
14000
|
3e1
|
no
|
1e1
|
14000
|
2e3
|
no
|
1e3
|
14000
|
5e0
|
no
|
c(0) = c* +
|
LP
|
i
|
K
|
||S(k)-S*||2
|
Convergence
|
1e-3
|
117
|
2e-5
|
yes
|
1e-2
|
395
|
3e-5
|
yes
|
1e-1
|
757
|
8e-5
|
yes
|
1e0
|
6872
|
1e-4
|
yes
|
1e1
|
2234
|
4e-5
|
yes
|
1e3
|
2183
|
4e-5
|
yes
|
We can take advantage of the global convergence properties of LP algorithm to transform the MI into a global convergent algorithm. In this sense we have used as initial guest for the MI algorithm a value c(k) obtained from the LP algorithm with a small accuracy. The idea was first proposed by Chen and Chu in [11] and the objetive is to find a c(0) for MI which is close enough to c*, to guarantee the quadratic convergence of Newton’s method.
In Table 2 we present a typical test, for this case showing the convergence of MI algorithm when c(0) is chosen from LP iteration. The test has been carried out in a problem with size m=n=l=10. Similar results have been found with other sizes.
Table 2. Convergence of MI taking c(0) = c(k) , where c(k) is LP result.
c(0)
|
K
|
||S(k)-S*||2
|
|
c* + 1e-1
|
23
|
1e-2
|
LP
|
c* + 1e1
|
950
|
4e-3
|
c* + 1e3
|
899
|
4e-3
|
c(23) of LP
|
3
|
1e-10
|
MI
|
c(950) of LP
|
3
|
6e-10
|
c(899) of LP
|
3
|
6e-10
|
Table 3. Runtime and speedup of MI.
|
Initial part, steps 1,2,3
|
Prc
|
Runtime (seconds)
|
Speedup
|
1
|
14
|
46
|
107
|
312
|
1
|
1
|
1
|
1
|
2
|
8
|
26
|
58
|
177
|
1.8
|
1.8
|
1.8
|
1.8
|
4
|
4
|
187
|
32
|
58
|
3.5
|
0.2
|
3.3
|
5.4
|
6
|
3
|
7
|
21
|
37
|
4.7
|
6.6
|
5.1
|
8.4
|
m
|
512
|
768
|
1024
|
1408
|
512
|
768
|
1024
|
1408
|
|
One step of loop 4. For k=0,1,2,...
|
Prc
|
Runtime (seconds)
|
Speedup
|
1
|
355
|
1741
|
5458
|
19075
|
1
|
1
|
1
|
1
|
2
|
184
|
893
|
2784
|
9656
|
1.9
|
1.9
|
2.0
|
2.0
|
4
|
90
|
471
|
1434
|
4994
|
3.9
|
3.7
|
3.8
|
3.8
|
6
|
60
|
323
|
1010
|
3471
|
5.9
|
5.4
|
5.4
|
5.5
|
m
|
512
|
768
|
1024
|
1408
|
512
|
768
|
1024
|
1408
|
Now, we analyze the performance of the parallel algorithms. We use parallel runtime and speedup [8] to assess the MI and LP. Both methods have a different parallel behaviour of initial part and iterative part of their algorithms. Besides, the total time depends on the number of iterations and this depends on how far is the initial point from the solution. Thus in Table 3, we show the runtime and speedup of MI separately for both parts. Also, in Table 4 we show the runtime and speedup of LP for both parts. The results are shown for different sizes of problem, with m=n=l, and different number of processors.
Table 4. Runtime and speedup of
LP.
|
Initial part, steps 1,2,3,4
|
Prc
|
Runtime (seconds)
|
Speedup
|
1
|
260
|
1259
|
4068
|
13672
|
1
|
1
|
1
|
1
|
2
|
128
|
630
|
1967
|
6843
|
2.0
|
2.0
|
2.1
|
2.0
|
4
|
69
|
339
|
1053
|
3531
|
3.8
|
3.7
|
3.9
|
3.9
|
6
|
52
|
225
|
706
|
2376
|
5.0
|
5.6
|
5.8
|
5.8
|
m
|
512
|
768
|
1024
|
1408
|
512
|
768
|
1024
|
1408
|
|
One step of loop 5. For k=0,1,2,...
|
Prc
|
Runtime (seconds)
|
Speedup
|
1
|
23
|
79
|
182
|
552
|
1
|
1
|
1
|
1
|
2
|
17
|
54
|
126
|
359
|
1.4
|
1.5
|
1.4
|
1.5
|
4
|
7
|
24
|
65
|
130
|
3.3
|
3.3
|
2.8
|
4.2
|
6
|
5
|
12
|
45
|
64
|
4.6
|
6.6
|
4.0
|
8.6
|
m
|
512
|
768
|
1024
|
1408
|
512
|
768
|
1024
|
1408
|
As it can be appreciated, parallel performance of MI and LP algorithms are good enough, and better as the problem size increases, alleviating the high computational cost of the sequential algorithms.
5 Conclusions
We have explored two parallel algorithms to solve the IASVP, by adapting some well-know methods for solving the IAEP. Convergence features of both algorithms have been studied and contrasted with numerical experiences.
LP algorithm is a good alternative to solve the problem of the local convergence of
MI algorithm if it is used in the estimate of the initial value,
c(0), for
MI.
The algorithms developed have been parallelized with good performance on a cluster of PCs, by using standard public domain software: MPI, BLAS, LAPACK, ScaLAPACK, thus guaranteeing the portability of the code.
Performances of both parallel algorithms are fairly good; the speedups reached are near to the optimum, especially in the case of large size problems.
Acknowledgement
This work has been supported by Spanish CICYT Grant TIC2003-08238-C02-02
References:
[1] Anderson, E. et al., LAPACK User Guide, SIAM, 1995.
[2] Blackford, L. et al., ScaLAPACK User’s Guide, SIAM, 1997.
[3] Choi, J et al., A Proposoal for a Set of Parallel Basic Linear Algebra Subprograms, Tecnical report ut-cs-95-292, Department of Computer Science, University of Tenessee, 1995.
[4] Groupp, W. et al., Using MPI: Portable Parallel Programming with Message Passing Interface. MIT Press, 1994.
[5] Dennis, J. and Schnabel, R., Numerical Methods for Unconstrained Optimization and Nonlinear Equations, Prentice Hall, 1983.
[6] Dongarra, J. and Van de Geijn A., Two Dimensional Basic Linear Algebra Comunications Subprograms, Tecnical report st-cs-91-138, Department of Computer Science, Univertisy of Tenessee, 1991.
[7] Hammarling, S. et al., An Extended Set of Fortran Basic Linear Algebra Subroutines, ACM Trans. Methemathical Software, 1988.
[8] Kumar, V. et al., Introduction to Parallel Computing. Design and Analysis Algorithms, The Benjamin/Cummings Publishing Company, 1994.
[9] Bai, Z. et al., The Intercept Method for Inverse Singular Value Problems, 2003.
[10] Chen, X. and Chu, T., On the Least Squares Solution of Inverse Eigenvalue Problems, SIAM, Journal on Numerical Analysis, Vol. 33, No. 6, 1996, pp 2417-2430.
[11] Chu M., Numerical Methods for Inverse Singular Value Problems. SIAM, Journal Numerical Analysis, Vol. 29, 1992, pp 885-903.
[12] Friedland, S. et al., The Formulation and Analysis of Numerical Methods for Inverse Eigenvalue Problems, SIAM, Journal on NumericalAnalysis, Vol. 4, No. 3, 1987, pp 634-667.
[13] Flores, G., Un conjunto de métodos para la resolución del PIAVS, Technical Report, DSIC/04, Departamento de Sistemas y Computación, Universidad Politécnica de Valencia, 2004.
[14] Engl, H. and Kügler, P.
Nonlinear Inverse Problems: Theoretical Aspects and Some Industrial Applications. Institute for Pure&Applied Mathematics. University of California, Los Angeles.
http://www.ipam.ucla.edu/programs/invtut/, 2003.