جميع الكتب

مهني

1 Markets I: The Ecosystem and Exchange-Traded Marketsالأسواق عبر الإنترنت 2 Markets II: Rates, FX and Creditالأسواق عبر الإنترنت 3 Markets III: Commodities, Energy and Cryptoالأسواق عبر الإنترنت 4 Quantitative Methodsالأساليب عبر الإنترنت 5 Derivatives and Volatilityالمشتقات عبر الإنترنت 6 Rates, Credit, XVA and Riskالفائدة والائتمان والمخاطر عبر الإنترنت 7 Research Craft: Predictors, Backtests, Measurement, Portfoliosالبحث عبر الإنترنت 8 Strategies I: Equities and Futuresالاستراتيجيات عبر الإنترنت 9 Strategies II: Volatility, Relative Value, Macro and the Bank Desksالاستراتيجيات عبر الإنترنت 10 Microstructure and Executionالتنفيذ عبر الإنترنت 11 Market Making and High-Frequency Tradingصناعة السوق عبر الإنترنت 12 Machine Learning for Marketsتعلم الآلة عبر الإنترنت 13 Low-Latency Softwareالتكنولوجيا عبر الإنترنت 14 Networks, Hardware and Trading Infrastructureالتكنولوجيا عبر الإنترنت 15 Research, Data and Risk Platformsالتكنولوجيا عبر الإنترنت 16 The Desk and the Firmالشركة عبر الإنترنت 17 The Industry: Firms, Roles and Careersالمسارات المهنية عبر الإنترنت 18 The Interview Bookالمسارات المهنية عبر الإنترنت
التطبيقات حول المدرب تسجيل الدخول ابدأ القراءة

Quantitative Finance · المسرد

ما معنى CPU affinity, core isolation, housekeeping core؟

يُعرف أيضًا باسم: CPU affinity · core isolation · housekeeping core

Definition 13.1 Low-Latency Software · الفصل 13 — Linux Tuning

The CPU affinity of a thread is the set of CPUs the scheduler may run it on; it is set with sched_setaffinity (or taskset from a shell) and inherited by the threads a thread creates. Core isolation removes CPUs from the scheduler’s load balancing, so that no thread runs on them unless its affinity names them explicitly, and moves the kernel’s own unbound work away from them. A housekeeping core is a CPU left out of the isolated set, which runs everything else: the kernel’s work, the interrupts of devices the hot path does not use, and the process’s cold threads.

The hiccup meter: how often a thread spinning on the time-stamp counter is kept from running for at least x, over five seconds, pinned to a CPU no other program of ours uses, free to move, and pinned to a CPU shared with a second spinning thread. Measured on a laptop (Intel Core Ultra 7 155H) under WSL2, no isolated cores, benchmark at normal priority on an otherwise idle machine. Data: bench_tuning.py.
Figure 13.1. The hiccup meter: how often a thread spinning on the time-stamp counter is kept from running for at least xx, over five seconds, pinned to a CPU no other program of ours uses, free to move, and pinned to a CPU shared with a second spinning thread. Measured on a laptop (Intel Core Ultra 7 155H) under WSL2, no isolated cores, benchmark at normal priority on an otherwise idle machine. Data: bench_tuning.py.
A tuned host for chapter 4’s two-socket fixture: each column is a physical core with its two hardware threads. The boot line isolcpus=21-23,29-31 nohz_full=21-23 rcu_nocbs=21-23 irqaffinity=0-15 with the siblings taken offline, the card’s interrupt queues bound to CPUs 16–20; the build’s audit accepts this host (the tuned fixture).
Figure 13.2. A tuned host for chapter 4’s two-socket fixture: each column is a physical core with its two hardware threads. The boot line isolcpus=21-23,29-31 nohz_full=21-23 rcu_nocbs=21-23 irqaffinity=0-15 with the siblings taken offline, the card’s interrupt queues bound to CPUs 16–20; the build’s audit accepts this host (the tuned fixture).
اقرأ في الفصل →