UT DA
Wei Ye1, Meng Li1, Kai Zhong2, Bei Yu3, David Z. Pan1
1ECE Department, University of Texas at Austin 2ICES, University of Texas at Austin 3CSE Department, Chinese University of Hong Kong
UT DA Power Grid Reduction by Sparse Convex Optimization Wei Ye 1 - - PowerPoint PPT Presentation
UT DA Power Grid Reduction by Sparse Convex Optimization Wei Ye 1 , Meng Li 1 , Kai Zhong 2 , Bei Yu 3 , David Z. Pan 1 1 ECE Department, University of Texas at Austin 2 ICES, University of Texas at Austin 3 CSE Department, Chinese University of
1ECE Department, University of Texas at Austin 2ICES, University of Texas at Austin 3CSE Department, Chinese University of Hong Kong
t Power grid
› Multi-layer mesh structure › Supply power for on-chip devices
t Power grid verification
› Verify current density in metal wires (EM) › Verify voltage drop on the grids › More expensive due to increasing sizes of grids
» e.g., 10M nodes, >3 days
1
[Yassine+, ICCAD’16]
t Circuit modeling
› Resistors to represent metal wires/vias › Current sources to represent current drawn by underlying devices › Voltage sources to represent external power supply › Transient: capacitors are attached from each node to ground
t Port node: node attached current/voltage sources t Non-port node: only has internal connection
2
Port node Non-port node Current source Voltage source
t Resistive grid model:
t A power grid is safe, if ∀𝑗:
/0
t Long runtime to solve 𝑀𝑤 = 𝑗 for large linear systems
3
Li,j = (P
k,k6=i g(i, k),
if i = j g(i, j), if i 6= j
<latexit sha1_base64="zHlfSxuDi4HaHMLIvOLEdVWXZac=">AC1HicbVHLjtMwFHXCawivAks2V1SgQSpVMkICFiONYMOCxSBRWqmJIse56biJnTR2gMryCrHly/gBfoMvwO1EBaZzJMtH5z51btZUXOkw/OX5V65eu37j4GZw6/adu/cG9x98UnXMpywuqrbWUYVlziRHNd4axpkYqswmlWvt3Ep5+xVbyWH/W6wUTQheQFZ1Q7KR38DKDH+9Tw0dLC8U6JM1xwaZhr+xO3UVJ1JTjqCEWOIKuIXFIR+Vz0bwFOLVqM5xBq/asMLsMDhGJYQx3t9nm+qlq5qH5f32U5b/t0SZd7vmA6G4TjcAvZJ1JMh6XGaDn7Hec06gVKzio1j8JGJ4a2mrMKbRB3ChvKSrAuaOSClSJ2bpu4YlTcijq1j2pYav+W2GoUGotMpcpqD5TF2Mb8bLYvNPFq8Rw2XQaJTsfVHQV6Bo2J4Sct8h0tXaEspa7XYGd0ZYy7Q4dOHu+sFoI6myJhZ1HifvcjKw8jawJkUXbRkn0yOxq/H0YcXw5M3vVsH5BF5TA5JRF6SE/KOnJIJYd6RN/Ool/lT3/rf/O/nqb7X1zwk/8H/8QfetMys</latexit><latexit sha1_base64="zHlfSxuDi4HaHMLIvOLEdVWXZac=">AC1HicbVHLjtMwFHXCawivAks2V1SgQSpVMkICFiONYMOCxSBRWqmJIse56biJnTR2gMryCrHly/gBfoMvwO1EBaZzJMtH5z51btZUXOkw/OX5V65eu37j4GZw6/adu/cG9x98UnXMpywuqrbWUYVlziRHNd4axpkYqswmlWvt3Ep5+xVbyWH/W6wUTQheQFZ1Q7KR38DKDH+9Tw0dLC8U6JM1xwaZhr+xO3UVJ1JTjqCEWOIKuIXFIR+Vz0bwFOLVqM5xBq/asMLsMDhGJYQx3t9nm+qlq5qH5f32U5b/t0SZd7vmA6G4TjcAvZJ1JMh6XGaDn7Hec06gVKzio1j8JGJ4a2mrMKbRB3ChvKSrAuaOSClSJ2bpu4YlTcijq1j2pYav+W2GoUGotMpcpqD5TF2Mb8bLYvNPFq8Rw2XQaJTsfVHQV6Bo2J4Sct8h0tXaEspa7XYGd0ZYy7Q4dOHu+sFoI6myJhZ1HifvcjKw8jawJkUXbRkn0yOxq/H0YcXw5M3vVsH5BF5TA5JRF6SE/KOnJIJYd6RN/Ool/lT3/rf/O/nqb7X1zwk/8H/8QfetMys</latexit><latexit sha1_base64="zHlfSxuDi4HaHMLIvOLEdVWXZac=">AC1HicbVHLjtMwFHXCawivAks2V1SgQSpVMkICFiONYMOCxSBRWqmJIse56biJnTR2gMryCrHly/gBfoMvwO1EBaZzJMtH5z51btZUXOkw/OX5V65eu37j4GZw6/adu/cG9x98UnXMpywuqrbWUYVlziRHNd4axpkYqswmlWvt3Ep5+xVbyWH/W6wUTQheQFZ1Q7KR38DKDH+9Tw0dLC8U6JM1xwaZhr+xO3UVJ1JTjqCEWOIKuIXFIR+Vz0bwFOLVqM5xBq/asMLsMDhGJYQx3t9nm+qlq5qH5f32U5b/t0SZd7vmA6G4TjcAvZJ1JMh6XGaDn7Hec06gVKzio1j8JGJ4a2mrMKbRB3ChvKSrAuaOSClSJ2bpu4YlTcijq1j2pYav+W2GoUGotMpcpqD5TF2Mb8bLYvNPFq8Rw2XQaJTsfVHQV6Bo2J4Sct8h0tXaEspa7XYGd0ZYy7Q4dOHu+sFoI6myJhZ1HifvcjKw8jawJkUXbRkn0yOxq/H0YcXw5M3vVsH5BF5TA5JRF6SE/KOnJIJYd6RN/Ool/lT3/rf/O/nqb7X1zwk/8H/8QfetMys</latexit><latexit sha1_base64="zHlfSxuDi4HaHMLIvOLEdVWXZac=">AC1HicbVHLjtMwFHXCawivAks2V1SgQSpVMkICFiONYMOCxSBRWqmJIse56biJnTR2gMryCrHly/gBfoMvwO1EBaZzJMtH5z51btZUXOkw/OX5V65eu37j4GZw6/adu/cG9x98UnXMpywuqrbWUYVlziRHNd4axpkYqswmlWvt3Ep5+xVbyWH/W6wUTQheQFZ1Q7KR38DKDH+9Tw0dLC8U6JM1xwaZhr+xO3UVJ1JTjqCEWOIKuIXFIR+Vz0bwFOLVqM5xBq/asMLsMDhGJYQx3t9nm+qlq5qH5f32U5b/t0SZd7vmA6G4TjcAvZJ1JMh6XGaDn7Hec06gVKzio1j8JGJ4a2mrMKbRB3ChvKSrAuaOSClSJ2bpu4YlTcijq1j2pYav+W2GoUGotMpcpqD5TF2Mb8bLYvNPFq8Rw2XQaJTsfVHQV6Bo2J4Sct8h0tXaEspa7XYGd0ZYy7Q4dOHu+sFoI6myJhZ1HifvcjKw8jawJkUXbRkn0yOxq/H0YcXw5M3vVsH5BF5TA5JRF6SE/KOnJIJYd6RN/Ool/lT3/rf/O/nqb7X1zwk/8H/8QfetMys</latexit>t Power grid reduction
t Topological methods
t Numerical methods
4
t Input:
› Large power grid › Current source values
t Output: reduced power grid
› Small › Sparse (as input grid) › Keep all the port nodes › Preserve the accuracy in terms of voltage drop error
5
6
Node and edge set generation Store reduced nodes and edges Node elimination by Schur complement Edge sparsification by GCD Large graph partition
For each subgraph:
t Linear system: 𝑀𝑤 = 𝑗 t 𝑀 can be represented as a 2×2 block-matrix:
𝑀 = 𝑀33 𝑀34 𝑀34
5
𝑀44
t 𝑤 and 𝑗 can be represented as follows:
𝑤 = 𝑤3 𝑤4 and 𝑗 = 𝑗3
t Applying Schur complement on the DC system:
𝑀 7 = 𝑀33 − 𝑀34𝑀44
93𝑀34 5
which satisfies: 𝑀 7𝑤3 = 𝑗3
7
L L11 L12 L>
12
L22 b L
t Output graph keeps all the nodes of interest t Output graph is dense t Edge sparsification: sparsify the reduced Laplacian without losing
accuracy
8
a b d e c f g h i j a b d e c a b d e c
Node Elimination Edge Sparsification
t Goal of edge sparsification
› Accuracy › Sparsity reduce the nonzero elements off-the-diagonal in L
t Formulation (1): t Formulation (2): [Wang+, DAC2014]
9
min
X∈Rn×n
1 2m
m
X
k=1
k(X L)vkk2
2 + λ n
X
i=1
Xi,i, s.t. X is a Laplacian matrix
<latexit sha1_base64="qh+s7vd4ij4p68PekAhTVMW9ae0=">ACkHicbVFNb9QwEHXCV1mg3dIjlxErUBElSlaVaA+FAheEeiIpZE2u5HjdVprbSeynaor4/wefg83/g3O7iJBy0iWnt+80cy8KWrOtInjX0F46/adu/c27vcePHy0udXfvxNV40idEQqXqm0wJpyJunIMNpWiuKRcHpWTH/0OXPLqnSrJfzaKmE4HPJSsZwcZTef8HQCaYzG0KGZMeY3NRFPaLm1qZGSaoBukctPAc2qxUmNjE2aFwmW5EbudHiZsKyL7vpvAKTl7AZT73v3w4HcJLyLifY4ZhpWdVkLq0R5ze5AZemVs2+rIRK2D9A/BdIvbE1xzTBiWrR9IsSvXy/uDOIqXATdBsgYDtI7TvP8zm1WkEVQawrHW4ySuzcRiZRjh1PWyRtMakzk+p2MPJfa7TuzSUQfPDODslL+SQNL9u8Ki4XWC1F4ZeYvp7ryP/lxo0pDyaWyboxVJVo7LhYCrozgMzpigxfOEBJor5WYFcYO+78UfsTEiur3wTjIbRYZR83h8cv1+7sYGeoKdoFyXoNTpGH9EpGiESbAb7wVHwJtwJD8O34buVNAzWNTvonwg/QZO/8aj</latexit><latexit sha1_base64="qh+s7vd4ij4p68PekAhTVMW9ae0=">ACkHicbVFNb9QwEHXCV1mg3dIjlxErUBElSlaVaA+FAheEeiIpZE2u5HjdVprbSeynaor4/wefg83/g3O7iJBy0iWnt+80cy8KWrOtInjX0F46/adu/c27vcePHy0udXfvxNV40idEQqXqm0wJpyJunIMNpWiuKRcHpWTH/0OXPLqnSrJfzaKmE4HPJSsZwcZTef8HQCaYzG0KGZMeY3NRFPaLm1qZGSaoBukctPAc2qxUmNjE2aFwmW5EbudHiZsKyL7vpvAKTl7AZT73v3w4HcJLyLifY4ZhpWdVkLq0R5ze5AZemVs2+rIRK2D9A/BdIvbE1xzTBiWrR9IsSvXy/uDOIqXATdBsgYDtI7TvP8zm1WkEVQawrHW4ySuzcRiZRjh1PWyRtMakzk+p2MPJfa7TuzSUQfPDODslL+SQNL9u8Ki4XWC1F4ZeYvp7ryP/lxo0pDyaWyboxVJVo7LhYCrozgMzpigxfOEBJor5WYFcYO+78UfsTEiur3wTjIbRYZR83h8cv1+7sYGeoKdoFyXoNTpGH9EpGiESbAb7wVHwJtwJD8O34buVNAzWNTvonwg/QZO/8aj</latexit><latexit sha1_base64="qh+s7vd4ij4p68PekAhTVMW9ae0=">ACkHicbVFNb9QwEHXCV1mg3dIjlxErUBElSlaVaA+FAheEeiIpZE2u5HjdVprbSeynaor4/wefg83/g3O7iJBy0iWnt+80cy8KWrOtInjX0F46/adu/c27vcePHy0udXfvxNV40idEQqXqm0wJpyJunIMNpWiuKRcHpWTH/0OXPLqnSrJfzaKmE4HPJSsZwcZTef8HQCaYzG0KGZMeY3NRFPaLm1qZGSaoBukctPAc2qxUmNjE2aFwmW5EbudHiZsKyL7vpvAKTl7AZT73v3w4HcJLyLifY4ZhpWdVkLq0R5ze5AZemVs2+rIRK2D9A/BdIvbE1xzTBiWrR9IsSvXy/uDOIqXATdBsgYDtI7TvP8zm1WkEVQawrHW4ySuzcRiZRjh1PWyRtMakzk+p2MPJfa7TuzSUQfPDODslL+SQNL9u8Ki4XWC1F4ZeYvp7ryP/lxo0pDyaWyboxVJVo7LhYCrozgMzpigxfOEBJor5WYFcYO+78UfsTEiur3wTjIbRYZR83h8cv1+7sYGeoKdoFyXoNTpGH9EpGiESbAb7wVHwJtwJD8O34buVNAzWNTvonwg/QZO/8aj</latexit><latexit sha1_base64="qh+s7vd4ij4p68PekAhTVMW9ae0=">ACkHicbVFNb9QwEHXCV1mg3dIjlxErUBElSlaVaA+FAheEeiIpZE2u5HjdVprbSeynaor4/wefg83/g3O7iJBy0iWnt+80cy8KWrOtInjX0F46/adu/c27vcePHy0udXfvxNV40idEQqXqm0wJpyJunIMNpWiuKRcHpWTH/0OXPLqnSrJfzaKmE4HPJSsZwcZTef8HQCaYzG0KGZMeY3NRFPaLm1qZGSaoBukctPAc2qxUmNjE2aFwmW5EbudHiZsKyL7vpvAKTl7AZT73v3w4HcJLyLifY4ZhpWdVkLq0R5ze5AZemVs2+rIRK2D9A/BdIvbE1xzTBiWrR9IsSvXy/uDOIqXATdBsgYDtI7TvP8zm1WkEVQawrHW4ySuzcRiZRjh1PWyRtMakzk+p2MPJfa7TuzSUQfPDODslL+SQNL9u8Ki4XWC1F4ZeYvp7ryP/lxo0pDyaWyboxVJVo7LhYCrozgMzpigxfOEBJor5WYFcYO+78UfsTEiur3wTjIbRYZR83h8cv1+7sYGeoKdoFyXoNTpGH9EpGiESbAb7wVHwJtwJD8O34buVNAzWNTvonwg/QZO/8aj</latexit>min
X∈Rn×n
1 2m
m
X
k=1
k(X L)vkk2
2 + λkXk0,
s.t. X is a Laplacian matrix
<latexit sha1_base64="29sBvMDwc0ozHGv5eH9XfVOryDY=">ACh3icbZHPbhMxEMa9C4US/jSFI5cREaiosNqNSikHpAIXDj0URGikOFl5HW9rxfaubG/VyHhfhXfixtvgTXKAlpEsf6NR575pqgFNzZNf0fxrdtbd+5u3+vdf/Dw0U5/9/F3UzWashGtRKXHBTFMcMVGlvBxrVmRBaCnRWLT13+7Jpwyv1zS5rNpXkXPGSU2IDyvs/IQSWXOVuDJiroIm9KAr31c+cwpZLZkB5Dy28gBaXmlCXeTeUHptG5m7xPvMzCfjH3hew8lLuMwX4ZYPZ0PYByxCJ3MSAIw7mr4CbNmVdW1rEpu0vsNrwE1L2hNSC0I5UW3oQvMr38v7gzRJVwE3RbYRA7SJ07z/C8r2kimLBXEmEmW1nbqiLacCuZ7uDGsJnRBztkSEXCgFO3MtLD80DmUFY6HGVhRf+ucEQas5RFeNnZK7nOvi/3KSx5dHUcVU3lim6/qhsBNgKuq3AnGtGrVgGQajmoVegFySYbcPuOhOy6yPfFKNh8i7JvhwMj9u3NhGT9EztIcy9BYdo8/oFI0Qjbai/egehP34jQ+jI/WT+NoU/ME/RPxhz/qIcHo</latexit><latexit sha1_base64="29sBvMDwc0ozHGv5eH9XfVOryDY=">ACh3icbZHPbhMxEMa9C4US/jSFI5cREaiosNqNSikHpAIXDj0URGikOFl5HW9rxfaubG/VyHhfhXfixtvgTXKAlpEsf6NR575pqgFNzZNf0fxrdtbd+5u3+vdf/Dw0U5/9/F3UzWashGtRKXHBTFMcMVGlvBxrVmRBaCnRWLT13+7Jpwyv1zS5rNpXkXPGSU2IDyvs/IQSWXOVuDJiroIm9KAr31c+cwpZLZkB5Dy28gBaXmlCXeTeUHptG5m7xPvMzCfjH3hew8lLuMwX4ZYPZ0PYByxCJ3MSAIw7mr4CbNmVdW1rEpu0vsNrwE1L2hNSC0I5UW3oQvMr38v7gzRJVwE3RbYRA7SJ07z/C8r2kimLBXEmEmW1nbqiLacCuZ7uDGsJnRBztkSEXCgFO3MtLD80DmUFY6HGVhRf+ucEQas5RFeNnZK7nOvi/3KSx5dHUcVU3lim6/qhsBNgKuq3AnGtGrVgGQajmoVegFySYbcPuOhOy6yPfFKNh8i7JvhwMj9u3NhGT9EztIcy9BYdo8/oFI0Qjbai/egehP34jQ+jI/WT+NoU/ME/RPxhz/qIcHo</latexit><latexit sha1_base64="29sBvMDwc0ozHGv5eH9XfVOryDY=">ACh3icbZHPbhMxEMa9C4US/jSFI5cREaiosNqNSikHpAIXDj0URGikOFl5HW9rxfaubG/VyHhfhXfixtvgTXKAlpEsf6NR575pqgFNzZNf0fxrdtbd+5u3+vdf/Dw0U5/9/F3UzWashGtRKXHBTFMcMVGlvBxrVmRBaCnRWLT13+7Jpwyv1zS5rNpXkXPGSU2IDyvs/IQSWXOVuDJiroIm9KAr31c+cwpZLZkB5Dy28gBaXmlCXeTeUHptG5m7xPvMzCfjH3hew8lLuMwX4ZYPZ0PYByxCJ3MSAIw7mr4CbNmVdW1rEpu0vsNrwE1L2hNSC0I5UW3oQvMr38v7gzRJVwE3RbYRA7SJ07z/C8r2kimLBXEmEmW1nbqiLacCuZ7uDGsJnRBztkSEXCgFO3MtLD80DmUFY6HGVhRf+ucEQas5RFeNnZK7nOvi/3KSx5dHUcVU3lim6/qhsBNgKuq3AnGtGrVgGQajmoVegFySYbcPuOhOy6yPfFKNh8i7JvhwMj9u3NhGT9EztIcy9BYdo8/oFI0Qjbai/egehP34jQ+jI/WT+NoU/ME/RPxhz/qIcHo</latexit><latexit sha1_base64="29sBvMDwc0ozHGv5eH9XfVOryDY=">ACh3icbZHPbhMxEMa9C4US/jSFI5cREaiosNqNSikHpAIXDj0URGikOFl5HW9rxfaubG/VyHhfhXfixtvgTXKAlpEsf6NR575pqgFNzZNf0fxrdtbd+5u3+vdf/Dw0U5/9/F3UzWashGtRKXHBTFMcMVGlvBxrVmRBaCnRWLT13+7Jpwyv1zS5rNpXkXPGSU2IDyvs/IQSWXOVuDJiroIm9KAr31c+cwpZLZkB5Dy28gBaXmlCXeTeUHptG5m7xPvMzCfjH3hew8lLuMwX4ZYPZ0PYByxCJ3MSAIw7mr4CbNmVdW1rEpu0vsNrwE1L2hNSC0I5UW3oQvMr38v7gzRJVwE3RbYRA7SJ07z/C8r2kimLBXEmEmW1nbqiLacCuZ7uDGsJnRBztkSEXCgFO3MtLD80DmUFY6HGVhRf+ucEQas5RFeNnZK7nOvi/3KSx5dHUcVU3lim6/qhsBNgKuq3AnGtGrVgGQajmoVegFySYbcPuOhOy6yPfFKNh8i7JvhwMj9u3NhGT9EztIcy9BYdo8/oFI0Qjbai/egehP34jQ+jI/WT+NoU/ME/RPxhz/qIcHo</latexit>min
X∈Rn×n
1 2m
m
X
k=1
k(X L)vkk2
2 + λkXk1,
s.t. X is a Laplacian matrix
<latexit sha1_base64="d9jbmPbtnV0hb+lORXj+E6tbPK8=">ACh3icbZHPbhMxEMa9C4US/jSFI5cREaiosNqNSikHpAIXDj0URGikOFl5HW9rxfaubG/VyHhfhXfixtvgTXKAlpEsf6NR575pqgFNzZNf0fxrdtbd+5u3+vdf/Dw0U5/9/F3UzWashGtRKXHBTFMcMVGlvBxrVmRBaCnRWLT13+7Jpwyv1zS5rNpXkXPGSU2IDyvs/IQSWXOVuDJiroIm9KAr31c+cwpZLZkB5Dy28gBaXmlCXeTeUHptG5m7xPvMzCfjH3hew8lLuMwX4ZYPZ0PYByxCJ3MSAIw7mr0CbNmVdW1rEpu0vsNrwE1L2hNSC0I5UW3oQvMr38v7gzRJVwE3RbYRA7SJ07z/C8r2kimLBXEmEmW1nbqiLacCuZ7uDGsJnRBztkSEXCgFO3MtLD80DmUFY6HGVhRf+ucEQas5RFeNnZK7nOvi/3KSx5dHUcVU3lim6/qhsBNgKuq3AnGtGrVgGQajmoVegFySYbcPuOhOy6yPfFKNh8i7JvhwMj9u3NhGT9EztIcy9BYdo8/oFI0Qjbai/egehP34jQ+jI/WT+NoU/ME/RPxhz/r1cHp</latexit><latexit sha1_base64="d9jbmPbtnV0hb+lORXj+E6tbPK8=">ACh3icbZHPbhMxEMa9C4US/jSFI5cREaiosNqNSikHpAIXDj0URGikOFl5HW9rxfaubG/VyHhfhXfixtvgTXKAlpEsf6NR575pqgFNzZNf0fxrdtbd+5u3+vdf/Dw0U5/9/F3UzWashGtRKXHBTFMcMVGlvBxrVmRBaCnRWLT13+7Jpwyv1zS5rNpXkXPGSU2IDyvs/IQSWXOVuDJiroIm9KAr31c+cwpZLZkB5Dy28gBaXmlCXeTeUHptG5m7xPvMzCfjH3hew8lLuMwX4ZYPZ0PYByxCJ3MSAIw7mr0CbNmVdW1rEpu0vsNrwE1L2hNSC0I5UW3oQvMr38v7gzRJVwE3RbYRA7SJ07z/C8r2kimLBXEmEmW1nbqiLacCuZ7uDGsJnRBztkSEXCgFO3MtLD80DmUFY6HGVhRf+ucEQas5RFeNnZK7nOvi/3KSx5dHUcVU3lim6/qhsBNgKuq3AnGtGrVgGQajmoVegFySYbcPuOhOy6yPfFKNh8i7JvhwMj9u3NhGT9EztIcy9BYdo8/oFI0Qjbai/egehP34jQ+jI/WT+NoU/ME/RPxhz/r1cHp</latexit><latexit sha1_base64="d9jbmPbtnV0hb+lORXj+E6tbPK8=">ACh3icbZHPbhMxEMa9C4US/jSFI5cREaiosNqNSikHpAIXDj0URGikOFl5HW9rxfaubG/VyHhfhXfixtvgTXKAlpEsf6NR575pqgFNzZNf0fxrdtbd+5u3+vdf/Dw0U5/9/F3UzWashGtRKXHBTFMcMVGlvBxrVmRBaCnRWLT13+7Jpwyv1zS5rNpXkXPGSU2IDyvs/IQSWXOVuDJiroIm9KAr31c+cwpZLZkB5Dy28gBaXmlCXeTeUHptG5m7xPvMzCfjH3hew8lLuMwX4ZYPZ0PYByxCJ3MSAIw7mr0CbNmVdW1rEpu0vsNrwE1L2hNSC0I5UW3oQvMr38v7gzRJVwE3RbYRA7SJ07z/C8r2kimLBXEmEmW1nbqiLacCuZ7uDGsJnRBztkSEXCgFO3MtLD80DmUFY6HGVhRf+ucEQas5RFeNnZK7nOvi/3KSx5dHUcVU3lim6/qhsBNgKuq3AnGtGrVgGQajmoVegFySYbcPuOhOy6yPfFKNh8i7JvhwMj9u3NhGT9EztIcy9BYdo8/oFI0Qjbai/egehP34jQ+jI/WT+NoU/ME/RPxhz/r1cHp</latexit><latexit sha1_base64="d9jbmPbtnV0hb+lORXj+E6tbPK8=">ACh3icbZHPbhMxEMa9C4US/jSFI5cREaiosNqNSikHpAIXDj0URGikOFl5HW9rxfaubG/VyHhfhXfixtvgTXKAlpEsf6NR575pqgFNzZNf0fxrdtbd+5u3+vdf/Dw0U5/9/F3UzWashGtRKXHBTFMcMVGlvBxrVmRBaCnRWLT13+7Jpwyv1zS5rNpXkXPGSU2IDyvs/IQSWXOVuDJiroIm9KAr31c+cwpZLZkB5Dy28gBaXmlCXeTeUHptG5m7xPvMzCfjH3hew8lLuMwX4ZYPZ0PYByxCJ3MSAIw7mr0CbNmVdW1rEpu0vsNrwE1L2hNSC0I5UW3oQvMr38v7gzRJVwE3RbYRA7SJ07z/C8r2kimLBXEmEmW1nbqiLacCuZ7uDGsJnRBztkSEXCgFO3MtLD80DmUFY6HGVhRf+ucEQas5RFeNnZK7nOvi/3KSx5dHUcVU3lim6/qhsBNgKuq3AnGtGrVgGQajmoVegFySYbcPuOhOy6yPfFKNh8i7JvhwMj9u3NhGT9EztIcy9BYdo8/oFI0Qjbai/egehP34jQ+jI/WT+NoU/ME/RPxhz/r1cHp</latexit>. . . .
L2 norm L1 norm
min
X∈Rn×n
1 2m
m
X
k=1
k(X L)vkk2
2 + λ n
X
i=1
Xi,i, s.t. X is a Laplacian matrix
<latexit sha1_base64="qh+s7vd4ij4p68PekAhTVMW9ae0=">ACkHicbVFNb9QwEHXCV1mg3dIjlxErUBElSlaVaA+FAheEeiIpZE2u5HjdVprbSeynaor4/wefg83/g3O7iJBy0iWnt+80cy8KWrOtInjX0F46/adu/c27vcePHy0udXfvxNV40idEQqXqm0wJpyJunIMNpWiuKRcHpWTH/0OXPLqnSrJfzaKmE4HPJSsZwcZTef8HQCaYzG0KGZMeY3NRFPaLm1qZGSaoBukctPAc2qxUmNjE2aFwmW5EbudHiZsKyL7vpvAKTl7AZT73v3w4HcJLyLifY4ZhpWdVkLq0R5ze5AZemVs2+rIRK2D9A/BdIvbE1xzTBiWrR9IsSvXy/uDOIqXATdBsgYDtI7TvP8zm1WkEVQawrHW4ySuzcRiZRjh1PWyRtMakzk+p2MPJfa7TuzSUQfPDODslL+SQNL9u8Ki4XWC1F4ZeYvp7ryP/lxo0pDyaWyboxVJVo7LhYCrozgMzpigxfOEBJor5WYFcYO+78UfsTEiur3wTjIbRYZR83h8cv1+7sYGeoKdoFyXoNTpGH9EpGiESbAb7wVHwJtwJD8O34buVNAzWNTvonwg/QZO/8aj</latexit><latexit sha1_base64="qh+s7vd4ij4p68PekAhTVMW9ae0=">ACkHicbVFNb9QwEHXCV1mg3dIjlxErUBElSlaVaA+FAheEeiIpZE2u5HjdVprbSeynaor4/wefg83/g3O7iJBy0iWnt+80cy8KWrOtInjX0F46/adu/c27vcePHy0udXfvxNV40idEQqXqm0wJpyJunIMNpWiuKRcHpWTH/0OXPLqnSrJfzaKmE4HPJSsZwcZTef8HQCaYzG0KGZMeY3NRFPaLm1qZGSaoBukctPAc2qxUmNjE2aFwmW5EbudHiZsKyL7vpvAKTl7AZT73v3w4HcJLyLifY4ZhpWdVkLq0R5ze5AZemVs2+rIRK2D9A/BdIvbE1xzTBiWrR9IsSvXy/uDOIqXATdBsgYDtI7TvP8zm1WkEVQawrHW4ySuzcRiZRjh1PWyRtMakzk+p2MPJfa7TuzSUQfPDODslL+SQNL9u8Ki4XWC1F4ZeYvp7ryP/lxo0pDyaWyboxVJVo7LhYCrozgMzpigxfOEBJor5WYFcYO+78UfsTEiur3wTjIbRYZR83h8cv1+7sYGeoKdoFyXoNTpGH9EpGiESbAb7wVHwJtwJD8O34buVNAzWNTvonwg/QZO/8aj</latexit><latexit sha1_base64="qh+s7vd4ij4p68PekAhTVMW9ae0=">ACkHicbVFNb9QwEHXCV1mg3dIjlxErUBElSlaVaA+FAheEeiIpZE2u5HjdVprbSeynaor4/wefg83/g3O7iJBy0iWnt+80cy8KWrOtInjX0F46/adu/c27vcePHy0udXfvxNV40idEQqXqm0wJpyJunIMNpWiuKRcHpWTH/0OXPLqnSrJfzaKmE4HPJSsZwcZTef8HQCaYzG0KGZMeY3NRFPaLm1qZGSaoBukctPAc2qxUmNjE2aFwmW5EbudHiZsKyL7vpvAKTl7AZT73v3w4HcJLyLifY4ZhpWdVkLq0R5ze5AZemVs2+rIRK2D9A/BdIvbE1xzTBiWrR9IsSvXy/uDOIqXATdBsgYDtI7TvP8zm1WkEVQawrHW4ySuzcRiZRjh1PWyRtMakzk+p2MPJfa7TuzSUQfPDODslL+SQNL9u8Ki4XWC1F4ZeYvp7ryP/lxo0pDyaWyboxVJVo7LhYCrozgMzpigxfOEBJor5WYFcYO+78UfsTEiur3wTjIbRYZR83h8cv1+7sYGeoKdoFyXoNTpGH9EpGiESbAb7wVHwJtwJD8O34buVNAzWNTvonwg/QZO/8aj</latexit><latexit sha1_base64="qh+s7vd4ij4p68PekAhTVMW9ae0=">ACkHicbVFNb9QwEHXCV1mg3dIjlxErUBElSlaVaA+FAheEeiIpZE2u5HjdVprbSeynaor4/wefg83/g3O7iJBy0iWnt+80cy8KWrOtInjX0F46/adu/c27vcePHy0udXfvxNV40idEQqXqm0wJpyJunIMNpWiuKRcHpWTH/0OXPLqnSrJfzaKmE4HPJSsZwcZTef8HQCaYzG0KGZMeY3NRFPaLm1qZGSaoBukctPAc2qxUmNjE2aFwmW5EbudHiZsKyL7vpvAKTl7AZT73v3w4HcJLyLifY4ZhpWdVkLq0R5ze5AZemVs2+rIRK2D9A/BdIvbE1xzTBiWrR9IsSvXy/uDOIqXATdBsgYDtI7TvP8zm1WkEVQawrHW4ySuzcRiZRjh1PWyRtMakzk+p2MPJfa7TuzSUQfPDODslL+SQNL9u8Ki4XWC1F4ZeYvp7ryP/lxo0pDyaWyboxVJVo7LhYCrozgMzpigxfOEBJor5WYFcYO+78UfsTEiur3wTjIbRYZR83h8cv1+7sYGeoKdoFyXoNTpGH9EpGiESbAb7wVHwJtwJD8O34buVNAzWNTvonwg/QZO/8aj</latexit>t Formulation (2): [DAC2014 Wang+] t Formulation (3):
› Weight vector: › Strongly convex and coordinate-wise Lipschitz smooth
10
Problem: accuracy on the Vdd node does not guarantee accuracy on the current source nodes i0 ik, 8i = 1, · · · , 9
<latexit sha1_base64="QYuch9wWlE6tJn3GNCVZJWyUDxI=">AC3icbVDNSsNAGNz4W+tf1aOXxSJ4KCURQXsQil48VjC20ISw2WzSpZvdsLsRSugDePFVvHhQ8eoLePNt3LY5aOvAwjAzH/t9E2aMKm3b39bS8srq2nplo7q5tb2zW9vbv1cil5i4WDAheyFShFOXE01I71MEpSGjHTD4fXE7z4Qqajgd3qUET9FCacxUgbKajVaWBDL0kgDYN6MVCIsYghZfQaXg4Elo1WiZlN+0p4CJxSlIHJTpB7cuLBM5TwjVmSKm+Y2faL5DUFDMyrnq5IhnCQ5SQvqEcpUT5xfSYMTw2SgTNIuZxDafq74kCpUqN0tAkU6QHat6biP95/VzHF35BeZrwvHsozhnUAs4aQZGVBKs2cgQhCU1u0I8QBJhbfqrmhKc+ZMXiXvabDWd27N6+6psowIOwRE4AQ4B21wAzrABRg8gmfwCt6sJ+vFerc+ZtElq5w5AH9gf4AXqWY2w=</latexit><latexit sha1_base64="QYuch9wWlE6tJn3GNCVZJWyUDxI=">AC3icbVDNSsNAGNz4W+tf1aOXxSJ4KCURQXsQil48VjC20ISw2WzSpZvdsLsRSugDePFVvHhQ8eoLePNt3LY5aOvAwjAzH/t9E2aMKm3b39bS8srq2nplo7q5tb2zW9vbv1cil5i4WDAheyFShFOXE01I71MEpSGjHTD4fXE7z4Qqajgd3qUET9FCacxUgbKajVaWBDL0kgDYN6MVCIsYghZfQaXg4Elo1WiZlN+0p4CJxSlIHJTpB7cuLBM5TwjVmSKm+Y2faL5DUFDMyrnq5IhnCQ5SQvqEcpUT5xfSYMTw2SgTNIuZxDafq74kCpUqN0tAkU6QHat6biP95/VzHF35BeZrwvHsozhnUAs4aQZGVBKs2cgQhCU1u0I8QBJhbfqrmhKc+ZMXiXvabDWd27N6+6psowIOwRE4AQ4B21wAzrABRg8gmfwCt6sJ+vFerc+ZtElq5w5AH9gf4AXqWY2w=</latexit><latexit sha1_base64="QYuch9wWlE6tJn3GNCVZJWyUDxI=">AC3icbVDNSsNAGNz4W+tf1aOXxSJ4KCURQXsQil48VjC20ISw2WzSpZvdsLsRSugDePFVvHhQ8eoLePNt3LY5aOvAwjAzH/t9E2aMKm3b39bS8srq2nplo7q5tb2zW9vbv1cil5i4WDAheyFShFOXE01I71MEpSGjHTD4fXE7z4Qqajgd3qUET9FCacxUgbKajVaWBDL0kgDYN6MVCIsYghZfQaXg4Elo1WiZlN+0p4CJxSlIHJTpB7cuLBM5TwjVmSKm+Y2faL5DUFDMyrnq5IhnCQ5SQvqEcpUT5xfSYMTw2SgTNIuZxDafq74kCpUqN0tAkU6QHat6biP95/VzHF35BeZrwvHsozhnUAs4aQZGVBKs2cgQhCU1u0I8QBJhbfqrmhKc+ZMXiXvabDWd27N6+6psowIOwRE4AQ4B21wAzrABRg8gmfwCt6sJ+vFerc+ZtElq5w5AH9gf4AXqWY2w=</latexit><latexit sha1_base64="QYuch9wWlE6tJn3GNCVZJWyUDxI=">AC3icbVDNSsNAGNz4W+tf1aOXxSJ4KCURQXsQil48VjC20ISw2WzSpZvdsLsRSugDePFVvHhQ8eoLePNt3LY5aOvAwjAzH/t9E2aMKm3b39bS8srq2nplo7q5tb2zW9vbv1cil5i4WDAheyFShFOXE01I71MEpSGjHTD4fXE7z4Qqajgd3qUET9FCacxUgbKajVaWBDL0kgDYN6MVCIsYghZfQaXg4Elo1WiZlN+0p4CJxSlIHJTpB7cuLBM5TwjVmSKm+Y2faL5DUFDMyrnq5IhnCQ5SQvqEcpUT5xfSYMTw2SgTNIuZxDafq74kCpUqN0tAkU6QHat6biP95/VzHF35BeZrwvHsozhnUAs4aQZGVBKs2cgQhCU1u0I8QBJhbfqrmhKc+ZMXiXvabDWd27N6+6psowIOwRE4AQ4B21wAzrABRg8gmfwCt6sJ+vFerc+ZtElq5w5AH9gf4AXqWY2w=</latexit>|∆i0|2 + |∆i1|2 + · · · |∆i9|2
<latexit sha1_base64="eoHNY7U4gyipA92XKl4+ycVlLew=">ACH3icbZBdSwJBFIZn+zT72uqymyEJgkB2JTDvpLro0qBNQTeZnZ3VwdkPZs4Gov6Ubvor3XREd35bxp1IdNeGHh5zjmcOa+XCK7AsbGyura+sZmbiu/vbO7t28eHD6oOJWUOTQWsWx4RDHBI+YAB8EaiWQk9ASre73rSb3+xKTicXQP/YS5IelEPOCUgEZtszxs3TABPO2NXws4XP8C+wZaFE/BjXHK5q3zYJVtKbCy8bOTAFlqrXN75Yf0zRkEVBlGraVgLugEjgVLBRvpUqlhDaIx3W1DYiIVPuYHrgCJ9q4uMglvpFgKd0fmJAQqX6oac7QwJdtVibwP9qzRSCS3fAoyQFtHZoiAVGI8SQv7XDIKoq8NoZLrv2LaJZJQ0JnmdQj24snLxikVK0X7qJQvcrSyKFjdILOkI3KqIpuUQ05iKJn9Ire0YfxYrwZn8bXrHXFyGaO0B8Z4x9R3aDQ</latexit><latexit sha1_base64="eoHNY7U4gyipA92XKl4+ycVlLew=">ACH3icbZBdSwJBFIZn+zT72uqymyEJgkB2JTDvpLro0qBNQTeZnZ3VwdkPZs4Gov6Ubvor3XREd35bxp1IdNeGHh5zjmcOa+XCK7AsbGyura+sZmbiu/vbO7t28eHD6oOJWUOTQWsWx4RDHBI+YAB8EaiWQk9ASre73rSb3+xKTicXQP/YS5IelEPOCUgEZtszxs3TABPO2NXws4XP8C+wZaFE/BjXHK5q3zYJVtKbCy8bOTAFlqrXN75Yf0zRkEVBlGraVgLugEjgVLBRvpUqlhDaIx3W1DYiIVPuYHrgCJ9q4uMglvpFgKd0fmJAQqX6oac7QwJdtVibwP9qzRSCS3fAoyQFtHZoiAVGI8SQv7XDIKoq8NoZLrv2LaJZJQ0JnmdQj24snLxikVK0X7qJQvcrSyKFjdILOkI3KqIpuUQ05iKJn9Ire0YfxYrwZn8bXrHXFyGaO0B8Z4x9R3aDQ</latexit><latexit sha1_base64="eoHNY7U4gyipA92XKl4+ycVlLew=">ACH3icbZBdSwJBFIZn+zT72uqymyEJgkB2JTDvpLro0qBNQTeZnZ3VwdkPZs4Gov6Ubvor3XREd35bxp1IdNeGHh5zjmcOa+XCK7AsbGyura+sZmbiu/vbO7t28eHD6oOJWUOTQWsWx4RDHBI+YAB8EaiWQk9ASre73rSb3+xKTicXQP/YS5IelEPOCUgEZtszxs3TABPO2NXws4XP8C+wZaFE/BjXHK5q3zYJVtKbCy8bOTAFlqrXN75Yf0zRkEVBlGraVgLugEjgVLBRvpUqlhDaIx3W1DYiIVPuYHrgCJ9q4uMglvpFgKd0fmJAQqX6oac7QwJdtVibwP9qzRSCS3fAoyQFtHZoiAVGI8SQv7XDIKoq8NoZLrv2LaJZJQ0JnmdQj24snLxikVK0X7qJQvcrSyKFjdILOkI3KqIpuUQ05iKJn9Ire0YfxYrwZn8bXrHXFyGaO0B8Z4x9R3aDQ</latexit><latexit sha1_base64="eoHNY7U4gyipA92XKl4+ycVlLew=">ACH3icbZBdSwJBFIZn+zT72uqymyEJgkB2JTDvpLro0qBNQTeZnZ3VwdkPZs4Gov6Ubvor3XREd35bxp1IdNeGHh5zjmcOa+XCK7AsbGyura+sZmbiu/vbO7t28eHD6oOJWUOTQWsWx4RDHBI+YAB8EaiWQk9ASre73rSb3+xKTicXQP/YS5IelEPOCUgEZtszxs3TABPO2NXws4XP8C+wZaFE/BjXHK5q3zYJVtKbCy8bOTAFlqrXN75Yf0zRkEVBlGraVgLugEjgVLBRvpUqlhDaIx3W1DYiIVPuYHrgCJ9q4uMglvpFgKd0fmJAQqX6oac7QwJdtVibwP9qzRSCS3fAoyQFtHZoiAVGI8SQv7XDIKoq8NoZLrv2LaJZJQ0JnmdQj24snLxikVK0X7qJQvcrSyKFjdILOkI3KqIpuUQ05iKJn9Ire0YfxYrwZn8bXrHXFyGaO0B8Z4x9R3aDQ</latexit>min
X∈Rn×n
1 2m
m
X
k=1
k((X L)vk) wk2
2 + λ n
X
i=1
Xi,i, s.t. X is a Laplacian matrix
<latexit sha1_base64="ItAezOfIaco9GlUFDNQk0Vti3Ho=">ACnHicbVFdixMxFM2MX2v9qvqmD14sShfXYaYsrD4IRH8WGEVuzvQtEMmTXdDM5khyaxbYuZX+Ut89+YaSvorgcCh3PvIfem1eCaxPHv4Lw0uUrV69tXe/cuHnr9p3u3XuHuqwVZSNailKlOdFMcMlGhvB0koxUuSCHeWLN2396JQpzUv51SwrNinIseRzTonxUtb9AR64DKzKWAuPSfmJM/tFze1EhteMA3SOWjgKTR4rgi1ibODwmFdF5ldvErctAD8vd9P4Tnsb8NptgGTLmi8M3r2WA6gGeAhZ9pRmDt4q1LQurZDnc7gA07M7ZpdGSixkH6R+C6Ic0+qQShnMjGj6b4metk3V4cxSvARZJsSA9tcJB1f+JZSeuCSUMF0XqcxJWZWKIMp4K5Dq41qwhdkGM29lQSv/XErtJ18MQrM5iXyj9pYKX+7bCk0HpZ5L6zU6fr7Xi/2rj2sxfTCyXVW2YpOuP5rUAU0J7KphxagRS08IVdzPCvSE+AsYf9A2hOT8yhfJaBC9jJLPu73h60aW+gheoz6KEF7aIjeoQM0QjR4EAyD98GH8FH4NvwYflq3hsHGcx/9g/DwN2glymA=</latexit><latexit sha1_base64="ItAezOfIaco9GlUFDNQk0Vti3Ho=">ACnHicbVFdixMxFM2MX2v9qvqmD14sShfXYaYsrD4IRH8WGEVuzvQtEMmTXdDM5khyaxbYuZX+Ut89+YaSvorgcCh3PvIfem1eCaxPHv4Lw0uUrV69tXe/cuHnr9p3u3XuHuqwVZSNailKlOdFMcMlGhvB0koxUuSCHeWLN2396JQpzUv51SwrNinIseRzTonxUtb9AR64DKzKWAuPSfmJM/tFze1EhteMA3SOWjgKTR4rgi1ibODwmFdF5ldvErctAD8vd9P4Tnsb8NptgGTLmi8M3r2WA6gGeAhZ9pRmDt4q1LQurZDnc7gA07M7ZpdGSixkH6R+C6Ic0+qQShnMjGj6b4metk3V4cxSvARZJsSA9tcJB1f+JZSeuCSUMF0XqcxJWZWKIMp4K5Dq41qwhdkGM29lQSv/XErtJ18MQrM5iXyj9pYKX+7bCk0HpZ5L6zU6fr7Xi/2rj2sxfTCyXVW2YpOuP5rUAU0J7KphxagRS08IVdzPCvSE+AsYf9A2hOT8yhfJaBC9jJLPu73h60aW+gheoz6KEF7aIjeoQM0QjR4EAyD98GH8FH4NvwYflq3hsHGcx/9g/DwN2glymA=</latexit><latexit sha1_base64="ItAezOfIaco9GlUFDNQk0Vti3Ho=">ACnHicbVFdixMxFM2MX2v9qvqmD14sShfXYaYsrD4IRH8WGEVuzvQtEMmTXdDM5khyaxbYuZX+Ut89+YaSvorgcCh3PvIfem1eCaxPHv4Lw0uUrV69tXe/cuHnr9p3u3XuHuqwVZSNailKlOdFMcMlGhvB0koxUuSCHeWLN2396JQpzUv51SwrNinIseRzTonxUtb9AR64DKzKWAuPSfmJM/tFze1EhteMA3SOWjgKTR4rgi1ibODwmFdF5ldvErctAD8vd9P4Tnsb8NptgGTLmi8M3r2WA6gGeAhZ9pRmDt4q1LQurZDnc7gA07M7ZpdGSixkH6R+C6Ic0+qQShnMjGj6b4metk3V4cxSvARZJsSA9tcJB1f+JZSeuCSUMF0XqcxJWZWKIMp4K5Dq41qwhdkGM29lQSv/XErtJ18MQrM5iXyj9pYKX+7bCk0HpZ5L6zU6fr7Xi/2rj2sxfTCyXVW2YpOuP5rUAU0J7KphxagRS08IVdzPCvSE+AsYf9A2hOT8yhfJaBC9jJLPu73h60aW+gheoz6KEF7aIjeoQM0QjR4EAyD98GH8FH4NvwYflq3hsHGcx/9g/DwN2glymA=</latexit><latexit sha1_base64="ItAezOfIaco9GlUFDNQk0Vti3Ho=">ACnHicbVFdixMxFM2MX2v9qvqmD14sShfXYaYsrD4IRH8WGEVuzvQtEMmTXdDM5khyaxbYuZX+Ut89+YaSvorgcCh3PvIfem1eCaxPHv4Lw0uUrV69tXe/cuHnr9p3u3XuHuqwVZSNailKlOdFMcMlGhvB0koxUuSCHeWLN2396JQpzUv51SwrNinIseRzTonxUtb9AR64DKzKWAuPSfmJM/tFze1EhteMA3SOWjgKTR4rgi1ibODwmFdF5ldvErctAD8vd9P4Tnsb8NptgGTLmi8M3r2WA6gGeAhZ9pRmDt4q1LQurZDnc7gA07M7ZpdGSixkH6R+C6Ic0+qQShnMjGj6b4metk3V4cxSvARZJsSA9tcJB1f+JZSeuCSUMF0XqcxJWZWKIMp4K5Dq41qwhdkGM29lQSv/XErtJ18MQrM5iXyj9pYKX+7bCk0HpZ5L6zU6fr7Xi/2rj2sxfTCyXVW2YpOuP5rUAU0J7KphxagRS08IVdzPCvSE+AsYf9A2hOT8yhfJaBC9jJLPu73h60aW+gheoz6KEF7aIjeoQM0QjR4EAyD98GH8FH4NvwYflq3hsHGcx/9g/DwN2glymA=</latexit>w0 = 1/n, wi = 1, ∀i = 1, · · · , n
<latexit sha1_base64="VMuNKiyGXMrOoU1uTUrHSvqEcf0=">ACMnicbVDLSgMxFM34rPVdekmWASRUmdEUBdC0Y3LCtYWOkPJZDJtMI8hyVjKMP/gz+hWf0NciVtXfoHpY6GtB0JOzj2Xe3PChFtXPfNmZtfWFxaLqwUV9fWNzZLW9t3WqYKkwaWTKpWiDRhVJCGoYaRVqI4iEjzfD+alhvPhClqRS3ZpCQgKOuoDHFyFipUzrsd1x4Ab0jUYH9Dh3SCvRjqRBjcPz0cSNrlhz2a26I8BZ4k1IGUxQ75S+/UjilBNhMENatz03MUGlKGYkbzop5okCN+jLmlbKhAnOshGf8rhvlUiaBexRxg4Un93ZIhrPeChdXJkenq6NhT/q7VTE58FGRVJaojA40FxyqCRcBgQjKgi2LCBJQgraneFuIcUwsbGWPQF6WPJORJR5vO87QX2sjPCOCt7eV60IXnTkcySxnH1vOrdnJRrl5O0CmAX7IED4IFTUAPXoA4aAINH8AxewKvz5Lw7H87n2DrnTHp2wB84Xz9q/qdW</latexit><latexit sha1_base64="VMuNKiyGXMrOoU1uTUrHSvqEcf0=">ACMnicbVDLSgMxFM34rPVdekmWASRUmdEUBdC0Y3LCtYWOkPJZDJtMI8hyVjKMP/gz+hWf0NciVtXfoHpY6GtB0JOzj2Xe3PChFtXPfNmZtfWFxaLqwUV9fWNzZLW9t3WqYKkwaWTKpWiDRhVJCGoYaRVqI4iEjzfD+alhvPhClqRS3ZpCQgKOuoDHFyFipUzrsd1x4Ab0jUYH9Dh3SCvRjqRBjcPz0cSNrlhz2a26I8BZ4k1IGUxQ75S+/UjilBNhMENatz03MUGlKGYkbzop5okCN+jLmlbKhAnOshGf8rhvlUiaBexRxg4Un93ZIhrPeChdXJkenq6NhT/q7VTE58FGRVJaojA40FxyqCRcBgQjKgi2LCBJQgraneFuIcUwsbGWPQF6WPJORJR5vO87QX2sjPCOCt7eV60IXnTkcySxnH1vOrdnJRrl5O0CmAX7IED4IFTUAPXoA4aAINH8AxewKvz5Lw7H87n2DrnTHp2wB84Xz9q/qdW</latexit><latexit sha1_base64="VMuNKiyGXMrOoU1uTUrHSvqEcf0=">ACMnicbVDLSgMxFM34rPVdekmWASRUmdEUBdC0Y3LCtYWOkPJZDJtMI8hyVjKMP/gz+hWf0NciVtXfoHpY6GtB0JOzj2Xe3PChFtXPfNmZtfWFxaLqwUV9fWNzZLW9t3WqYKkwaWTKpWiDRhVJCGoYaRVqI4iEjzfD+alhvPhClqRS3ZpCQgKOuoDHFyFipUzrsd1x4Ab0jUYH9Dh3SCvRjqRBjcPz0cSNrlhz2a26I8BZ4k1IGUxQ75S+/UjilBNhMENatz03MUGlKGYkbzop5okCN+jLmlbKhAnOshGf8rhvlUiaBexRxg4Un93ZIhrPeChdXJkenq6NhT/q7VTE58FGRVJaojA40FxyqCRcBgQjKgi2LCBJQgraneFuIcUwsbGWPQF6WPJORJR5vO87QX2sjPCOCt7eV60IXnTkcySxnH1vOrdnJRrl5O0CmAX7IED4IFTUAPXoA4aAINH8AxewKvz5Lw7H87n2DrnTHp2wB84Xz9q/qdW</latexit><latexit sha1_base64="VMuNKiyGXMrOoU1uTUrHSvqEcf0=">ACMnicbVDLSgMxFM34rPVdekmWASRUmdEUBdC0Y3LCtYWOkPJZDJtMI8hyVjKMP/gz+hWf0NciVtXfoHpY6GtB0JOzj2Xe3PChFtXPfNmZtfWFxaLqwUV9fWNzZLW9t3WqYKkwaWTKpWiDRhVJCGoYaRVqI4iEjzfD+alhvPhClqRS3ZpCQgKOuoDHFyFipUzrsd1x4Ab0jUYH9Dh3SCvRjqRBjcPz0cSNrlhz2a26I8BZ4k1IGUxQ75S+/UjilBNhMENatz03MUGlKGYkbzop5okCN+jLmlbKhAnOshGf8rhvlUiaBexRxg4Un93ZIhrPeChdXJkenq6NhT/q7VTE58FGRVJaojA40FxyqCRcBgQjKgi2LCBJQgraneFuIcUwsbGWPQF6WPJORJR5vO87QX2sjPCOCt7eV60IXnTkcySxnH1vOrdnJRrl5O0CmAX7IED4IFTUAPXoA4aAINH8AxewKvz5Lw7H87n2DrnTHp2wB84Xz9q/qdW</latexit>t Update one coordinate at each iteration t Coordinate descent:
Set 𝑢 = 1 and 𝑌3 = 0 For a fixed number of iterations (or convergence is reached):
Choose a coordinate (𝑗, 𝑘) Compute the step size 𝜀∗ by minimizing argmin
G
f(𝑌 + 𝜀𝑓(,*) Update 𝑌(,*
/K3 ← 𝑌(,*
/ + 𝜀∗
t How to decide the coordinate?
› Cyclic (CCD) › Random sampling (RCD) › Greedy coordinate descent (GCD)
11
t Gradient descent (GD) algorithm:
t GD/SGD update 𝑃(𝑜4) elements in 𝑌 and gradient matrix
t CD updates 𝑃 1 elements in 𝑌 (Laplacian property) t CD proves to update 𝑃 𝑜 elements in 𝐻 for Formulation
i? j? i? j? i? j? i? j?
12
(4,4):6 … (1,2):0 (1,3):8 (1,4):4 … (1,2):0 (4,5):6
1 2 3 4 5
13
(3,4):1 … (1,2):0 (2,3):2
Max-heap Input L Output X
t GCD produces sparser results
› CCD (RCD) goes through all coordinates repeatedly › GCD selects the most significant coordinates to update
Iteration 1 Iteration 2 Iteration 3 Iteration 4 Iteration T GCD: CCD: Input graph Add an edge Update an edge
5 10 15 20 100 101 102 103 104 105 Edge Weight Edge Count CCD GCD
14
t General Gauss-Southwell Rule: t Observation: the objective function is quadratic w.r.t. the
t GCD is stuck for some corner cases: t A new coordinate selection rule:
(i∗, j∗) = arg max
(i,j)∈[n]×[n]
|Gi,j|
<latexit sha1_base64="cwofDjQ3CMxBvIksrTv7u91IRE=">ACdHicbVBdaxQxFM2OX3X82uqbIgSHwnZlhkR1AehWEFfxAquLUymSyZzZ5s2H0OSUZd0fpC/xlf7S3w1s1EWy+EHM49Jzf3lI3g1qXp2SC6cvXa9RsbN+Nbt+/cvTfcvP/Z6tYwmDEtDkoqQXBFcwcdwIOGgNUlgL2y5Pdvr/BYzlWn1ywYKSReK15xRF6j5cDce8cPx5PhwvI1fYdKqKojBeTzik+NtTLjCuSqI4xJsjzpPqFlI+q3Dp2/nPoi60/kwSafpqvBlkK1Bgta1N98cPCSVZq0E5Zig1uZ2rjCU+M4E9DFpLXQUHZCF5AHqGiYXvjVth3eCkyFa23CUQ6v2L8dnkprl7IMSkndkb3Y68n/9fLW1S8Kz1XTOlDsfFDdCuw07qPDFTfAnFgGQJnh4a+YHVFDmQuZxeQNhF0MvA/vfmjAUKfN+E9aYbcFmfQoJgq+Mi0lVZUnsuzIlzBVNY+yboupJldzO4ymD2dvpxmH58lO6/XsW6gR+gJGqEMPUc76B3aQzPE0Hf0A/1EZ4Nf0eMoibOpdFg7XmA/qlo+hsiw7+</latexit><latexit sha1_base64="cwofDjQ3CMxBvIksrTv7u91IRE=">ACdHicbVBdaxQxFM2OX3X82uqbIgSHwnZlhkR1AehWEFfxAquLUymSyZzZ5s2H0OSUZd0fpC/xlf7S3w1s1EWy+EHM49Jzf3lI3g1qXp2SC6cvXa9RsbN+Nbt+/cvTfcvP/Z6tYwmDEtDkoqQXBFcwcdwIOGgNUlgL2y5Pdvr/BYzlWn1ywYKSReK15xRF6j5cDce8cPx5PhwvI1fYdKqKojBeTzik+NtTLjCuSqI4xJsjzpPqFlI+q3Dp2/nPoi60/kwSafpqvBlkK1Bgta1N98cPCSVZq0E5Zig1uZ2rjCU+M4E9DFpLXQUHZCF5AHqGiYXvjVth3eCkyFa23CUQ6v2L8dnkprl7IMSkndkb3Y68n/9fLW1S8Kz1XTOlDsfFDdCuw07qPDFTfAnFgGQJnh4a+YHVFDmQuZxeQNhF0MvA/vfmjAUKfN+E9aYbcFmfQoJgq+Mi0lVZUnsuzIlzBVNY+yboupJldzO4ymD2dvpxmH58lO6/XsW6gR+gJGqEMPUc76B3aQzPE0Hf0A/1EZ4Nf0eMoibOpdFg7XmA/qlo+hsiw7+</latexit><latexit sha1_base64="cwofDjQ3CMxBvIksrTv7u91IRE=">ACdHicbVBdaxQxFM2OX3X82uqbIgSHwnZlhkR1AehWEFfxAquLUymSyZzZ5s2H0OSUZd0fpC/xlf7S3w1s1EWy+EHM49Jzf3lI3g1qXp2SC6cvXa9RsbN+Nbt+/cvTfcvP/Z6tYwmDEtDkoqQXBFcwcdwIOGgNUlgL2y5Pdvr/BYzlWn1ywYKSReK15xRF6j5cDce8cPx5PhwvI1fYdKqKojBeTzik+NtTLjCuSqI4xJsjzpPqFlI+q3Dp2/nPoi60/kwSafpqvBlkK1Bgta1N98cPCSVZq0E5Zig1uZ2rjCU+M4E9DFpLXQUHZCF5AHqGiYXvjVth3eCkyFa23CUQ6v2L8dnkprl7IMSkndkb3Y68n/9fLW1S8Kz1XTOlDsfFDdCuw07qPDFTfAnFgGQJnh4a+YHVFDmQuZxeQNhF0MvA/vfmjAUKfN+E9aYbcFmfQoJgq+Mi0lVZUnsuzIlzBVNY+yboupJldzO4ymD2dvpxmH58lO6/XsW6gR+gJGqEMPUc76B3aQzPE0Hf0A/1EZ4Nf0eMoibOpdFg7XmA/qlo+hsiw7+</latexit><latexit sha1_base64="cwofDjQ3CMxBvIksrTv7u91IRE=">ACdHicbVBdaxQxFM2OX3X82uqbIgSHwnZlhkR1AehWEFfxAquLUymSyZzZ5s2H0OSUZd0fpC/xlf7S3w1s1EWy+EHM49Jzf3lI3g1qXp2SC6cvXa9RsbN+Nbt+/cvTfcvP/Z6tYwmDEtDkoqQXBFcwcdwIOGgNUlgL2y5Pdvr/BYzlWn1ywYKSReK15xRF6j5cDce8cPx5PhwvI1fYdKqKojBeTzik+NtTLjCuSqI4xJsjzpPqFlI+q3Dp2/nPoi60/kwSafpqvBlkK1Bgta1N98cPCSVZq0E5Zig1uZ2rjCU+M4E9DFpLXQUHZCF5AHqGiYXvjVth3eCkyFa23CUQ6v2L8dnkprl7IMSkndkb3Y68n/9fLW1S8Kz1XTOlDsfFDdCuw07qPDFTfAnFgGQJnh4a+YHVFDmQuZxeQNhF0MvA/vfmjAUKfN+E9aYbcFmfQoJgq+Mi0lVZUnsuzIlzBVNY+yboupJldzO4ymD2dvpxmH58lO6/XsW6gR+gJGqEMPUc76B3aQzPE0Hf0A/1EZ4Nf0eMoibOpdFg7XmA/qlo+hsiw7+</latexit>(i∗, j∗) = arg max
(i,j)∈[n]×[n]
|Gi,j| s.t. Gi,j > 0 or yi,j 6= 0
<latexit sha1_base64="xdtV8hE3koy5yrh2g8fWRQxOSU=">ACq3icbVBdb9MwFHUCjBE+1sEbvFhUSF1VRQlCYnsATYAEL4ghrWwizirHue28xU6wb2AlS/8nb/wU3C4g2LiS5aNzrXvPVlVSItR9MPzr12/sXZz/VZw+87dexu9zfufbFkbAWNRFqU5zLiFQmoYo8QCDisDXGUFHGSnr5f6wVcwVpZ6H+cVpIrPtJxKwdFRk973gTwajk6Ohlv0BW1zp0XsKEDOTrZokxqmuiUoVRgl6htGDczxc9aev520jhTe04Zwhk2i4UNMVy0lHYCfUmj31pnDveKbhC42CSa8fhdGq6FUQd6BPutqbHoPWV6KWoFGUXBrkziqMG24QSkKaANW6i4OUzSBzU3E2dNquQWvrEMTmdlsYdjXTF/t3RcGXtXGXOqTge28vakvyfltQ43U4bqasaQYuLj6Z1QbGky8RpLg0ILOYOcGkm5WKY264QJd1wN6A28XAe/fuhwoMx9IM/6Tsdpux0RIFLrVvolSK67xhqk3i1F2uKZs2/bhtXZrx5eyugvHTcCeMPz7r7qYl0nj8hjMiAxeU52yTuyR8ZEkJ/emrfh9fzQ3/c/+zC6ntdzwPyT/nwCwbv0L4=</latexit><latexit sha1_base64="xdtV8hE3koy5yrh2g8fWRQxOSU=">ACq3icbVBdb9MwFHUCjBE+1sEbvFhUSF1VRQlCYnsATYAEL4ghrWwizirHue28xU6wb2AlS/8nb/wU3C4g2LiS5aNzrXvPVlVSItR9MPzr12/sXZz/VZw+87dexu9zfufbFkbAWNRFqU5zLiFQmoYo8QCDisDXGUFHGSnr5f6wVcwVpZ6H+cVpIrPtJxKwdFRk973gTwajk6Ohlv0BW1zp0XsKEDOTrZokxqmuiUoVRgl6htGDczxc9aev520jhTe04Zwhk2i4UNMVy0lHYCfUmj31pnDveKbhC42CSa8fhdGq6FUQd6BPutqbHoPWV6KWoFGUXBrkziqMG24QSkKaANW6i4OUzSBzU3E2dNquQWvrEMTmdlsYdjXTF/t3RcGXtXGXOqTge28vakvyfltQ43U4bqasaQYuLj6Z1QbGky8RpLg0ILOYOcGkm5WKY264QJd1wN6A28XAe/fuhwoMx9IM/6Tsdpux0RIFLrVvolSK67xhqk3i1F2uKZs2/bhtXZrx5eyugvHTcCeMPz7r7qYl0nj8hjMiAxeU52yTuyR8ZEkJ/emrfh9fzQ3/c/+zC6ntdzwPyT/nwCwbv0L4=</latexit><latexit sha1_base64="xdtV8hE3koy5yrh2g8fWRQxOSU=">ACq3icbVBdb9MwFHUCjBE+1sEbvFhUSF1VRQlCYnsATYAEL4ghrWwizirHue28xU6wb2AlS/8nb/wU3C4g2LiS5aNzrXvPVlVSItR9MPzr12/sXZz/VZw+87dexu9zfufbFkbAWNRFqU5zLiFQmoYo8QCDisDXGUFHGSnr5f6wVcwVpZ6H+cVpIrPtJxKwdFRk973gTwajk6Ohlv0BW1zp0XsKEDOTrZokxqmuiUoVRgl6htGDczxc9aev520jhTe04Zwhk2i4UNMVy0lHYCfUmj31pnDveKbhC42CSa8fhdGq6FUQd6BPutqbHoPWV6KWoFGUXBrkziqMG24QSkKaANW6i4OUzSBzU3E2dNquQWvrEMTmdlsYdjXTF/t3RcGXtXGXOqTge28vakvyfltQ43U4bqasaQYuLj6Z1QbGky8RpLg0ILOYOcGkm5WKY264QJd1wN6A28XAe/fuhwoMx9IM/6Tsdpux0RIFLrVvolSK67xhqk3i1F2uKZs2/bhtXZrx5eyugvHTcCeMPz7r7qYl0nj8hjMiAxeU52yTuyR8ZEkJ/emrfh9fzQ3/c/+zC6ntdzwPyT/nwCwbv0L4=</latexit><latexit sha1_base64="xdtV8hE3koy5yrh2g8fWRQxOSU=">ACq3icbVBdb9MwFHUCjBE+1sEbvFhUSF1VRQlCYnsATYAEL4ghrWwizirHue28xU6wb2AlS/8nb/wU3C4g2LiS5aNzrXvPVlVSItR9MPzr12/sXZz/VZw+87dexu9zfufbFkbAWNRFqU5zLiFQmoYo8QCDisDXGUFHGSnr5f6wVcwVpZ6H+cVpIrPtJxKwdFRk973gTwajk6Ohlv0BW1zp0XsKEDOTrZokxqmuiUoVRgl6htGDczxc9aev520jhTe04Zwhk2i4UNMVy0lHYCfUmj31pnDveKbhC42CSa8fhdGq6FUQd6BPutqbHoPWV6KWoFGUXBrkziqMG24QSkKaANW6i4OUzSBzU3E2dNquQWvrEMTmdlsYdjXTF/t3RcGXtXGXOqTge28vakvyfltQ43U4bqasaQYuLj6Z1QbGky8RpLg0ILOYOcGkm5WKY264QJd1wN6A28XAe/fuhwoMx9IM/6Tsdpux0RIFLrVvolSK67xhqk3i1F2uKZs2/bhtXZrx5eyugvHTcCeMPz7r7qYl0nj8hjMiAxeU52yTuyR8ZEkJ/emrfh9fzQ3/c/+zC6ntdzwPyT/nwCwbv0L4=</latexit>yt
i,j
yt+1
i,j
yt
i,j
yt+1
i,j
15
t Time complexity is 𝑃(𝑜4) per iteration
› traverse 𝑃(𝑜4) elements to get the best index › As expensive as gradient descent
t Observation: each node has at most 𝑜 neighbors → heap t Heap to store 𝑃(𝑜4) elements in 𝐻:
› Pick the largest gradient, 𝑃(1) › Update 𝑃(𝑜) elements, 𝑃(𝑜 log 𝑜)
t Lookup table
› 𝑃(𝑜4) space; 𝑃 1 for each update
t Improved time complexity 𝑃(𝑜 log 𝑜)
i? j? i? j?
16
t Sparsity and accuracy trade-off t Accuracy and runtime trade-off
10−7 10−6 10−5 10−4 10−3 10−2 10−1 10−4 10−3 10−2 10−1 λ Voltage Error (mV) 10−7 10−6 10−5 10−4 10−3 10−2 10−1 500 1,000 1,500 2,000 2,500 3,000 3,500 #Edges Error Edge 0.2 0.4 0.6 0.8 1 ·104 10−4 10−3 10−2 #Iterations Voltage Error (mV) 0.2 0.4 0.6 0.8 1 ·104 500 1,000 1,500 2,000 2,500 3,000 #Edges Error Edge
17
rand1 rand2 rand3 rand4 102 103 104 105 99 499 999 4,999 3,169 71,548 1.51 · 105 3.05 · 105 1,068 2,743 3,920 10,003 #Edges SGD CCD GCD rand1 rand2 rand3 rand4 10−2 10−1 100 101 102 5.09 5.33 5.23 7.52 7 · 10−2 5 · 10−2 3 · 10−2 2.18 2 · 10−2 1 · 10−2 1 · 10−2 1.3 Voltage error (mV) SGD CCD GCD rand1 rand2 rand3 rand4 10−2 10−1 100 101 102 0.12 2.93 29.82 144.43 1 · 10−2 1.92 19.09 230.52 6 · 10−2 0.74 2.75 32.6 Runtime (s) SGD CCD GCD
18
Sparsity Accuracy Runtime
19
CKT ibmpg2 ibmpg3 ibmpg4 ibmpg5 ibmpg6 #Port Nodes Before 19,173 100,988 133,622 270,577 380,991 After 19,173 100,988 133,622 270,577 380,991 #Non-port Nodes Before 46,265 340,088 345,122 311,072 481,675 After #Edges Before 106,607 724,184 779,946 871,182 1283,371 After 48,367 243,011 284,187 717,026 935,322 Error 1.2% 0.7% 4.8% 2.2% 2.0% Runtime 38s 106s 132s 123s 281s
t Main Contributions:
t Future Work:
20