Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 02-Apr-2020 | - | ||||
include/ | H | 07-May-2022 | - | |||
lib/ | H | 07-May-2022 | - | |||
src/ | H | 02-Apr-2020 | - | 68,306 | 56,095 | |
COPYRIGHT | H A D | 02-Apr-2020 | 36.8 KiB | 725 | 593 | |
LICENSE | H A D | 02-Apr-2020 | 1.3 KiB | 23 | 19 | |
README | H A D | 02-Apr-2020 | 2.2 KiB | 62 | 50 | |
qd-2.3.17-for-LLVM.patch | H A D | 02-Apr-2020 | 2.6 KiB | 105 | 92 |
README
1** dissection solver Ver 1.0.0 : written in C++ with qd libiray or ** 2** GNU __float128 ** 3** Atsushi Suzuki, 25 Jun. 2015 4** 30 Nov. 2016 5 6How to compile: 7 8- directory structure needs to be the follownig. 9 include/ lib/ src/ are needed to be the same place called as $(PROJ_DIR) 10 11- copy src/Defs.inc.Intel to src/Defs.inc 12- copy src/Makfile.Intel to src/Makefile 13 14- src/Defs.inc contains definition of the place of header files 15 METIS_INC = $(PROJ_DIR)/metis-5.1.0/include 16 SCOTCH_INC = $(PROJ_DIR)/scotch_6.0.4/include 17 QD_INC = $(PROJ_DIR)/include 18 and libraries 19 METIS_DIR = $(PROJ_DIR)/metis-5.0.2/build/Darwin-x86_64/libmetis 20 LIB_DIR_SCOTCH = $(PROJ_DIR)/scotch_6.0.4/lib 21 LIB_DIR_QD = $(PROJ_DIR)/qd-2.3.17/lib 22 23- to use intel MKL specify BLAS in Def.inc 24 BLAS = MKL 25 On the MacOSX (Mavericks or Yosemite), 26 BLAS = VECLIB 27 attains 90 % of the speed of MKL. For preparation to use vecLib 28 framework, command line Xcode needs to be installed by 29 % xcode-select --install 30 31 32- qd library needs to be compiled with patches to handle complex class of 33 LLVM clang++. 34 qd-2.3.17.tar.gz will be obtained from 35 http://crd-legacy.lbl.gov/~dhbailey/mpdist/qd-2.3.17.tar.gz 36 to extract tar ball and apply patches 37 % tar xvzf qd-2.3.17.tar.gz 38 % cd qd-2.3.17 39 % patch -p1 < qd-2.3.17-for-LLVM.patch 40 configure needs to be done with specifying install directory $(PROJ_DIR) 41 % ./configure --prefix=$(PROJ_DIR) CXX=clang++ CC=clang 42 % make install 43 44- to clean directories under $(PROJ_DIR)/src, 45 % make distclean 46 % make distclean 47 48- to build $(PROJ_DIR)/libDissection.dyld, in $(PROJ_DIR)/src 49 % make 50 51- a test program is located in $(PROJ_DIR)/src/C-test 52 % make 53 % ./MM-Dissection ../MM-matrix/MM.testA.data 0 1 1.e-2 8 2 54 the first argument specifies 0 for SCOTCH and 1 for METIS 55 the second specifies number of threads, which should be less or equal to 56 number of the physical CPU cores 57 the third specifies pivot threshold 58 the fourth specifies number of level of dissection 59 the fifth specifies scaling strategy : 0 for no-scaling, 1 for diagonal 60 2 for scaling for KKT-type matrix 61 62