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

cache std::thread::hardware_concurrency() result at start up #42

Merged
merged 1 commit into from
Aug 28, 2024

Conversation

t-horikawa
Copy link
Contributor

@t-horikawa t-horikawa commented Aug 13, 2024

@t-horikawa t-horikawa requested a review from kuron99 as a code owner August 13, 2024 02:05
Copy link
Contributor

@ban-nobuhiro ban-nobuhiro left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

良いと思います。
プロセス実行中にコア数が変化することはあるにはあるのですが、この元のコードの頻度で再確認する必要はないはずです。

また std::thread::hardware_concurrency() から 0 が返ってきた場合に
https://en.cppreference.com/w/cpp/thread/thread/hardware_concurrency
正常に動作しないという別の問題もありますが、 PR の範囲外のことなので、別途直そうかと思います。

@ban-nobuhiro
Copy link
Contributor

この部分は Debug ビルドの時にしか通らず、通常用途では使われないので、次に控えているリリースに急いで載せる必要はないかと思います。

@ban-nobuhiro
Copy link
Contributor

@kuron99 特に期限は設けていませんでしたがレビュータイムアウトということで通します。

@ban-nobuhiro ban-nobuhiro merged commit d0c07d5 into master Aug 28, 2024
6 checks passed
@kuron99
Copy link
Contributor

kuron99 commented Aug 28, 2024

すみません、リクエストに気づいていませんでした。コードは問題ないと思います。

@ban-nobuhiro
Copy link
Contributor

また std::thread::hardware_concurrency() から 0 が返ってきた場合に
正常に動作しないという別の問題もありますが、PR の範囲外のことなので、別途直そうかと思います。

この点を見返してみたのですが、0 が返ってきても、全直列で動くだけで、問題というほどのことではなかったため、そのままにしました。

@t-horikawa
Copy link
Contributor Author

はい、「std::thread::hardware_concurrency() から 0が返ってきた場合は全直列で動くだけ」です。多分1でもそうなるのではないかと思います。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants