CPU密集型和I O密集型區別

2022-07-04 04:51:11 字數 378 閱讀 1617

cpu密集型

i/o密集型

有一些程序則在input 和output上花費了大多時間,稱為i/o密集型,i/o-bound。比如搜尋引擎蜘蛛大多時間是在等待相應這種就屬於i/o密集型。

nodejs

眾所周知node.js是單執行緒的,正常來說nodejs處理cpu密集型就比較乏力,畢竟只有一條執行緒。

node從他推出至今,充滿讚美和飽受詬病的都是其單執行緒模型,所有的任務都在乙個執行緒中完成(i/o等例外),優勢的地方自然是免去了頻繁切換執行緒的開銷,以及減少資源互搶的問題等等,但是當nodejs面對cpu密集型模型的時候就力不從心了。儘管node擁有非同步機制,可以把一些耗時演算法丟入eventloop等待下個事件迴圈再做,但是因為其任然是單執行緒模型,所以終究會造成阻塞。

CPU 密集型 計算密集型,IO密集型

1 cpu 密集型 計算密集型 計算密集型,顧名思義就是應用需要非常多的cpu計算資源,在多核cpu時代,我們要讓每乙個cpu核心都參與計算,將cpu的效能充分利用起來,這樣才算是沒有浪費伺服器配置,如果在非常好的伺服器配置上還執行著單執行緒程式那將是多麼重大的浪費。對於計算密集型的應用,完全是靠c...

cpu密集型 計算密集型 io密集型 簡介

cpu密集型 cpu bound cpu密集型也叫計算密集型,指的是系統的硬碟 記憶體效能相對cpu要好很多,此時,系統運作大部分的狀況是cpu loading 100 cpu要讀 寫i o 硬碟 記憶體 i o在很短的時間就可以完成,而cpu還有許多運算要處理,cpu loading很高。在多重程...

CPU計算密集型和IO密集型

cpu計算密集型和io密集型 計算密集型任務由於主要消耗cpu資源,因此,執行效率至關重要。python這樣的指令碼語言執行效率很低,完全不適合計算密集型任務。對於計算密集型任務,最好用c語言編寫。第二種任務的型別是io密集型,涉及到網路 磁碟io的任務都是io密集型任務,這類任務的特點是cpu消耗...