क्या जावा प्रोग्राम का एक थ्रेड सीपीयू पर स्वचालित रूप से एकाधिक कोर का उपयोग कर सकता है?एकाधिक कोर का उपयोग करने के लिए सिंगल थ्रेड प्रोग्राम
उत्तर
आमतौर पर जीसी एक अलग थ्रेड में चल रहा है। लेकिन आमतौर पर यह कोई महत्वपूर्ण अंतर नहीं करता है। बस इतना ही।
क्या जावा प्रोग्राम का एक थ्रेड सीपीयू पर स्वचालित रूप से एकाधिक कोर का उपयोग कर सकता है?
हां और नहीं। एक थ्रेडेड जावा प्रोग्राम जीसी, जेएमएक्स, फाइनलाइज़र, और अन्य पृष्ठभूमि धागे में कई धागे का उपयोग करेगा, अलग-अलग CPUs (चाहे सीपीयू या कोर) में चल सकता है। जीसी धागे विशेष रूप से एक महत्वपूर्ण प्रदर्शन बढ़ावा देते हैं यदि वे किसी अन्य सीपीयू में चल रहे हैं। हालांकि, आपके एकल थ्रेडेड एप्लिकेशन, हालांकि यह CPUs के बीच स्थानांतरित कर सकता है, एक ही समय में 2 CPUs में कभी नहीं चल रहा है।
कैसे पता लगाने के लिए कि?
यह एक कठिन सवाल है और यह इस बात पर निर्भर करता है कि आप किस आर्किटेक्चर पर चल रहे हैं। ps
* निक्स के तहत दिखाए जा सकेंगे कि क्या आपके पास रन कतार में एकाधिक थ्रेड हैं लेकिन फिर भी यह नहीं दिखाया जा सकता है कि वे वास्तव में एकाधिक CPUs में निष्पादित कर रहे हैं।
मेरा मतलब है एकाधिक कोर, एकाधिक भौतिक cpus नहीं। – user697911
वही उत्तर @ user697911। जेवीएम के लिए, कोर/सीपीयू भेद ज्यादातर ओएस द्वारा पूरी तरह छुपा नहीं है। – Gray
ओएस कोर और सीपीयू के बीच का अंतर जान सकता है, लेकिन JVM केवल तार्किक CPUs –
आपका अपना कोड कई कोर पर नहीं चलेंगे अगर यह परिभाषा एकल लड़ी कर रहा है। कोई भी थ्रेडेड एप्लिकेशन एकाधिक कोर पर एक साथ चल सकता है - जब तक कि आप बिना किसी जानकारी के मल्टीथ्रेड कॉल/लाइब्रेरी का उपयोग कर रहे हों।
देखता है तो मेरा एप्लिकेशन तेज़ी से बनाने के लिए, मुझे इसे एकाधिक थ्रेड करना होगा? मेरी मशीन में 16 कोर हैं, और एक कोर इंगित किया गया है कि 100% से अधिक सीपीयू का उपयोग किया गया है, लेकिन अन्य स्वतंत्र हैं। और आवेदन बेहद धीमा है। – user697911
हां, आपको यह पता लगाने की आवश्यकता है कि अपना एल्गोरिदम कैसे लिखना है ताकि काम धागे के बीच विभाजित हो। उदाहरण के लिए, यदि आप 160 तत्वों की सरणी में कुछ करने के लिए लूप का उपयोग कर रहे हैं, तो आप 16 धागे उत्पन्न कर सकते हैं जो प्रत्येक 10 तत्वों पर काम करते हैं। हालांकि, आपको यह सुनिश्चित करने की आवश्यकता है कि पिछली गणनाओं को भविष्य की गणना की आवश्यकता नहीं है। उदाहरण के लिए, यदि आपकी गणना 160 दिन से अधिक का कुल लाभ है, तो प्रत्येक दिन पिछले की गणना करने की आवश्यकता होगी। –
एकाधिक धागे का उपयोग करने से अधिक मेमोरी का उपयोग होगा? – user697911
- 1. सिंगल एएसपीनेट अनुरोध के लिए एकाधिक कोर
- 2. जावा सर्वर के लिए सिंगल या एकाधिक थ्रेड पूल?
- 3. MATLAB और गणना चलाने के लिए एकाधिक कोर का उपयोग
- 4. एकाधिक पैकेजों के लिए सिंगल पॉइंटकट निर्दिष्ट करने के लिए
- 5. जावा बहु-थ्रेडेड प्रोग्राम एकाधिक CPU कोर का उपयोग करने में सक्षम कैसे है?
- 6. कोर का उपयोग करने के लिए अभिनेताओं का उपयोग
- 7. रुबी या पायथन वेब साइट्स को एकाधिक कोर का उपयोग करने के लिए कैसे करें?
- 8. क्या सी # घटना प्रणाली सिंगल-थ्रेड प्रोग्राम के लिए निर्धारक है?
- 9. एकाधिक धागे का उपयोग करते समय प्रोग्राम धीमा होता है
- 10. थ्रेड बनाम कोर
- 11. सभी कार्यों या एकाधिक विशिष्ट श्रमिकों के लिए सिंगल वर्कर थ्रेड?
- 12. थ्रेड का उपयोग करने के विकल्प।
- 13. एकाधिक कोर का उपयोग कर g ++ के साथ संकलन
- 14. py.test के साथ एकाधिक कोर का उपयोग कैसे करें?
- 15. एकाधिक कोर
- 16. थ्रेड में TADOConnection का उपयोग करने के लिए ठीक है
- 17. एकाधिक सीपीयू कोर
- 18. बैश: एकाधिक कोर पर एक ही प्रोग्राम चलाना
- 19. कोर चालू/दुर्घटना प्रोग्राम के
- 20. बहु-सीपीयू, बहु-कोर और हाइपर-थ्रेड
- 21. एकाधिक एनआईबीएस के साथ सिंगल व्यू कंट्रोलर?
- 22. एकाधिक भाषाओं को गठबंधन करने के लिए आईपीसी का उपयोग
- 23. LINQ सिंगल() 0 या एकाधिक वस्तुओं के लिए अपवाद
- 24. जावा में निष्पादक सेवा -> निष्पादक का उपयोग करने के लिए सिंगल थ्रेड कोड को कैसे परिवर्तित करें
- 25. सिंगल ईएआर? या एकाधिक ईएआरएस?
- 26. मल्टी Django प्रोजेक्ट्स के लिए सिंगल सेलेरी सर्वर का उपयोग
- 27. एकाधिक सेवा अनुबंधों के साथ सिंगल एंडपॉइंट
- 28. एकाधिक छवियों को प्रदर्शित करने के लिए plt.imshow() का उपयोग
- 29. एकाधिक .gitignore फ़ाइलों का उपयोग करने के लिए सर्वोत्तम अभ्यास
- 30. कोर डेटा मल्टी थ्रेड एप्लिकेशन
नहीं एक प्रश्न के साथ एक सवाल का जवाब देने के लिए, लेकिन कैसे कर सकता है एक चेक-आउट एकाधिक, खाली चेक-आउट के बूथों का टेलर मेकअप उपयोग? – Makoto