Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Добавить std::prefetch() функцию #574

Open
klappdev opened this issue Aug 24, 2023 · 0 comments
Open

Добавить std::prefetch() функцию #574

klappdev opened this issue Aug 24, 2023 · 0 comments
Labels
good first issue Несложная на вид идея. Самое то, чтобы попробовать написать на её proposal и помочь РГ21

Comments

@klappdev
Copy link

В последние стандарты активно добавлялись вещи для оптимизации кода.
Например, в C++20 были добавлены атрибуты [[likely]], [[unlikely]].
В C++23 было добавлено атрибут [[assume]], функция std::unreachable().

Одним из таких техник оптимизации является префектичинг кеша процессора.

Во многих компиляторах, это доступно в виде интринсиков.
https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html#index-_005f_005fbuiltin_005fprefetch
https://clang.llvm.org/docs/LanguageExtensions.html#builtin-prefetch

В boost.context есть уже такая функция.
https://www.boost.org/doc/libs/1_81_0/boost/context/detail/prefetch.hpp

Планируется также добавить в boost.core.
boostorg/core#136

Предлагается добавить в С++ переносимую std::prefetch() функцию.

@apolukhin apolukhin added the good first issue Несложная на вид идея. Самое то, чтобы попробовать написать на её proposal и помочь РГ21 label Mar 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Несложная на вид идея. Самое то, чтобы попробовать написать на её proposal и помочь РГ21
Projects
None yet
Development

No branches or pull requests

2 participants