1 / 30

SDPA: Leading-edge Software for SDP

SDPA: Leading-edge Software for SDP. 2008/10/14 @ Informs ’ 08. SDPA (SemiDefinite Programming Algorithm) Project. Open Source Software to solve SemiDefinite Programming Since the 1 st release in 1995, it has kept high quality

halen
Download Presentation

SDPA: Leading-edge Software for SDP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SDPA:Leading-edge Software for SDP 2008/10/14 @ Informs ’08

  2. SDPA (SemiDefinite Programming Algorithm) Project • Open Source Software to solveSemiDefinite Programming • Since the 1st release in 1995, it has kept high quality • In 2008, the latest version SDPA 7 was released and has been updated continuously • Many software for more advantage

  3. SDPA Family SDPARA (Parallel with MPI) SDPARA-C SDPA-C (Matrix Completion) SDPA SDPA-M (Matlab Interface) accessible onSDPA Online Solver as Web service SDPA-GMP(Multiple Precision)

  4. Outline of this talk • SDP and the improvements of SDPA7 • Parallel with MPI • Multiple Precision • Online Solver • Future Works

  5. Standard form of SDP

  6. Applications of SDP • Control Theory • Lyapnov condition • Combinatorial Optimization • Max Cut • Theta function • Quantum Chemistry • Reduced Density Matrix

  7. Primal-Dual Interior-Point Methods

  8. Computation for Search Direction Schur complement matrix ⇒ Cholesky Factorizaiton Exploitation of Sparsity in

  9. SDPA 7 • SDPA7 resolves bottlenecks of SDPA6 • Introduce sparse Cholesky factorization for the Schur complement matrix • Adopt new data structure • Reduce memory space for temporary variables • Introduce configure script for easier installation

  10. Sparsity pattern of Schur complement matrix • Sparse Schur complement matrix • minimum degree ordering  to minimize the number of fill-in • Fully dense Schur complement matrix

  11. New Data Structure • For multiple diagonal structure • SDPA6 • stores nonzero elements of each block • stores all blocks • SDPA 7 • stores nonzero elements of each block • stores only nonzero blocks

  12. r2S_broydenTri300.dat-s Sparse Schur New Data Structure Efficient Temporary Xeon 2.80GHz, 2GB memory, Linux 2.4

  13. Configure script • Easier installation $./configure –with-blas=”-lblas”–with-lapack=”-llapack” $ make $ make install • We can link with Optimized BLAS, i.e., ATLAS, GotoBLAS, Intel MKL

  14. Matlab Interface • SDPA-M is the Matlab interface • [mDIM,nBLOCK,bLOCKsTRUCT,c,F] = read_data(’example1.dat-s’); • [objVal,x,X,Y,INFO] = sdpam(mDIM,nBLOCK,bLOCKsTRUCT,c,F,OPTION); • SeDuMi Input interface • [At,b,c,K] = fromsdpa(’example1.dat-s’); • [x,y,info] = sedumiwrap(At,b,c,K,[],pars); • Current version is for only LP and SDP cones • Parameter control is based on SDPA

  15. Extremely Large Problem and Bottlenecks We replace these two bottlenecks by parallel computation The largest size requires 8.6GB memory Opteron 246 2.0GHz 6GB Memory

  16. Exploitation of Sparsityin SDPA • We change the formula by row-wise • We keep this scheme on parallel computation F1 F2 F3

  17. Row-wise distribution for evaluation of the Schur complement matrix • 4 CPU is available • Each CPU computes only their assigned rows • . • No communication between CPUs • Efficient memory management

  18. Parallel Cholesky factorization • We adopt Scalapack for the Cholesky factorization of the Schur complement matrix • We redistribute the matrix from row-wise to two-dimensional block-cyclic-distribtuion Redistribution

  19. Computation Time for NH3 TSUBAME@Tokyo-TechOpteron 880 (2.4GHz) 32GB memory/node

  20. Scalability for LiF Comp B 43 times Chol B 46 times Total 28 times TSUBAME@Tokyo-TechOpteron 880 (2.4GHz) 32GB memory/node Row-wise distribution for Comp B is very effective

  21. Multiple Precision • SDPA uses ‘double’ precision • 53 significant bit • almost 8 digit • SDPA 7 result (gpp124-1 from SDPLIB) • Objective Function (Only 5 digits)-7.3430761748645921e+00(Primal)-7.3430800814821620e+00(Dual) • Feasibility5.45696821063e-12 (Primal)1.68252292320e-07 (Dual) • Some applications requires more accuracy

  22. SDPA-GMP • GMP: Gnu Multiple Precision Library • Arbitrary fixed precision • ‘double’ precision is replaced by GMP • Ultra High Accuracy by long computation time

  23. Ultra Accuracy of SDPA-GMP

  24. Comparison on SDPA and SDPA-GMP(384bit) SDPA(7.1.0) Relative gap 5.3201361904260111e-07 Objective Function -7.3430761748645921e+00 (Primal) -7.3430800814821620e+00 (Dual) Feasibility 5.45696821063e-12 (Primal) 1.68252292320e-07 (Dual) Computation time 0.14 sec. (20 iterations) SDPA-GMP(7.1.0) Relative gap 1.7163710368162993e-26 Objective Function -7.3430762652465377e+00 (Primal) -7.3430762652465377e+00 (Dual) Feasibility 2.0710194844721e-57 (Primal) 1.2329417039702e-29 (Dual) Computation time 228.95 sec. (59 iterations) gpp124-1(SDPLIB)

  25. SDPA Online Solver • SDPA Online Solver will offer SDPA/SDPARA/SDPARA-C via the Internet. User Interface 1.Input 2.Ninf-G 3.SDPARA on PC cluster 4.Solution Internet

  26. To use Online Solver • Users without parallel environment can use SDPARA/SDPARA-C. • No Charge. • Registration via the Internet is required so that passwords to protect users data will be generated automatically. • Access SDPA Project Home Page.[SDPA Online for your future.]http://sdpa.indsys.chuo-u.ac.jp/sdpa/

  27. Online Solver Interface

  28. Online Solver Usage

  29. Conclusion • The latest version 7 attains higher performance than version 6 • Parallel Solver enables us to solve extremely large SDPs • Matrix Completion is useful for Structural Sparsity • SDPA-GMP generates ultra high accuracy solution • Online Solver provides powerful computation resources via the Internet

  30. Future works • Callable Library of SDPA7 • Automatic Selection from SDPA/SDPARA/SDPARA-C

More Related