打印本文打印本文 关闭窗口关闭窗口

请教小米,TBDataCenter.exe占用率太高了!

作者:开拓者 TB 来源:cxh99.com 发布时间:2023年06月17日
  • 咨询内容: 没办法了,因为TBDataCenter.exe占用率高,造成图表刷新不及时,漏刷新很多个tick,影响到公式执行
    1.我电脑配置:e5 2680v2 * 2,20核40线程,内存8G,硬盘M2固态,网络托管上海机房,10M,我检查过所有硬件,目前来看除了cpu占用率高,其他硬件都没问题。
    2.软件使用情况:同时打开54个超级图表,每个图表均1分钟周期,5000个bar,每个图表插入5个公式实盘交易。
    3.问题表现:随着交易时间变长,cpu占用率越来越高,到下午接近收盘时,占用率已到80%+,刚开始我怀疑是行情波动剧烈的缘故,但现在看不是,因为行情波动最剧烈应该是开盘时间,那时候并没有高占用,反而是随着时间推移而升高
    4.TBDataCenter.exe到底是负责什么的,为什么会随着时间占用率越来越高?
    感谢小米指导!不然实盘做不下去了!

    附件: 你需要登录才可以下载或查看附件。没有帐号?注册

     

     来源:CXH99.COM

  • TB技术人员: 不存在图表刷新不及时,漏刷ticK的情况吧。。
    这样的表现,建议你先测试 一下你的在运行的常用公式,每次运算需要的时长。

     

  • TB客服: 本帖最后由 215600292 于 2020-3-26 10:25 编辑
    小米 发表于 2020-3-26 09:50
    不存在图表刷新不及时,漏刷ticK的情况吧。。
    这样的表现,建议你先测试 一下你的在运行的常用公式,每次运 ...



     

  • 网友回复: 本帖最后由 215600292 于 2020-3-26 10:37 编辑
    小米 发表于 2020-3-26 09:50
    不存在图表刷新不及时,漏刷ticK的情况吧。。
    这样的表现,建议你先测试 一下你的在运行的常用公式,每次运 ...


    1.存在不及时的情况,详细见最后,我用FileAppend输出到txt观察的,ta2009,24日下午的tick输出结果,可以看到收盘前最后一分钟,tick缺蛮多,这种活跃合约不可能行情不连贯的,tb按照图表刷新来执行公式,说明图表刷新被卡住了,我对比过cpu占用率,当cpu占用率低的时候,tick的输出结果就基本完全,当cpu占用率高的时候,就缺很多了,说明图标刷新不及时了。
    2.我测试过我的公式,没有死循环等等,5个公式跑下来耗时大概15ms,所以不是公式的问题,况且,如果是公式的问题的话,54个图表就会调用54个线程计算,那么应该是TradeBlazer.exe这个进程占用cpu高才对,但这个进程占用率却从未高于2%

    会不会是TB存在未知死锁?或者TBDataCenter.exe会随着挂撤单数量的增多而逐步消耗资源?我能想到的,随着时间改变而改变的变量,也就只有挂撤单了。要不,真的就是软件问题了






    电脑时间(currenttime)=0.145901     行情时间(q_lasttime)=N/A
    电脑时间(currenttime)=0.145901     行情时间(q_lasttime)=0.145902
    电脑时间(currenttime)=0.145902     行情时间(q_lasttime)=0.145903
    电脑时间(currenttime)=0.145904     行情时间(q_lasttime)=0.145905
    电脑时间(currenttime)=0.145905     行情时间(q_lasttime)=0.145907
    电脑时间(currenttime)=0.145906     行情时间(q_lasttime)=0.145908
    电脑时间(currenttime)=0.145908     行情时间(q_lasttime)=0.145909
    电脑时间(currenttime)=0.145909     行情时间(q_lasttime)=0.145911
    电脑时间(currenttime)=0.145911     行情时间(q_lasttime)=0.145912
    电脑时间(currenttime)=0.145913     行情时间(q_lasttime)=0.145914
    电脑时间(currenttime)=0.145914     行情时间(q_lasttime)=0.145916
    电脑时间(currenttime)=0.145916     行情时间(q_lasttime)=0.145918
    电脑时间(currenttime)=0.145918     行情时间(q_lasttime)=0.145919
    电脑时间(currenttime)=0.145919     行情时间(q_lasttime)=0.145921
    电脑时间(currenttime)=0.145921     行情时间(q_lasttime)=0.145922
    电脑时间(currenttime)=0.145923     行情时间(q_lasttime)=0.145924
    电脑时间(currenttime)=0.145924     行情时间(q_lasttime)=0.145926
    电脑时间(currenttime)=0.145926     行情时间(q_lasttime)=0.145927
    电脑时间(currenttime)=0.145927     行情时间(q_lasttime)=0.145929
    电脑时间(currenttime)=0.14593     行情时间(q_lasttime)=0.145931
    电脑时间(currenttime)=0.145931     行情时间(q_lasttime)=0.145933
    电脑时间(currenttime)=0.145933     行情时间(q_lasttime)=0.145934
    电脑时间(currenttime)=0.145935     行情时间(q_lasttime)=0.145936
    电脑时间(currenttime)=0.145937     行情时间(q_lasttime)=0.145938
    电脑时间(currenttime)=0.145938     行情时间(q_lasttime)=0.14594
    电脑时间(currenttime)=0.14594     行情时间(q_lasttime)=0.145941
    电脑时间(currenttime)=0.145942     行情时间(q_lasttime)=0.145943
    电脑时间(currenttime)=0.145944     行情时间(q_lasttime)=0.145945
    电脑时间(currenttime)=0.145945     行情时间(q_lasttime)=0.145946
    电脑时间(currenttime)=0.145947     行情时间(q_lasttime)=0.145948
    电脑时间(currenttime)=0.145949     行情时间(q_lasttime)=0.14595
    电脑时间(currenttime)=0.14595     行情时间(q_lasttime)=0.145951
    电脑时间(currenttime)=0.145952     行情时间(q_lasttime)=0.145954
    电脑时间(currenttime)=0.145954     行情时间(q_lasttime)=0.145955
    电脑时间(currenttime)=0.145956     行情时间(q_lasttime)=0.145957
    电脑时间(currenttime)=0.145957     行情时间(q_lasttime)=0.145959
    电脑时间(currenttime)=0.145959     行情时间(q_lasttime)=0.145959
    电脑时间(currenttime)=0.15     行情时间(q_lasttime)=0.145959

     

  • 网友回复:
  • 215600292 发表于 2020-3-26 10:35
    1.存在不及时的情况,详细见最后,我用FileAppend输出到txt观察的,ta2009,24日下午的tick输出结果,可 ...

    1,按照TB的运行机制来说,如果前一次运算的时长超过一个tick,那么一次运算结束到下一个新tick运算中间,是可能跳开某些tick没有运算上。而不是缺tick。
         你可以打开图表,新建一个公式,简单的代码,就一语句,写入日志的。对比看看,就有结果了。

    2,测试方式是怎么样的?如何得到15ms的耗时结果?
打印本文打印本文 关闭窗口关闭窗口