Administrator
2024-11-19 1fdd45034464e00df842c06a5d6c5988e4ebb8e1
策略进程绑核运行
2个文件已修改
16 ■■■■ 已修改文件
l2_test.py 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
main.py 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
l2_test.py
@@ -11,6 +11,7 @@
    codes = [x.decode() for x in codes_sh]
    codes.extend([x.decode() for x in codes_sz])
    codes.sort()
    # 绑定CPU的核心是0-16
    cpu_count = 16
    page_size = int(len(codes) / cpu_count) + 1
main.py
@@ -1,6 +1,8 @@
"""
GUI管理
"""
import psutil
from code_attribute import gpcode_manager
from log_module import log
from log_module.log import logger_l2_trade, logger_system
@@ -61,8 +63,6 @@
    t1 = threading.Thread(target=redis_manager.RedisUtils.run_loop, name="redis", daemon=True)
    t1.start()
    #
    # 启动华鑫交易服务
    huaxin_trade_server.run(queue_strategy_r_trade_w_, queue_l1_w_strategy_r_, queue_strategy_w_trade_r_,
@@ -87,6 +87,7 @@
    huaxin_client.l2_client.test()
if __name__ == '__main__':
    # 可绑定16-31之间的核
    try:
        logger_l2_trade.info("启动程序")
        logger_system.info("启动程序--------")
@@ -145,10 +146,18 @@
        threading.Thread(target=huaxin_client.l2_client.run, args=(
            queue_other_w_l2_r, huaxin_trade_server.my_l2_data_callbacks), daemon=True).start()
        # 绑核运行
        psutil.Process(l1Process.pid).cpu_affinity([20])
        psutil.Process(tradeProcess.pid).cpu_affinity([21, 22])
        cpu_indexes = [i for i in range(23, 30)]
        psutil.Process(os.getpid()).cpu_affinity(cpu_indexes)
        # 主进程
        createTradeServer(pss_strategy, queue_strategy_r_trade_w, queue_l1_w_strategy_r, queue_strategy_w_trade_r,
                          queue_strategy_w_trade_r_for_read, queue_l1_trade_r_strategy_w,
                          queue_l1_trade_w_strategy_r, (order_ipc_addr, cancel_order_ipc_addr), queue_custom_block_in_money)
                          queue_l1_trade_w_strategy_r, (order_ipc_addr, cancel_order_ipc_addr),
                          queue_custom_block_in_money)
        # 将tradeServer作为主进程
        l1Process.join()