- 論壇徽章:
- 0
|
繼續(xù)搞POLLING的分析
在SMP機(jī)器上裝了FB6,進(jìn)行POLLING測(cè)試.
SMP機(jī)器配置: CPU PII 450 X 2
主板:MSI 6129
內(nèi)存 256MB
網(wǎng)卡 IF_VR 1塊
IF_FXP 1塊
硬盤 2 塊
操作系統(tǒng):FreeBSD 6.0
POLLING支持開啟.
增加監(jiān)測(cè)功能:
1.手動(dòng)
增加sysctl中kern.polling的調(diào)試節(jié)點(diǎn)
SYSCTL_NODE(_kern_polling, OID_AUTO, dbg, CTLFLAG_RW, 0, "Device
polling debug");
監(jiān)測(cè)點(diǎn)1:NETISR_POLL監(jiān)測(cè).在調(diào)試節(jié)點(diǎn)下申明一計(jì)數(shù)器.
監(jiān)測(cè)點(diǎn)2:NETISR_POLLMORE監(jiān)測(cè).在調(diào)試節(jié)點(diǎn)下申明一計(jì)數(shù)器.
其他檢測(cè)點(diǎn):正考慮中...(網(wǎng)卡的執(zhí)行CPU和其他一些參數(shù))
2.自動(dòng)
還未考慮(是否對(duì)調(diào)度器情況進(jìn)程檢測(cè)?)
目前的一些結(jié)果:
1. 在PII X 2的SMP環(huán)境中,軟中斷NETISR_POLL的每秒差不多輪詢30000多次.
這是在沒有什么網(wǎng)絡(luò)負(fù)載的情況下,下一步要測(cè)試在以太網(wǎng),IP層分別有負(fù)載
的情況.
2. NETISR_POLLMORE比NETISR_POLL要少一些.這有些奇怪,按代碼的情況應(yīng)該
是一樣多的,少的情況只有一種:在NETISR_POLLMORE執(zhí)行前又到了硬時(shí)鐘中斷
,繼續(xù)執(zhí)行NETISR_POLL???
3. 一些測(cè)試值:
kern.polling.dbg.poll_coun: 5404323
kern.polling.dbg.pollmore_coun: 4952549
kern.polling.dbg.poll_suspect: 0
kern.polling.dbg.poll_invoke: 24 從硬件時(shí)鐘中斷到netisr_poll的毫秒
kern.polling.dbg.net_load: 30 從NETISR_POLL到NETISR_POLLMORE的毫秒
kern.polling.burst: 150
kern.polling.burst_max: 150
kern.polling.each_burst: 20
kern.polling.idle_poll: 0
kern.polling.user_frac: 50
kern.polling.reg_frac: 20
kern.polling.short_ticks: 258
kern.polling.lost_polls: 4
kern.polling.pending_polls: 0
kern.polling.residual_burst: 0
kern.polling.handlers: 1
kern.polling.enable: 1
kern.polling.phase: 0
kern.polling.suspect: 2
kern.polling.stalled: 0
kern.polling.idlepoll_sleeping: 1
本文來自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u/2681/showart_110491.html |
|