WikiDer > Lis (chiziqli algebra kutubxonasi)
| Barqaror chiqish | 2.0.27 / 3-dekabr, 2020 yil  | 
|---|---|
| Operatsion tizim | O'zaro faoliyat platforma | 
| Mavjud: | C, Fortran | 
| Turi | Dastur kutubxonasi | 
| Litsenziya | Yangi BSD litsenziyasi | 
| Veb-sayt | www.ssisc.org/lis/ | 
Lis (Takroriy echimlar kutubxonasi chiziqli tizimlar uchun [lis]) talaffuzi a o'lchovli parallel hal qilish uchun dasturiy ta'minot diskretlangan chiziqli tenglamalar va shaxsiy qiymat muammolari asosan paydo bo'lgan raqamli echim ning qisman differentsial tenglamalar yordamida takroriy usullar.[1][2][3] Garchi u parallel kompyuterlar uchun mo'ljallangan bo'lsa ham, kutubxonadan bexabar holda foydalanish mumkin parallel ishlov berish.
Xususiyatlari
Lis quyidagilarni ta'minlaydi:
- Dasturni avtomatik sozlash
 - NUMA bilan xabardor gibrid dastur MPI va OpenMP
 - Almashinadigan zich va siyrak matritsa saqlash formatlari
 - Asosiy chiziqli algebra zich va siyrak matritsalar uchun operatsiyalar
 - Parallel takroriy usullar uchun chiziqli tenglamalar va shaxsiy qiymat muammolari
 - Parallel old shartlar takroriy usullar uchun
 - To'rt marta aniqlik suzuvchi nuqta operatsiyalar
 - Ish faoliyatini tahlil qilish
 - Buyruqning interfeysi echimlar va mezonlarga
 
Misol
A C chiziqli tenglamani echish dasturi quyidagicha yoziladi:
# shu jumladan <stdio.h># shu jumladan "lis_config.h"# shu jumladan "lis.h"LIS_INT asosiy(LIS_INT arg, char* argv[]){  LIS_MATRIX  A;  LIS_VECTOR  b, x;  LIS_SOLVER  hal qiluvchi;  LIS_INT     iter;  ikki baravar      vaqt;  lis_initialize(&arg, &argv);  lis_matrix_create(LIS_COMM_WORLD, &A);  lis_vector_create(LIS_COMM_WORLD, &b);  lis_vector_create(LIS_COMM_WORLD, &x);  lis_input_matrix(A, argv[1]);  lis_input_vector(b, argv[2]);  lis_vector_duplicate(A, &x);  lis_solver_create(&hal qiluvchi);  lis_solver_set_optionC(hal qiluvchi);  dil_solve(A, b, x, hal qiluvchi);  lis_solver_get_iter(hal qiluvchi, &iter);  lis_solver_get_time(hal qiluvchi, &vaqt);  printf("takrorlash soni =% d n", iter);  printf("o'tgan vaqt =% e n", vaqt);  lis_output_vector(x, LIS_FMT_MM, argv[3]);  lis_solver_destroy(hal qiluvchi);  lis_matrix_destroy(A);  lis_vector_destroy(b);  lis_vector_destroy(x);  lis_finalize();  qaytish 0;}Tizim talablari
Ning o'rnatilishi Lis C kompilyatorini talab qiladi. Fortran interfeysi uchun Fortran kompilyatori va algebraik ko'p o'lchovli Old shart uchun Fortran 90 kompilyatori kerak.[4] Parallel hisoblash muhiti uchun OpenMP yoki MPI kutubxonasi talab qilinadi. Ikkalasi ham Matritsa bozori va Harwell-Boing foydalanuvchi ma'lumotlarini import qilish va eksport qilish uchun formatlarni qo'llab-quvvatlaydi.
Lis ishlatadigan paketlar
Shuningdek qarang
- Raqamli kutubxonalar ro'yxati
 - Konjuge gradiyent usuli
 - Bikonjugat gradiyent stabillashgan usuli (BiCGSTAB)
 - Umumlashtirilgan minimal qoldiq usuli (GMRES)
 - O'ziga xos qiymat algoritmi
 - Lanczos algoritmi
 - Arnoldi takrorlanishi
 - Krilov subspace
 - Ko'p o'lchovli usul
 
Adabiyotlar
- ^ Akira Nishida (2010). "Yaponiyada ochiq manbali miqyosli dasturiy ta'minot infratuzilmasini yaratish tajribasi". Hisoblash fanlari va uning qo'llanilishi - ICCSA 2010. Informatika fanidan ma'ruza matnlari 6017. 6017. Springer. 87-98 betlar. doi:10.1007/978-3-642-12165-4_36. ISBN 978-3-642-12164-7.
 - ^ Hisashi Kotakemori; Xidehiko Xasegava; Tamito Kajiyama; Akira Nukada; Reiji Suda va Akira Nishida (2008). "SGI Altix 3700-da parallel siyrak matritsali-vektorli mahsulotlarning ishlashini baholash". OpenMP birgalikda xotira bilan parallel dasturlash. Kompyuter fanidan ma'ruza matnlari 4315. Springer. 153-163 betlar. doi:10.1007/978-3-540-68555-5_13. ISBN 978-3-540-68554-8.
 - ^ Hisashi Kotakemori; Hidehiko Xasegava va Akira Nishida (2005). "OpenMP-dan foydalangan holda parallel takroriy uslublar kutubxonasining ishlashini baholash". Osiyo Tinch okeani mintaqasida (HPC Asia 2005) yuqori samarali hisoblash bo'yicha 8-Xalqaro konferentsiya materiallari.. IEEE. 432-436 betlar. doi:10.1109 / HPCASIA.2005.74. ISBN 0-7695-2486-9.
 - ^ Akixiro Fujii; Akira Nishida va Yoshio Oyanagi (2005). "Parallel agregatlarni yaratish buyurtmalarini baholash: tekis birlashma algebraik ko'p o'lchovli usul". Yuqori samarali hisoblash fanlari va muhandislik. Springer. 99-122 betlar. doi:10.1007/0-387-24049-7_6. ISBN 1-4419-3684-X.
 
Tashqi havolalar
- Rasmiy veb-sayt
 - GitHub-dagi ishlab chiqarish ombori
 - Prof Jek Dongarraning bepul mavjud bo'lgan chiziqli algebra dasturiy ta'minot sahifasi
 - Netlib ombori (Iltimos Netlib loyihasi)
 - Fedora to'plamlari (Iltimos Fedora loyihasi)
 - Gentoo to'plamlari (Iltimos Gentoo Linux loyihasi)
 - AUR to'plamlari (Iltimos Arch Linux hamjamiyati)
 - FreeBSD to'plamlari (Iltimos FreeBSD loyihasi)
 - Windows uchun paketlar (WHPC loyihasi ruxsati bilan)
 - MacOS uchun paketlar (Homebrew) (Iltimos Homebrew loyihasi)
 - MacOS uchun to'plamlar (MacPorts) (Iltimos MacPorts loyihasi)