यह कमांड hwloc-bind है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।
कार्यक्रम:
नाम
hwloc-bind - एक कमांड लॉन्च करें जो विशिष्ट प्रोसेसर और/या मेमोरी से जुड़ा हो, या
किसी मौजूदा प्रोग्राम की बाइंडिंग से परामर्श लें
SYNOPSIS
hwloc-बाइंड [विकल्पों] [ [...] ] [--] ...
ध्यान दें कि हुलोक(7) hwloc प्रणाली और वैध . का विस्तृत विवरण प्रदान करता है
प्रारूप; इस मैन पेज को पढ़ने से पहले इसे पढ़ा जाना चाहिए।
विकल्प
--cpubind सीपीयू बाइंडिंग (डिफ़ॉल्ट) के लिए निम्नलिखित तर्कों का उपयोग करें।
--याद रखें मेमोरी बाइंडिंग के लिए निम्नलिखित तर्कों का उपयोग करें। अगर --mempolicy भी नहीं दिया गया है,
डिफ़ॉल्ट नीति बाइंड है।
--mempolicy
मेमोरी बाइंडिंग नीति बदलें. उपलब्ध नीतियां डिफ़ॉल्ट हैं,
फर्स्टटच, बाइंड, इंटरलीव रिप्लिकेट और नेक्स्टटच। यह विकल्प ही है
सार्थक तब होता है जब वास्तविक बंधन भी साथ दिया जाता है --याद रखें. अगर --याद रखें is
बिना दिया गया --mempolicy, डिफ़ॉल्ट नीति बाइंड है।
--प्राप्त वर्तमान बाइंडिंग की रिपोर्ट करें.
जब कोई कमांड दिया जाता है, तो कमांड निष्पादित करने से पहले बाइंडिंग प्रदर्शित होती है।
जब कोई कमांड नहीं दिया जाता है, तो प्रोग्राम करंट प्रदर्शित करने के बाद बाहर निकल जाता है
बंधन।
जब के साथ संयुक्त --याद रखें, सीपीयू बाइंडिंग के बजाय मेमोरी बाइंडिंग की रिपोर्ट करें।
कोई स्थान नहीं दिया जा सकता क्योंकि कोई बंधन नहीं लगाया गया है।
-e --अंतिम-सीपीयू-स्थान प्राप्त करें
अंतिम प्रोसेसर की रिपोर्ट करें जहां प्रक्रिया चली। ध्यान दें कि परिणाम हो सकता है
रिपोर्ट किए जाने पर यह पहले से ही पुराना हो चुका है क्योंकि ऑपरेटिंग सिस्टम इसे स्थानांतरित कर सकता है
बाइंडिंग के अनुसार किसी भी समय अन्य प्रोसेसर पर प्रक्रिया करें।
जब कोई कमांड दिया जाता है, तो उसे निष्पादित करने से पहले अंतिम प्रोसेसर प्रदर्शित किया जाता है
आज्ञा। जब कोई कमांड नहीं दी जाती है, तो प्रोग्राम अंतिम प्रदर्शित करने के बाद बाहर निकल जाता है
प्रोसेसर।
इस विकल्प को इसके साथ नहीं जोड़ा जा सकता --याद रखें.
कोई स्थान नहीं दिया जा सकता क्योंकि कोई बंधन नहीं लगाया गया है।
--एक माइग्रेशन को रोकने के लिए एक ही सीपीयू पर बाइंड करें।
--कठोर सख्त बंधन की आवश्यकता है.
--पिडी
पीआईडी पर कार्य करें
-p --शारीरिक
लॉजिकल इंडेक्स के बजाय ओएस/भौतिक इंडेक्स लें
-l --लॉजिकल
भौतिक/ओएस इंडेक्स के बजाय तार्किक इंडेक्स लें (डिफ़ॉल्ट)
--टास्कसेट टास्कसेट कमांड-लाइन द्वारा पहचाने गए प्रारूप में सीपीयू सेट स्ट्रिंग्स प्रदर्शित करें
hwloc-विशिष्ट CPU सेट स्ट्रिंग प्रारूप के बजाय प्रोग्राम। इस विकल्प में कोई नहीं है
इनपुट सीपीयू सेट स्ट्रिंग के प्रारूप पर प्रभाव, दोनों प्रारूप हमेशा स्वीकार किए जाते हैं।
--रोकना
टोपोलॉजी को दिए गए सीपीयूसेट तक सीमित रखें।
--पूरा सिस्टम
प्रशासन की सीमाओं पर विचार न करें।
-f --बल
बाइंडिंग विफल होने पर भी निष्पादन योग्य लॉन्च करें।
-q --शांत
गैर-घातक त्रुटि संदेश छिपाएँ. इसमें गैर-मौजूदा की ओर इशारा करने वाले स्थान शामिल हैं
वस्तुओं, साथ ही बाँधने में विफलता। यह आमतौर पर इसके अतिरिक्त उपयोगी होता है
--बल.
-v --शब्दशः
वाचाल उत्पादन।
--संस्करण रिपोर्ट संस्करण और बाहर निकलें।
वर्णन
hwloc-bind एक निष्पादन योग्य (वैकल्पिक कमांड लाइन तर्कों के साथ) निष्पादित करता है जो इससे जुड़ा होता है
निर्दिष्ट स्थान (या स्थानों की सूची)। सफल निष्पादन पर, hwloc-बाइंड बस
बाइंडिंग सेट करता है और फिर निष्पादन योग्य को अपने ऊपर निष्पादित करता है।
यदि बाइंडिंग विफल हो जाती है, या यदि बाइंडिंग सेट खाली है, और --बल नहीं दिया गया, hwloc-bind
निष्पादन योग्य लॉन्च करने के बजाय त्रुटि के साथ लौटता है।
नोट: यह अत्यधिक अनुशंसा की जाती है कि आप इसे पढ़ें हुलोक(7) पढ़ने से पहले अवलोकन पृष्ठ
यह आदमी पृष्ठ। में वर्णित अधिकांश अवधारणाएं हुलोक(7) सीधे एचडब्ल्यूलोक पर लागू होता है-
बाइंड उपयोगिता.
उदाहरण
hwloc-bind के संचालन को कई उदाहरणों के माध्यम से सर्वोत्तम रूप से वर्णित किया गया है। कैसे के बारे में अधिक जानकारी
hwloc-bind कमांड लाइन पर निर्दिष्ट स्थानों का वर्णन किया गया है हुलोक(7).
दूसरे पैकेज के पहले लॉजिकल प्रोसेसर पर इको कमांड चलाने के लिए:
hwloc-बाइंड पैकेज:1.pu:0 -- इको हैलो
जो बिल्कुल के बराबर है
hwloc-बाइंड पैकेज:1.pu:0 इको हैलो
"इको" कमांड को दूसरे पैकेज के पहले कोर और दूसरे पैकेज के दूसरे कोर से बांधने के लिए
पहला पैकेज:
hwloc-बाइंड पैकेज:1.कोर:0 पैकेज:0.कोर:1 इको हैलो
ध्यान दें कि "इको" कमांड को कई प्रोसेसर से बांधना संभवतः अर्थहीन है
(क्योंकि "इको" संभवतः एकल-थ्रेडेड एप्लिकेशन के रूप में लागू किया गया है); ये उदाहरण
बस यह दिखाने के लिए कि hwloc-bind क्या कर सकता है।
पहले तीन पैकेजों को दूसरे और तीसरे नोड्स पर चलाने के लिए:
hwloc-बाइंड नोड:1-2.पैकेज:0:3 इको हैलो
जो इसके समतुल्य भी है:
hwloc-बाइंड नोड:1-2.पैकेज:0-2 इको हैलो
ध्यान दें कि यदि आप उन वस्तुओं से जुड़ने का प्रयास करते हैं जो मौजूद नहीं हैं, तो hwloc-bind चेतावनी नहीं देगा
जब तक -v निर्दिष्ट किया गया था।
भौतिक सूचकांक 2 वाले पैकेज में भौतिक सूचकांक 1 वाले प्रोसेसर पर चलाने के लिए:
hwloc-bind --भौतिक पैकेज:1.कोर:2 इको हैलो
सम पैकेज के भीतर विषम कोर पर चलने के लिए:
hwloc-बाइंड पैकेज:even.core:odd इको हैलो
दूसरे और पांचवें कोर को छोड़कर, पहले पैकेज पर चलने के लिए:
hwloc-बाइंड पैकेज:0 ~पैकेज:0.कोर:1 ~पैकेज:0.कोर:4 इको हैलो
पहले पैकेज को छोड़कर कहीं भी चलाने के लिए:
hwloc-बाइंड ऑल ~पैकेज:0 इको हैलो
eth0 नामक नेटवर्क इंटरफ़ेस के निकट कोर पर चलने के लिए:
hwloc-bind os=eth0 इको हैलो
पीसीआई डिवाइस के पास एक कोर पर चलने के लिए जिसकी बस आईडी 0000:01:02.0 है:
hwloc-bind pci=0000:01:02.0 इको हैलो
दूसरे मेमोरी नोड पर मेमोरी को बाइंड करने और पहले नोड पर चलाने के लिए (जब ओएस द्वारा समर्थित हो):
hwloc-bind --cpubind node:1 --membind node:0 इको हैलो
--get विकल्प वर्तमान बाइंडिंग की रिपोर्ट कर सकता है। यह उदाहरण नेस्टिंग hwloc-bind दिखाता है
बाइंडिंग सेट करने और फिर उसकी रिपोर्ट करने के लिए आह्वान:
hwloc-बाइंड नोड:1.पैकेज:2 hwloc-बाइंड --प्राप्त करें
hwloc डेवलपर की मशीनों में से एक पर, यह उदाहरण "0x00004444,0x44000000" रिपोर्ट करता है।
आपकी मशीन पर रिपोर्ट किया गया मास्क भिन्न हो सकता है।
स्थानों को हेक्स बिट मास्क के रूप में भी निर्दिष्ट किया जा सकता है (आमतौर पर hwloc-calc द्वारा उत्पन्न)।
उदाहरण के लिए:
hwloc-बाइंड 0x00004444,0x44000000 इको हैलो
hwloc-bind `hwloc-calc node:1.package:2` इको हैलो
मेमोरी बाइंडिंग की भी सूचना दी जा सकती है:
hwloc-bind --membind नोड:1 --mempolicy इंटरलीव -- hwloc-bind --get --membind
यह मेमोरी बाइंडिंग का वर्णन करने वाली एक स्ट्रिंग लौटाता है, जैसे "0x000000f0 (इंटरलीव)"।
ध्यान दें कि यदि सिस्टम में कोई NUMA नोड नहीं है, तो रिपोर्ट की गई स्ट्रिंग इंगित करेगी
यह प्रक्रिया संपूर्ण सिस्टम मेमोरी से जुड़ी है (उदाहरण के लिए, "0xf...f")।
संकेत
यदि ग्राफ़िक्स-सक्षम एलस्टॉपो उपलब्ध है, तो उदाहरण के लिए इसका उपयोग करें
hwloc-बाइंड कोर: 2 -- lstopo --pid 0
यह जांचने के लिए कि आपके बाइंडिंग कमांड का परिणाम वास्तव में क्या है। lstopo ग्राफिक रूप से होगा
दिखाएँ कि यह hwloc-bind से कहाँ बंधा है।
वापसी मूल्य
सफल निष्पादन पर, hwloc-bind अपने ऊपर कमांड निष्पादित करता है। वापसी मूल्य है
इसलिए कमांड का रिटर्न मान जो भी हो।
यदि किसी प्रकार की त्रुटि होती है, तो hwloc-bind गैर-शून्य लौटाएगा, जैसे (लेकिन यहीं तक सीमित नहीं):
कमांड लाइन को पार्स करने में विफलता, प्रक्रिया बाइंडिंग को पुनः प्राप्त करने में विफलता, या इसकी कमी
निष्पादित करने का आदेश.
onworks.net सेवाओं का उपयोग करके hwloc-bind का ऑनलाइन उपयोग करें