lis man page

lis — library of iterative solvers for linear systems

Synopsis

[see Lis User Guide for full description]

Description

Lis (Library of Iterative Solvers for linear systems, pronounced [lis]) is a parallel software library for solving linear equations and eigenvalue problems that arise in the numerical solution of partial differential equations using iterative methods.

Lis provides facilities for:

* Automatic program configuration

* NUMA aware hybrid implementation with MPI and OpenMP

* Exchangeable dense and sparse matrix storage formats

* Basic linear algebra operations for dense and sparse matrices

* Parallel iterative methods for linear equations and eigenvalue problems

* Parallel preconditioners for iterative methods

* Quadruple precision floating point operations

* Performance analysis

* Command-line interface to solvers and benchmarks

System Requirements

The installation of Lis requires a C compiler. The Fortran interface requires a Fortran compiler, and the algebraic multigrid preconditioner requires a Fortran 90 compiler. For parallel computing environments, an OpenMP or an MPI-1 library is used. Both the Harwell-Boeing and Matrix Market formats are supported to import and export user data.

References

* Akira Nishida (2010). "Experience in Developing an Open Source Scalable Software Infrastructure in Japan". Computational Science and Its Applications - ICCSA 2010. Lecture Notes in Computer Science 6017. Springer. pp. 87-98. doi:10.1007/978-3-642-12165-4_36. ISBN 3-642-12164-0.

* Hisashi Kotakemori, Hidehiko Hasegawa, Tamito Kajiyama, Akira Nukada, Reiji Suda, and Akira Nishida (2008). "Performance Evaluation of Parallel Sparse Matrix-Vector Products on SGI Altix 3700". OpenMP Shared Memory Parallel Programming. Lecture Notes in Computer Science 4315. Springer. pp. 153-163. doi:10.1007/978-3-540-68555-5_13. ISBN 3-540-68554-5.

* Hisashi Kotakemori, Hidehiko Hasegawa, and Akira Nishida (2005). "Performance Evaluation of a Parallel Iterative Method Library using OpenMP". Proceedings of the 8th International Conference on High Performance Computing in Asia Pacific Region (HPC Asia 2005). Beijing: IEEE. pp. 432-436. doi:10.1109/HPCASIA.2005.74. ISBN 0-7695-2486-9.

* Akihiro Fujii, Akira Nishida, and Yoshio Oyanagi (2005). "Evaluation of Parallel Aggregate Creation Orders : Smoothed Aggregation Algebraic Multigrid Method". High Performance Computational Science and Engineering. Springer. pp. 99-122. doi:10.1007/0-387-24049-7_6. ISBN 1-4419-3684-X.

See Also

lsolve(1), esolve(1), hpcg_kernel(1), hpcg_spmvtest(1), spmvtest1(1), spmvtest2(1), spmvtest2b(1), spmvtest3(1), spmvtest3b(1), spmvtest4(1), spmvtest5(1)

http://www.ssisc.org/lis/
http://math.nist.gov/MatrixMarket/

Referenced By

