विरल रैखिक प्रणालियों को हल करने के लिए पुस्तकालय


21

वहाँ कई अलग-अलग पुस्तकालय हैं जो समीकरणों की एक विरल रैखिक प्रणाली को हल करते हैं, हालांकि मुझे यह पता लगाना मुश्किल है कि अंतर क्या हैं।

: जहां तक मेरा यह बता सकें कि तीन प्रमुख संकुल हैं Trilinos , PETSc , और इंटेल MKL । वे सभी मैट्रिक्स सॉल्व कर सकते हैं, वे सभी तेज़ हैं (जहां तक ​​मैं बता सकता हूं, मैं उनमें से किसी पर भी ठोस बेंचमार्क नहीं पा सका हूं), और वे सभी समानांतर हैं। जो मुझे नहीं मिल रहा वह अंतर है।

तो, अलग-अलग विरल रैखिक प्रणाली के बीच अंतर क्या हैं?

जवाबों:


29

वहाँ कई और अधिक हैं, सभी अलग-अलग लक्ष्यों और समस्याओं के विचारों के साथ। यह वास्तव में इस बात पर निर्भर करता है कि आप क्या हल करना चाह रहे हैं। यहां पैकेजों की एक अपूर्ण सूची है। अधिक विवरण जोड़ने के लिए स्वतंत्र महसूस करें।

बड़े वितरित Iterative सॉल्वर पैकेज

  • PETSc - संकुल क्रायलोव उप-विधियों के आसपास केंद्रित है और रैखिक सॉल्वरों के बीच आसान स्विचिंग है। इस श्रेणी में दूसरों की तुलना में बहुत हल्का वजन।
  • Trilinos - FEM अनुप्रयोगों के उद्देश्य से संकुल का एक बड़ा सेट
  • हाइप्रे - ऊपर के दोनों के समान। अपने बहुत अच्छे मल्टीग्रिड सॉल्वर (जिसे पेट्सक द्वारा डाउनलोड किया जा सकता है) के कारण उल्लेखनीय है।

समानांतर प्रत्यक्ष सॉल्वर पैकेज

सीरियल डायरेक्ट सॉल्वर पैकेज

इंटरएक्टिव वातावरण (बहुत छोटी प्रणालियों के लिए अधिक)

अन्य सूची


9

MKL समानांतरवाद (जैसे MPI) वितरित नहीं करता है, और विरल सॉल्वरों के लिए समर्थन अल्पविकसित है, निश्चित रूप से अन्य दो के स्तर पर नहीं है। वर्तमान में, केवल एक सार्थक बेंचमार्क है: स्पार्स मैट्रिक्स-वेक्टर उत्पाद (SpMV) का स्केलेबल प्रदर्शन। चूंकि यह मेमोरी बैंडविड्थ सीमित है, आप इसे केवल स्क्रू कर सकते हैं। PETSc और Trilinos दोनों इस पर अच्छा काम करते हैं।

वास्तविक अंतर यह है कि प्रोग्रामिंग वातावरण आपको अधिक उत्पादक बनाता है।


यदि आप C या C ++ में काम करना चाहते हैं तो यह बहुत अधिक उबलता है?
एंड्रयू स्पॉट 18

यह उससे थोड़ा अधिक खुला हुआ है। आप निश्चित रूप से संख्यात्मक कंप्यूटिंग भाषाओं (सी, पायथन, सी ++, और फोरट्रान के सभी व्यवहार्य विकल्प हैं, और कुछ हद तक, MATLAB) से ट्रिलिनो या पेट्सक कह सकते हैं।
एरन अहमदिया

PETS F90 एरे को सही तरीके से हैंडल करता है :), और पूरा ऑब्जेक्ट मॉडल मतलाब में उपलब्ध है।
मैट नॅपले

1
पेट्सक और ट्रिलिनोस भी कुछ हद तक विभिन्न समुदायों को संलग्न करते हैं। शायद आपको पहले उन समस्याओं पर विचार करना चाहिए जिन्हें आप हल करना चाहते हैं, और यदि समान समस्याओं के किसी भी मौजूदा उदाहरण पहले से ही टूलकिट में उपलब्ध हैं?
एरन अहमदिया

1
मैं फिर निर्णय लेने वाली विभिन्न परियोजनाओं के उदाहरणों को देखने की सलाह दूंगा। यदि आपके पास एक विशिष्ट उदाहरण है कि किसी समस्या के लिए कौन सा सिस्टम बेहतर होगा, तो यह एक अधिक जवाबदेह प्रश्न होगा। अन्यथा, हम केवल अपने स्नातक कैरियर के माध्यम से किए गए धार्मिक युद्ध को शुरू करेंगे।
अपरेल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.