2

我正在使用VS2010並進行一些長時間運行的模擬,試圖創建高度優化的C++程序。我已經在Visual Studio中閱讀了關於Profile-Guided Optimizations,並認爲這有點難以使用,這是因爲您需要三步過程,其中(a)構建二進制文件,(b)運行測試並收集數據,然後(c)使用PGO。簡介指導優化可用於簡單功能特定優化嗎?

事情是我已經知道我的瓶頸在哪裏;因此,如果有一種方法可以告訴VS哪些函數需要優化,我將省去上面的冗長構建過程,並且可以使用常規的構建過程。

有沒有人知道一種方法來做到這一點?也許有辦法通過手動生成PGO文件來告訴VS哪些函數需要優化?

謝謝!

+0

在gcc中有「#pragma hot」或「attribute hot」來標記源代碼中的重要函數。 – osgx

回答

0

你已經知道你的瓶頸在哪裏?

真的嗎?

爲了好玩,我們只是想象一下,可能存在一個或多個更大的「瓶頸」,你不知道它們是什麼或者它們在哪裏。

他們就是這樣。他們是偷偷摸摸的。它們可以隱藏在明顯的視野中。

This shows how I find them.

你實際上可能得​​到的地方,你需要的編譯器對代碼進行優化的一個點。 根據我的經驗,只有在我已經調整了愚蠢的東西之後纔會發生這種情況,因爲沒有編譯器能夠理順。 如果你認爲不會放在愚蠢的東西,那麼,證明它。 我們都可以,做。

+0

那麼,我同意你應該如何工作。儘管如此,能夠告訴編譯器哪些是性能要求最高的部件將是很好的,這是我的問題。 –