esolve(1), gesolve(1), hpcg_kernel(1), hpcg_spmvtest(1), lis_array_abs(3), lis_array_abs.3f(3), lis_array_axpy(3), lis_array_axpy.3f(3), lis_array_axpyz(3), lis_array_axpyz.3f(3), lis_array_cgs(3), lis_array_cgs.3f(3), lis_array_copy(3), lis_array_copy.3f(3), lis_array_dot(3), lis_array_dot.3f(3), lis_array_ge(3), lis_array_ge.3f(3), lis_array_matmat(3), lis_array_matmat.3f(3), lis_array_matmat_ns(3), lis_array_matmat_ns.3f(3), lis_array_matvec(3), lis_array_matvec.3f(3), lis_array_matvec_ns(3), lis_array_matvec_ns.3f(3), lis_array_matvect(3), lis_array_matvect.3f(3), lis_array_mgs(3), lis_array_mgs.3f(3), lis_array_nrm1(3), lis_array_nrm1.3f(3), lis_array_nrm2(3), lis_array_nrm2.3f(3), lis_array_nrmi(3), lis_array_nrmi.3f(3), lis_array_pdiv(3), lis_array_pdiv.3f(3), lis_array_pmul(3), lis_array_pmul.3f(3), lis_array_qr(3), lis_array_qr.3f(3), lis_array_reciprocal(3), lis_array_reciprocal.3f(3), lis_array_scale(3), lis_array_scale.3f(3), lis_array_set_all(3), lis_array_set_all.3f(3), lis_array_shift(3), lis_array_shift.3f(3), lis_array_solve(3), lis_array_solve.3f(3), lis_array_sum(3), lis_array_sum.3f(3), lis_array_swap(3), lis_array_swap.3f(3), lis_array_xpay(3), lis_array_xpay.3f(3), lis_esolve(3), lis_esolve.3f(3), lis_esolver_create(3), lis_esolver_create.3f(3), lis_esolver_destroy(3), lis_esolver_destroy.3f(3), lis_esolver_get_esolver(3), lis_esolver_get_esolver.3f(3), lis_esolver_get_esolvername(3), lis_esolver_get_esolvername.3f(3), lis_esolver_get_evalues(3), lis_esolver_get_evalues.3f(3), lis_esolver_get_evectors(3), lis_esolver_get_evectors.3f(3), lis_esolver_get_iter(3), lis_esolver_get_iter.3f(3), lis_esolver_get_iterex(3), lis_esolver_get_iterex.3f(3), lis_esolver_get_iters(3), lis_esolver_get_iters.3f(3), lis_esolver_get_residualnorm(3), lis_esolver_get_residualnorm.3f(3), lis_esolver_get_residualnorms(3), lis_esolver_get_residualnorms.3f(3), lis_esolver_get_rhistory(3), lis_esolver_get_rhistory.3f(3), lis_esolver_get_status(3), lis_esolver_get_status.3f(3), lis_esolver_get_time(3), lis_esolver_get_time.3f(3), lis_esolver_get_timeex(3), lis_esolver_get_timeex.3f(3), lis_esolver_set_option(3), lis_esolver_set_option.3f(3), lis_esolver_set_optionC(3), lis_esolver_set_optionC.3f(3), lis_finalize(3), lis_finalize.3f(3), lis_initialize(3), lis_initialize.3f(3), lis_input(3), lis_input.3f(3), lis_input_matrix(3), lis_input_matrix.3f(3), lis_input_vector(3), lis_input_vector.3f(3), lis_matrix_assemble(3), lis_matrix_assemble.3f(3), lis_matrix_axpy(3), lis_matrix_axpy.3f(3), lis_matrix_axpyz(3), lis_matrix_axpyz.3f(3), lis_matrix_convert(3), lis_matrix_convert.3f(3), lis_matrix_copy(3), lis_matrix_copy.3f(3), lis_matrix_create(3), lis_matrix_create.3f(3), lis_matrix_destroy(3), lis_matrix_destroy.3f(3), lis_matrix_duplicate(3), lis_matrix_duplicate.3f(3), lis_matrix_get_diagonal(3), lis_matrix_get_diagonal.3f(3), lis_matrix_get_nnz(3), lis_matrix_get_nnz.3f(3), lis_matrix_get_range(3), lis_matrix_get_range.3f(3), lis_matrix_get_size(3), lis_matrix_get_size.3f(3), lis_matrix_get_type(3), lis_matrix_get_type.3f(3), lis_matrix_malloc(3), lis_matrix_malloc.3f(3), lis_matrix_scale(3), lis_matrix_scale.3f(3), lis_matrix_set_blocksize(3), lis_matrix_set_blocksize.3f(3), lis_matrix_set_bsc(3), lis_matrix_set_bsc.3f(3), lis_matrix_set_bsr(3), lis_matrix_set_bsr.3f(3), lis_matrix_set_coo(3), lis_matrix_set_coo.3f(3), lis_matrix_set_csc(3), lis_matrix_set_csc.3f(3), lis_matrix_set_csr(3), lis_matrix_set_csr.3f(3), lis_matrix_set_dia(3), lis_matrix_set_dia.3f(3), lis_matrix_set_dns(3), lis_matrix_set_dns.3f(3), lis_matrix_set_ell(3), lis_matrix_set_ell.3f(3), lis_matrix_set_jad(3), lis_matrix_set_jad.3f(3), lis_matrix_set_msr(3), lis_matrix_set_msr.3f(3), lis_matrix_set_size(3), lis_matrix_set_size.3f(3), lis_matrix_set_type(3), lis_matrix_set_type.3f(3), lis_matrix_set_value(3), lis_matrix_set_value.3f(3), lis_matrix_set_vbr(3), lis_matrix_set_vbr.3f(3), lis_matrix_shift_diagonal(3), lis_matrix_shift_diagonal.3f(3), lis_matrix_unset(3), lis_matrix_unset.3f(3), lis_matrix_xpay(3), lis_matrix_xpay.3f(3), lis_matvec(3), lis_matvec.3f(3), lis_matvect(3), lis_matvect.3f(3), lis_output(3), lis_output.3f(3), lis_output_matrix(3), lis_output_matrix.3f(3), lis_output_vector(3), lis_output_vector.3f(3), lis_solve(3), lis_solve.3f(3), lis_solve_kernel(3), lis_solve_kernel.3f(3), lis_solver_create(3), lis_solver_create.3f(3), lis_solver_destroy(3), lis_solver_destroy.3f(3), lis_solver_get_iter(3), lis_solver_get_iter.3f(3), lis_solver_get_iterex(3), lis_solver_get_iterex.3f(3), lis_solver_get_precon(3), lis_solver_get_precon.3f(3), lis_solver_get_preconname(3), lis_solver_get_preconname.3f(3), lis_solver_get_residualnorm(3), lis_solver_get_residualnorm.3f(3), lis_solver_get_rhistory(3), lis_solver_get_rhistory.3f(3), lis_solver_get_solver(3), lis_solver_get_solver.3f(3), lis_solver_get_solvername(3), lis_solver_get_solvername.3f(3), lis_solver_get_status(3), lis_solver_get_status.3f(3), lis_solver_get_time(3), lis_solver_get_time.3f(3), lis_solver_get_timeex(3), lis_solver_get_timeex.3f(3), lis_solver_set_option(3), lis_solver_set_option.3f(3), lis_solver_set_optionC(3), lis_solver_set_optionC.3f(3), lis_vector_abs(3), lis_vector_axpy(3), lis_vector_axpy.3f(3), lis_vector_axpyz(3), lis_vector_axpyz.3f(3), lis_vector_copy(3), lis_vector_copy.3f(3), lis_vector_create(3), lis_vector_create.3f(3), lis_vector_destroy(3), lis_vector_destroy.3f(3), lis_vector_dot(3), lis_vector_dot.3f(3), lis_vector_duplicate(3), lis_vector_duplicate.3f(3), lis_vector_gather(3), lis_vector_gather.3f(3), lis_vector_get_range(3), lis_vector_get_range.3f(3), lis_vector_get_size(3), lis_vector_get_size.3f(3), lis_vector_get_value(3), lis_vector_get_value.3f(3), lis_vector_get_values(3), lis_vector_get_values.3f(3), lis_vector_nrm1(3), lis_vector_nrm1.3f(3), lis_vector_nrm2(3), lis_vector_nrm2.3f(3), lis_vector_nrmi(3), lis_vector_nrmi.3f(3), lis_vector_pdiv(3), lis_vector_pmul(3), lis_vector_reciprocal(3), lis_vector_scale(3), lis_vector_scale.3f(3), lis_vector_scatter(3), lis_vector_scatter.3f(3), lis_vector_set_all(3), lis_vector_set_all.3f(3), lis_vector_set_size(3), lis_vector_set_size.3f(3), lis_vector_set_value(3), lis_vector_set_value.3f(3), lis_vector_set_values(3), lis_vector_set_values.3f(3), lis_vector_shift(3), lis_vector_sum(3), lis_vector_swap(3), lis_vector_xpay(3), lis_vector_xpay.3f(3), lis_wtime(3), lis_wtime.3f(3), lsolve(1), spmvtest1(1), spmvtest2(1), spmvtest2b(1), spmvtest3(1), spmvtest3b(1), spmvtest4(1), spmvtest5(1).

25 Oct 2016 Man Page Introduction to Library Functions