運行有什麼辦法,當我運行與我的程序選項-c
time
命令時,它告訴我下user
節0秒?這是我們所稱的程序不是CPU綁定的嗎? 我有一個程序,我總是得到0.01秒。我已經做了一些優化,但仍然是一樣的。我的程序運行時間從8秒左右降至0.01秒,但我無法進一步減少。 這是關於活動時間捕獲的情況下采樣間隔的事情嗎?C:我可以讓我的程序的外觀在0秒
回答
不,「不受CPU約束」意味着應用程序的性能受到其他因素的限制,通常受其所做I/O量的限制。它並不涉及任何特定的運行時間,它只是意味着應用程序正在等待I/O完成或大部分時間。
由於time
至少在Linux上顯示系統時間和用戶時間,用戶時間是衡量代碼實際運行的程度,而不是OS內核的代碼,如果用戶時間很長低於掛鐘時間,這是粗略的證據表明您的程序「不受CPU限制」。
這是一個奇怪的問題。但我想現在不需要回答你知道你誤解了「不受CPU限制」。
好的。假設我正在使用getchar()從stdin讀取字符。我不知道還有多少人物尚未到達。所以按照CPU綁定的定義,我不能讓這個場景不受CPU限制,對吧?因爲我必須保持循環直到EOF。 –
@DiwakarSharma如果你正在從用戶那裏讀取,它已經在程序的那個部分被非CPU綁定了,因爲你受限於用戶輸入的速度,而不是CPU的速度。如果你可能從重定向到stdin的文件中讀取數據,你應該考慮一些更高效的從stdin讀取數據的塊I/O方法。 –
正如你所說,我正在將一個文件重定向到stdin,比如./a.out <文件 –
- 1. 我可以在Android Studio中看到我的設備外觀
- 2. 如何讓我的C#應用程序可以訪問SqlServerCe?
- 3. 我可以確定標題欄的UWP應用程序的外觀嗎?
- 4. 我可以只讓我的程序訪問文件夾嗎?
- 5. 我們可以在幾秒鐘後強制退出C程序的執行
- 6. 我在哪裏可以在我的Octopress博客中定製Disqus的外觀?
- 7. 我可以用我的程序打包外部工具嗎?
- 8. 我怎麼可以簡單地使用發展觀在我的應用程序
- 9. 可以讓我的Qt應用程序在Windows上看Mac
- 10. 我在哪裏可以讓我的語言模塊的移動應用程序?
- 11. 我可以讓我的WatchKit應用程序在Apple Watch的後臺運行嗎?
- 12. 我可以讓我的的iOS客戶
- 13. 我可以使用C#控制外部應用程序嗎?
- 14. 我可以檢索微秒或非常準確的毫秒在Windows上的c + +?
- 15. 我可以讓我的紅寶石終端應用程序在線運行嗎?
- 16. 我可以指定我的C++程序偵聽哪個HID
- 17. 我可以限制我的C#應用程序
- 18. 我在哪裏可以找到有關更改ASP.NET Menu Control外觀的教程?
- 19. 我可以在C#中設置每秒MediaElement的幀數嗎?
- 20. 我可以讓我的UiApp拖動嗎?
- 21. 我可以通過外部程序讓我的私人DirectShow過濾器可被Moniker發現嗎?
- 22. 升級會話0以外的程序
- 23. 我們可以讓我們的應用程序掛斷從我們的應用程序的第二秒的撥打電話iphone sdk
- 24. Plone:我可以讓@@ manage-portlet使用main_template.pt以外的模板嗎?
- 25. 我可以在C#
- 26. 讓我的winform應用程序暫停1-2秒
- 27. 如何讓我的程序每五秒重複一次聲音?
- 28. 我可以讓我的iPhone應用程序的內容通過Spotlight搜索嗎?
- 29. 如何讓我的Ember應用程序可以訪問jsPDF?
- 30. 我可以自定義Stormpath登錄屏幕的外觀嗎?
我想一個人是在欺騙自己。非常奇怪的行爲 –
你的程序將需要0秒的唯一方法是如果你不運行該死的東西。這是什麼樣的問題? –
「運行時間從8秒左右降至0.01秒」 - 在優化之前它做了什麼,以及之後做了什麼? –