瀏覽單個文章
熱鬥小狐
*停權中*
 
熱鬥小狐的大頭照
 

加入日期: Apr 2001
您的住址: 香港
文章: 1,441
引用:
作者littleshan
不需要。SMP中的spin-lock程式碼行之多年,把它改成monitor/mwait的形式不但浪費人力,效能也不會比較好。
再者,使用spin-lock或是monitor/mwait必需根據CPU屬於真正的physical core亦或是logical core,而這部分必需交給OS來做。也就是說,這兩支指令應該只有在OS實做synchronization時才會用到的。一般的應用程式根本不需要用這麼低階的指令,而應該用OS提供的system call來達到synchronization的功能。這樣做不但簡單易懂,也不會有相容性的問題。

沒有人說要把spin-lock程式碼改成monitor/mwait的形式執行
而是相反,把monitor/mwait程式碼改成spin-lock的形式執行
這樣開發商只需要為P4寫一次程式碼就可以直接拿到K8執行

當然也可以用你的方法,但就必須修改程式碼了
相對於開發商來說未必是好事,因為開發時間會長了,多一個選擇給他們並不是壞事
     
      
舊 2005-08-07, 03:39 PM #21
回應時引用此文章
熱鬥小狐離線中