कामन फ़्रेम कार्य विकास
सीएफडी कोड विकास एक ऐसा क्षेत्र है जिसे सीएफ़डी कोड के अनुप्रयोगों में इसके प्रयोग हेतु विरोध किया गया था, इसलिए आमतौर पर इसका प्रयोग शैक्षणिक संस्थानों, अनुसंधान संगठनों और कुछ उद्योगों तक ही सीमित है। अनुसंधान क्षेत्रों के व्यापक स्पेक्ट्रम के कारण, अकादमिक संस्थानों और अनुसंधान संगठनों में सीएफडी विकास का अनुसरण प्रत्येक क्षेत्र को विशेष रूप से जॉंच कर किया जा रहा है। इससे कई कोड और सॉफ्टवेयरों का विकास किया गया। यद्यपि इन कोडों ने समस्याओं को सफलतापूर्वक हल किया है, इसमें अनेक खामियॉं भी पाए गए हैं। इन खामियों में सबसे उल्लेखनीय थे 1) शुरु से लिखे गए नए कोड हेतु अधिक प्रयास डाला गया 2) पूर्णत: अलग कोड संरचना वाले नए कोड और 3) कोड के प्राकृतिक विकास में बड़ी कठिनाई। एक सॉफ़्टवेयर इंजीनियरिंग के परिप्रेक्ष्य से हम जानते हैं कि एक सॉफ़्टवेयर कई तरीकों से लिखा जा सकता है, जबकि यह अलग-अलग अनुप्रयोगों को सुलझाने के लिए अलग-अलग प्रयोक्ताओं के लिए फायदेमंद है। यह दृष्टिकोण अकुशल और खर्चीला है तथा इसका लक्ष्य तरल भौतिकी को जितना हो सके सीखना है। इसके अलावा ज्ञान और कोड की जटिलता केवल डेवलपर के पास होती है, जो भविष्य में होने वाले विकास को रोकती है जिससे कोड मैन्टेनबिलिटि जैसे समस्याएं पैदा हो सकती हैं। इस संबंध में, कई संगठन इन दृष्टिकोणों की जांच कर रहे हैं जहां सीएफडी कोड विकसित करने के लिए एक मंच का उपयोग किया जा सकता है। इस क्षेत्र को आगे बढ़ाने के लिए यह मूल प्रेरणा है। इसके कारण सीएफडी के त्वरित एल्गोरिदमिक अ-वि में कोडों का रखरखाव आसान है और सीएफडी के अ-वि में परिवर्तन लाने की क्षमता है।
वास्तविक समस्याओं में उच्च-विश्वस्तता अनुकरण (डीएनएस/एलईएस) और बड़े पैमाने पर आरएएनएस अनुकरण हेतु विशाल कंप्यूटिंग संसाधनों की आवश्यकता है। एक यातायात वायुयान के डीएनएस हेतु क्रूज़ स्थिति (Re = 50 × 106) लगभग 2 × 1015 ग्रिड पाइंट आवश्यक हैं। यह बड़े पैमाने पर कंप्यूटिंग (पेटास्केल और उससे अधिक) के एल्गोरिदम पर जोर देता है। इस संबंध में, हमने एक नए ढांचे का विकास किया है जो अनेक प्रोसेसरों पर बृहद संकर मेशों को कुशलता से संभालता है। यह एक नए वितरित मेश स्टोरेज और डाटा संरचनाओं के लिए जिम्मेदार है जो समानांतरण को सक्षम करता है। पिछले विभाजन की जानकारी पर निर्भर किए बिना एल्गोरिथम अभिकल्प नए विभाजन और स्थानीय मेश का निर्माण करता है और स्टोरेज हेतु फ़ाइलों की आवश्यकता नहीं होती। समाधान प्रक्रिया के दौरान प्रोसेसर की संख्या बडी मात्रा में बदली जा सकती है जो सीएफडी अनुप्रयोगों के लिए लचीलापन प्रदान करता है। फ्रेमवर्क शुरु से अंत तक समानांतर है और समांनांतर कंप्यूटिंग के लिए आवश्यक सभी जानकारी प्रदान करता है। फ्रेमवर्क का प्रयोग अत्याधुनिक उच्च ऑर्डर एल्गोरिदम के विकास के लिए किया जा सकता है जैसे कि वेंको आदि।
वर्तमान में फ्रेमवर्क परिमित मात्रा पद्धति (एफवीएम) के आधार पर विच्छेदन का समर्थन करता है, हालांकि इसका प्रयोग गैलेरकिन (डीजी), स्पेक्ट्रल डिफेरेंस (एसडी), स्पेक्ट्रल वॉल्यूम (एसवी), स्पेक्ट्रल एलिमेंट (एसई) विधियों के लिए किया जा सकता है। इसका प्रयोग फ्रेमवर्क के भविष्य के विकास में किया जाएगा।
फ्रेमवर्क का परीक्षण किया गया है और परिणाम बृहद पैरलिसम के लिए अत्यंत उपयुक्त हैं। हमने एक समानांतर विभाजन परीक्षण किया है जहां बड़े मेश (96 मिलियन और 427 मिलियन सेल) का प्रयोग किया गया है। चित्र 1 सीरियल (नीला) और समानांतर विभाजन एल्गोरिदम (नारंगी) हेतु विभाजन समय दिखाता है जो गति-प्राप्त करने का संकेत है।
Figure 1 Performance of parallel partitioning vis-a-vis serial partitioning in the framework
बड़े मेश को संभालने के लिए हमने एचडीएफ5 लाइब्ररि का प्रयोग कर समानांतर I/O को सक्षम करने हेतु एक नई मेश संरचना का भी विकास किया है। तालिका-1 में बृहद पैरालिसम हेतु फ्रेमवर्क का प्रदर्शन समानांतर I/O को सक्षम बनाने से प्राप्त निष्पादन को दिखाता है:.
तालिका 1: 96 मिलियन मेश फाइल का प्रयोग करते हुए I/O निष्पादन अध्ययन
|
180 कोर |
240 कोर |
300 कोर |
360 कोर |
I/O |
1465.0338 |
1534.025 |
1393.8819 |
1469.6725 |
समानांतर I/O |
2.6462 |
1.6641 |
3.4510 |
2.9646 |
स्पीड-अप (एक्स) |
553.637 |
921.835 |
403.907 |
495.741 |
हमने एक मूल 3डी समानांतर यूलर सॉल्वर का विकास किया है और दस्तावेजों में उपलब्ध परीक्षण मामलों के साथ इसका सत्यापन किया है। नीचे दिए गए चित्र 2 और 3 में सॉल्वर की समानांतर निष्पादन और परीक्षण मामलों में से एक का सत्यापन दिखाया है। फ्रेमवर्क का प्रयोग करते हुए पाए गए सॉल्वरों का निष्पदान एसयू 2 द्वारा प्राप्त साल्वरों से अच्छा है।
Figure 2 Speedup of 3D Euler solver developed using Common Framework
चित्र-3 प्रयोगों के साथ सतह Cp वितरण की तुलना और एसयू2 कोड