Trilinos - Trilinos

Trilinos
Tuzuvchi (lar)Sandia milliy laboratoriyalari
Barqaror chiqish
12.14.1 / 27-fevral, 2019-yil; 20 oy oldin (2019-02-27)
Mavjud:C ++ va C
LitsenziyaO'zgartirilgan BSD litsenziyasi, GNU Lesser General Public License
Veb-sayttrilinos.github.io

Trilinos to'plamidir ochiq manbali dasturiy ta'minot kutubxonalari, deb nomlangan paketlar, ilmiy dasturlarni ishlab chiqish uchun qurilish bloklari sifatida foydalanishga mo'ljallangan. "Trilinos" so'zi yunoncha bo'lib, "marvarid qatori" g'oyasini anglatadi va umumiy infratuzilma bilan birlashtirilgan bir qator dasturiy ta'minot paketlarini taklif qiladi. Trilinos ishlab chiqarilgan Sandia milliy laboratoriyalari mavjud algoritmlarning asosiy guruhidan va kabi dasturiy ta'minot interfeyslarining funksiyalaridan foydalanadi BLAS, LAPACK va MPI (tarqatilgan xotira bilan parallel dasturlash uchun xabarlarni uzatish interfeysi).[1][2][3]2004 yilda Trilinos R & D100 mukofotiga sazovor bo'ldi.[4]

Bir nechta superkompyuter uskunalari o'z foydalanuvchilari uchun Trilinosning o'rnatilgan versiyasini taqdim etadi. Ular orasida Milliy energetika tadqiqotlari ilmiy hisoblash markazi (NERSC),[5] Moviy suvlar Supercomputing dasturlari milliy markazi,[6] va Titan superkompyuteri da Oak Ridge milliy laboratoriyasi.[7] Cray superkompyuterlar Cray Scientific and Matath Library-ga o'rnatilgan Trilinos bilan birga keladi.[8]

Xususiyatlari

Trilinos tarkibiga quyidagilar kiradi:

Trilinos -lar orqali tarqatilgan xotirali parallel hisoblashni qo'llab-quvvatlaydi Xabarni uzatish interfeysi (MPI). Bundan tashqari, ba'zi Trilinos paketlari umumiy xotirani parallel hisoblash uchun o'sib boradigan qo'llab-quvvatlashga ega. Ular buni Trilinosdagi Kokkos to'plami orqali amalga oshiradilar, bu esa har xil parallel dasturlash modellarida umumiy C ++ interfeysini taqdim etadi, shu jumladan. OpenMP, POSIX mavzulari va CUDA.

Dasturlash tillari

Ko'pgina Trilinos paketlari yozilgan C ++. Trilinos versiyasi 12.0 va undan keyingi versiyasi C ++ 11-ni qo'llab-quvvatlashni talab qiladi. ML va Zoltan kabi ba'zi Trilinos paketlari yozilgan C. Epetra singari bir nechta paketlarda ba'zi hisoblash yadrolarining ixtiyoriy tatbiqlari mavjud Fortran, ammo Fortran ushbu paketlarni yaratishi shart emas.

Ba'zi Trilinos paketlari boshqa dasturlash tillari uchun bog'langan. Bularga Python, C, Fortran va Matlab kiradi.

Dastur litsenziyalari

Har bir Trilinos to'plami o'z dasturiy ta'minotiga litsenziyaga ega bo'lishi mumkin. Ko'pgina paketlar Ochiq manbali; ularning aksariyati a O'zgartirilgan BSD litsenziyasi, bir nechta paketlar ostida GNU Lesser General Public License (LGPL). The BLAS va LAPACK kutubxonalar talab qilinadigan bog'liqliklar.[1]

Shuningdek qarang

Adabiyotlar

  1. ^ a b "Trilinos loyihasi". Sandia milliy laboratoriyalari. Olingan 2014-06-24.
  2. ^ Heroux, Maykl A.; Bartlett, Roscoe A.; Xoul, Vikki E.; Hoekstra, Robert J.; Xu, Jonatan J.; Kolda, Tamara G.; Lehous, Richard B.; Uzoq, Kevin R.; Pavlovski, Rojer P.; Fipps, Erik T.; Salinger, Endryu G.; Tornquist, Xeydi K.; Tuminaro, Rey S.; Willenbring, Jeyms M.; Uilyams, Alan; Stenli, Kendall S. (2005). "Trilinos loyihasi haqida umumiy ma'lumot". ACM Trans. Matematika. Dasturiy ta'minot. 31 (3): 397–423. CiteSeerX  10.1.1.150.5502. doi:10.1145/1089014.1089021.
  3. ^ Palen, Brok; Squires, Jeff; Heroux, Mayk; Willenbring, Jim. "RCE 49: Trilinos". Tadqiqot, hisoblash va muhandislik (RCE) Podcast. Olingan 24 iyun 2014.
  4. ^ "DOE tomonidan moliyalashtirilgan tadqiqotlar 26 mukofotga sazovor bo'ldi". science.osti.gov. 2004-10-12. Olingan 2020-08-03.
  5. ^ "Trilinos". Milliy energetik tadqiqotlar ilmiy hisoblash markazi (NERSC). Olingan 24 iyun 2014.
  6. ^ "Trilinos". Moviy suvlar: barqaror Petascale hisoblash. Supercomputing dasturlari milliy markazi (NCSA). Olingan 24 iyun 2014.
  7. ^ "Trilinos". Oak Ridge-ning etakchiligini hisoblash mexanizmi. Oak Ridge milliy laboratoriyasi. Olingan 24 iyun 2014.
  8. ^ "Cray Programming Environment foydalanuvchi qo'llanmasi". CRAYDOC: Mijozlarning hujjatlari. Cray Inc. Olingan 24 iyun 2014.

Tashqi havolalar