c++ - Confusing gprof output -


मैंने gprof एक C ++ प्रोग्राम पर चलाया जिसने 16.637s लिया, समय () के अनुसार, और मुझे आउटपुट की पहली पंक्ति के लिए यह मिला:

 % संचयी स्वयं पूर्ण समय सेकंड सेकेंड कॉल एस / कॉल एस / कॉल नाम 31.07 0.32 0.32 54 9 8021 0.00 0.00 [जो भी]  

यह 31.07% की सूची क्यों करता है यदि यह केवल .32 सेकंड लेता है? क्या यह प्रति कॉल का समय है?

यह मेरी पहली बार gprof का उपयोग कर रहा है, कृपया दयालु हो:)

संपादन: द्वारा नीचे स्क्रॉल करना, ऐसा प्रतीत होता है कि जीपीआरएफ केवल सोचता है कि मेरा प्रोग्राम 1.03 सेकंड लेता है। ऐसा क्यों हो सकता है कि यह गलत हो?

अवरोध I / O फ़ाइल में निकला ( देख )। मैं बफ़र में पूरी फाइल पढ़ने के लिए बंद कर दिया और इसे बहुत तेज कर दिया।

यहां समस्या यह थी कि जीप्रफ फ़ाइल I / O (देखें) की प्रतीक्षा करते समय सटीक प्रोफाइलिंग प्रकट नहीं होता है। वास्तव में, seekg और tellg प्रोफ़ाइल सूची पर भी नहीं थे, और वे बाधा थे!


Comments