2013-12-03 38 views
0

我有使用x264編碼器的Linphone開源應用程序。默認情況下,它運行在一個線程:如何知道x264是否使用多個處理器Windows

x264_param_t *params= ..... 
params->i_threads=1; 

我加入到使用所有的處理器能力:

long num_cpu=1; 
SYSTEM_INFO sysinfo; 
GetSystemInfo(&sysinfo); 
num_cpu = sysinfo.dwNumberOfProcessors; 
params->i_threads=num_cpu; 

的問題是我怎麼知道視頻中的流X264上運行(對我來說)4處理器?

因爲從Task Manager -> Performance -> CPU usage history不清楚。

我用windows 7

感謝,

回答

1

有三個很容易看到跡象表明,編碼充分利用多內核:

  1. 編碼運行速度更快
  2. 每核CPU負載指示在幾個核心同時負載/處理器
  3. 每線程CPU負載你應用程序顯示多線程上的相關負載

此外,您可以使用處理器關聯掩碼(以編程方式,並通過任務管理器)來限制應用於單個CPU。如果x264使用多個處理器,則設置掩碼將嚴重影響應用程序性能。

1

Windows任務管理器,一定要選擇View -> CPU History -> One Graph Per CPU。如果它看起來仍然不像所有的處理器內核都在全速運行,那麼可能有一些資源正在扼制編碼線程,並且存在將數據饋送到編碼器的瓶頸。

相關問題