جميع الكتب

مهني

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 · المسرد

ما معنى Static polymorphism, curiously recurring template pattern؟

يُعرف أيضًا باسم: static polymorphism · curiously recurring template pattern

Definition 7.2 Low-Latency Software · الفصل 7 — C++ for Latency II: Compile Time

Static polymorphism selects the function to call at compile time, by templates or overloading, so that every call is direct. In the curiously recurring template pattern (CRTP) a class template takes its own derived class as a parameter, struct Book : Base<Book>, and the base calls the derived class’s functions through a static_cast of this.

Cost per message of three ways to dispatch it to its handler, on a stream of one type and on a random mix, and of a four-stage pipeline composed statically (firm.pipeline) and through virtual calls (the pipeline’s cost does not depend on the message mix). Measured on a laptop (Intel Core Ultra 7 155H) under WSL2, no isolated cores, pinned to one CPU, best of 15 runs of 65 536 messages. Data: bench_dispatch.py.
Figure 7.1. Cost per message of three ways to dispatch it to its handler, on a stream of one type and on a random mix, and of a four-stage pipeline composed statically (firm.pipeline) and through virtual calls (the pipeline’s cost does not depend on the message mix). Measured on a laptop (Intel Core Ultra 7 155H) under WSL2, no isolated cores, pinned to one CPU, best of 15 runs of 65 536 messages. Data: bench_dispatch.py.
اقرأ في الفصل →