請問下圖的【120 b / 13 s】代表什麼意思呢?
表示有 120筆資料未處理完,延遲了 13秒都還沒有把資料處理完
表示 CPU不夠力或TICK太多太快
不是吧,我的CPU是i5的ㄝ
13秒還處理不完阿...
所以不是網路的問題嗎?
所以這樣還真的是不正常,對吧?
不好意思,更正一下,當天為了要把主要的電腦送進主機代管
所以是用另一台老一點的電腦跑的
CPU是E8400 3GHz
(不是i5的那顆CPU)
不過有點好奇的是,怎麼會那麼久還運算不完呢,過了那麼多秒
請問你有時候也會看到這個【xxx b / xx s】的畫面嗎?
若是開太多圖表及指標,在快市時偶而出現
勉強算是可以接受
若是不能接受就只能加強 CPU 或是 減少圖表及指標,或是關掉一些其他會消耗資源的軟體
資料就是排隊去等著被計算及處理,等處理到該下單的資料時才會下單
簡單來說就是交易會延遲
至於CPU的部份,30%可能是平均值,不一定是目前運算中的那個核心
就是是看單核心沒有用到滿,也有可能是某程式沒寫好佔住了CPU,造成其他程式排在後面
這部份很難說
現在的CPU是多核平行處理,但是資料必須是依序處理的
前一筆沒處理完,其他資料不能跳過去先處理
多核心CPU 解決的是多工問題(多圖、獨立不同資料),不是速度問題(資料順序)
大概理解您的意思了
雙核心的CPU,但對於處理Queue資料的單一個執行緒來說
在任何一個時間點上只會在一個核心上執行
換句話說,在雙核心的CPU,一個執行緒滿載的CPU總使用率為50%
如果在四核心的CPU,一個執行緒滿載的CPU使用率為25%
如果在八核心的CPU,一個執行緒滿載的CPU使用率為12.5%
我的是i5雙核心版的CPU,我再用Performance Monitor來記錄交易整天的
1. 每個時間點,CPU總使用率
2. 每個時間點,各個核心的CPU使用率
如果真的CPU滿載,至少會看到CPU總使用率為50%(或以上)
終於抓到了造成batch of order queues警告兇手了
不過還是先來查看盤中五個小時的CPU使用率吧
由以上兩個圖可以看出CPU整體CPU使用率最高大約50%左右,其中每個核心的CPU使用率最高也大約50%
沒有半個核心是吃到飽100%的
接著來看batch of order queues警告當時的關鍵程式的的CPU使用率截圖
由以上兩個截圖可以看到當出現Batch of Order Queues的延遲警告時,這兩次TradingServer.exe占用CPU分別只有17%與14%而已
我的是雙核心CPU + Hyper Threading (HT),姑且把它當成四核心好了
(精確來說只是雙核心,HT遠遠不能跟真正的核心相提並論,雖然說工作管理員也替他準備了一個CPU的計量區域)
以四核心來說,為了序列化處理資料,一個執行緒使盡全力執行計算就會耗掉25%的CPU使用率
(假設執行計算過程不會有IO動作的話,理當是不會有的,算都算不完了哪還會把IO放在這個時候做呢,聰明的MC開發團隊設計時一定明白這點的)
很明顯17%或14%是低於25%的,這說明了不是CPU太慢,也不是Ticks太多所造成的
如果是的話出現警告時,以四核心的case,TradingServer.exe一定會達到25%甚至超過25%
另一方面,這兩次的警告同時都伴隨著MsMpEng.exe這支程式的占用CPU
MsMpEng.exe是被微軟Windows Defender與Microsoft Security Essentials防毒軟體所驅動的
所以很可能是被這個防毒軟體所拖累的
所以我把MultiCharts的所有執行檔與存取檔案的資料夾全部加入Microsoft Security Essentials防毒軟體的排除處理程序與檔案位置
加入後,當TradingServer.exe再開始占用CPU的時候,就沒伴隨MsMpEng.exe這支程式了,同時也沒出現Batch of Order Queues的警告了
下星期一再觀察一天,看是否開盤後30分鐘內不會再出現這個警告了
近一個月,為了這個 (還有期貨商的下單延遲)付出了超額的滑價損失,真是非戰之罪
只怪我平時謹慎,但卻對這事忽略掉了
另外順便提一下,我本來是用Avast的免費防毒軟體,但因為Avast的作戰策略是【寧可錯殺100也不可錯放一個】
因此MultiCharts這程式常常被Avast請到看守所喝咖啡順便關起來,而我總是要去看守所把他保釋出來才行,實在很尷尬
(但不裝防毒軟體又不放心,哪天程式都被賤諜程式偷走了)
為了避免尷尬場面,所以我改用微軟的Microsoft Security Essentials防毒軟體,他的作戰策略採用比較人道一點的【寧可錯放100也不可錯殺一個】
因為我這台電腦只執行程式交易,所以比較不怕錯放100的問題
請問萬年大....關掉之後有用嗎??