एक आवेदन में कुछ सूत्र फेंकने और सर्वश्रेष्ठ की उम्मीद करने से अच्छा कंसीडर की बहुत अधिक आवश्यकता होती है। वहाँ एक सीमा है कि कैसे समवर्ती एक कार्यक्रम शर्मनाक ढंग से शुद्ध अनुक्रमिक के समानांतर से जा सकता है । कोई भी दिया गया प्रोग्राम अमदहल के नियम का उपयोग यह व्यक्त करने के लिए कर सकता है कि समस्या या एल्गोरिथ्म कितना स्केलेबल है। एक शर्मनाक समानांतर आवेदन के लिए एक युगल योग्यता होगी:
- कोई साझा स्थिति नहीं, प्रत्येक फ़ंक्शन केवल पारित किए गए मापदंडों पर निर्भर करता है
- भौतिक उपकरणों तक पहुँच नहीं (ग्राफिक कार्ड, हार्ड ड्राइव, आदि)
अन्य योग्यताएं हैं, लेकिन सिर्फ इन दो के साथ हम समझ सकते हैं कि विशेष रूप से गेम उतने आसान क्यों नहीं हैं जितना आप कई एईएस का लाभ उठाने के लिए सोच सकते हैं। एक के लिए, दुनिया के जिस मॉडल को प्रस्तुत किया जाएगा, उसे भौतिकी, आंदोलन, कृत्रिम बुद्धिमत्ता आदि की गणना करने वाले विभिन्न कार्यों के रूप में साझा किया जाना है। दूसरा, इस गेम मॉडल के प्रत्येक फ्रेम को ग्राफिक्स कार्ड के साथ स्क्रीन पर प्रस्तुत करना होगा।
निष्पक्ष होने के लिए, कई गेम निर्माता गेम इंजन का उपयोग करते हैं जो तीसरे पक्ष द्वारा निर्मित होते हैं। इसमें थोड़ा समय लगा, लेकिन ये तीसरे पक्ष के गेम इंजन अब बहुत अधिक समानांतर हैं, जो पहले हुआ करते थे।
प्रभावी संगामिति से निपटने में बड़ी वास्तु चुनौतियां हैं
Concurrency बैकग्राउंड में रनिंग टास्क से लेकर कंसर्ट के लिए फुल आर्किटेक्चरल सपोर्ट तक कई रूप ले सकता है। कुछ भाषाएं आपको बहुत शक्तिशाली संगति सुविधाएँ प्रदान करती हैं जैसे कि ERLANG , लेकिन इसके लिए आपको बहुत अलग तरीके से सोचने की आवश्यकता है कि आप अपने आवेदन का निर्माण कैसे करते हैं।
हर प्रोग्राम को वास्तव में पूर्ण मल्टीकोर समर्थन की जटिलता की आवश्यकता नहीं होती है। ऐसा ही एक उदाहरण है टैक्स सॉफ्टवेयर, या कोई भी फॉर्म संचालित एप्लिकेशन। जब आपका अधिकांश समय उपयोगकर्ता को कुछ करने के लिए इंतजार करने में बिताया जाता है, तो मल्टीथ्रेडेड एप्लिकेशन की जटिलता बस इतनी उपयोगी नहीं होती है।
कुछ एप्लिकेशन खुद को अधिक शर्मनाक समानांतर समाधान के लिए उधार देते हैं, जैसे वेब एप्लिकेशन। इस मामले में, मंच शर्मनाक समानांतर से बाहर शुरू होता है और यह आपके लिए है कि थ्रेड कंटेस्टेंट को न लगाया जाए।
तल - रेखा:
कई थ्रेड (और इस प्रकार, कोर) का लाभ नहीं लेने से सभी एप्लिकेशन वास्तव में आहत होते हैं। इससे आहत लोगों के लिए, कभी-कभी गणना समानांतर प्रसंस्करण के लिए अनुकूल नहीं होती हैं या समन्वय के लिए ओवरहेड यह अनुप्रयोग को अधिक नाजुक बना देगा। दुर्भाग्य से, समानांतर प्रसंस्करण अभी भी उतना आसान नहीं है जितना अच्छा होना चाहिए।