I'd hope these authors aren't referring to behavior under mitigation
circumstances since *all* HFT firms disable cpu mitigation schemes from the
kernel boot parameter list as a standard procedure.

On Sat, Jul 2, 2022, 1:21 AM Wojciech Kudla <wojciech.ku...@gmail.com>
wrote:

> > If you are using a hyper-threading and there is an interrupt or a system
> call on one logical core, then the hyper-sibling will stall as well because
> both need access to the kernel (mode switch).
>
> This is kind of correct. That is, for cases where the kernel implements
> microarchitectural data sampling mitigations (think spectre).
> Almost all low latency shops run their apps with SMT disabled so this does
> not apply but when using HT and with mitigations enabled the kernel has to
> synchronize ring 0 transitions.
> Se more here:
>
> https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/intel-analysis-microarchitectural-data-sampling.html
>
>
> On Sat, Jul 2, 2022 at 7:16 AM peter royal <peter.ro...@pobox.com> wrote:
>
>> is it possible the book was accurate at the time of writing but hardware
>> has since improved?
>> -pete
>>
>> --
>> (peter.royal|osi)@pobox.com - http://fotap.org/~osi
>>
>> On Jul 1, 2022, at 8:54 PM, Peter Veentjer <alarmnum...@gmail.com> wrote:
>>
>> 
>> Hi,
>>
>> I'm reading the following book "Developing High-Frequency Trading
>> Systems". My goal is not to write any high-frequency trading systems, but
>> to get some insights into the domain and learn as much as possible from the
>> applied techniques. It is a Packt book and they are not known for their
>> quality. But it is written by 3 engineers with a combined HFT experience of
>> almost 50 years.
>>
>> On page 62 of the book, they make the following claim. If you are using a
>> hyper-threading and there is an interrupt or a system call on one logical
>> core, then the hyper-sibling will stall as well because both need access to
>> the kernel (mode switch).
>>
>> I don't believe this is correct. Each logical core has its own
>> architectural state; so its own set of architectural registers and its own
>> APIC including an interrupt descriptor table. The current privilege level
>> is stored in the first 2 bits of the CS register and since every logical
>> core has its own copy of that, the hyper siblings should be able to run
>> independently no matter if there is a mode switch.
>>
>> Of course, disabling hyper-threading will lead to improved performance of
>> a single core, because it doesn't need to share any resources like rob,
>> line fill buffers, store buffers, load buffets, execution units,
>> reservation stations, caches, etc. So that is a valid reason to disable
>> hyper-threading.
>>
>> I'm by no means an X86 expert and certainly not a high-frequency trading
>> expert. So perhaps I'm missing something.
>>
>> Regards,
>>
>> Peter.
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "mechanical-sympathy" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to mechanical-sympathy+unsubscr...@googlegroups.com.
>> To view this discussion on the web, visit
>> https://groups.google.com/d/msgid/mechanical-sympathy/CAGuAWdChA2kzo1RXHUB3Zh1H5GonVs82BhkCzG7ap4Q1PaUvdg%40mail.gmail.com
>> <https://groups.google.com/d/msgid/mechanical-sympathy/CAGuAWdChA2kzo1RXHUB3Zh1H5GonVs82BhkCzG7ap4Q1PaUvdg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "mechanical-sympathy" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to mechanical-sympathy+unsubscr...@googlegroups.com.
>> To view this discussion on the web, visit
>> https://groups.google.com/d/msgid/mechanical-sympathy/473A9790-D9B6-46DA-8C8C-8FD98957EB76%40pobox.com
>> <https://groups.google.com/d/msgid/mechanical-sympathy/473A9790-D9B6-46DA-8C8C-8FD98957EB76%40pobox.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups
> "mechanical-sympathy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mechanical-sympathy+unsubscr...@googlegroups.com.
> To view this discussion on the web, visit
> https://groups.google.com/d/msgid/mechanical-sympathy/CAHNMKAqzLGqRmuZThB9YrFaAiAgx-4zSxjFiwbRnFkyQu-Hn3w%40mail.gmail.com
> <https://groups.google.com/d/msgid/mechanical-sympathy/CAHNMKAqzLGqRmuZThB9YrFaAiAgx-4zSxjFiwbRnFkyQu-Hn3w%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
To view this discussion on the web, visit 
https://groups.google.com/d/msgid/mechanical-sympathy/CAFvqqVdPmVFEDYB5okuvcfQZCnr19RhovG4i6qknMCQrJMiK8A%40mail.gmail.com.

Reply via email to