C++相談室 part166 (573レス)
C++相談室 part166 http://mevius.5ch.net/test/read.cgi/tech/1745631298/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
1: sage (ワッチョイ 8732-NXaD) [] 2025/04/26(土) 10:34:58.41 ID:pbPDl6lv0 !extend:checked:vvvvv:1000:512 !extend:checked:vvvvv:1000:512 ↑同じ内容を3行貼り付けること 次スレは>>980が立てること 無理なら細かく安価指定 ※前スレ C++相談室 part165 https://mevius.5ch.net/test/read.cgi/tech/1698705458/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured http://mevius.5ch.net/test/read.cgi/tech/1745631298/1
549: デフォルトの名無しさん (ワッチョイ f74e-Wka8) [] 2025/07/12(土) 14:19:56.77 ID:tjRcyRc80 なんでそんなことが必要なのかわからないけど、破棄するかどうかのフラグを持っておけばいいんじゃないの? 設計から見直した方が良いようなきがするけどw http://mevius.5ch.net/test/read.cgi/tech/1745631298/549
550: デフォルトの名無しさん (ワッチョイ f7c2-z8QQ) [sage] 2025/07/12(土) 17:03:35.88 ID:BGsI/m1X0 >>548 俺もなんでそんなことが必要なのかわからないけど、pip使ってデフォルトコントラスタのオーナーだけにshared ptrでリソース管理させるとか? これだとバグが怖いから、素直にshared ptrでリソースを共有したほうがいい気がする。 http://mevius.5ch.net/test/read.cgi/tech/1745631298/550
551: デフォルトの名無しさん (ワッチョイ 9f02-cEtd) [sage] 2025/07/12(土) 17:24:13.44 ID:1YAX70Df0 ゲームプログラムをマルチスレッドにするとき、何をマルチスレッドにするの? ストレージのロードとかはともかく http://mevius.5ch.net/test/read.cgi/tech/1745631298/551
552: デフォルトの名無しさん (アウアウウー Sa9b-zcFv) [] 2025/07/12(土) 18:45:10.30 ID:/RtKayKia マルチスレッドにしたいものをマルチスレッドにする http://mevius.5ch.net/test/read.cgi/tech/1745631298/552
553: デフォルトの名無しさん (ワッチョイ f7bd-eG3U) [] 2025/07/12(土) 19:12:52.47 ID:LUVzIFWA0 遠景のテクスチャのロードなんかは別スレッドかな? 当たり判定などのロジックは遅延なく1フレーム16ミリ秒以内にやらなきゃいけないのでメインスレッドでやるしかない ゲームでマルチスレッド使うのって難しいよね http://mevius.5ch.net/test/read.cgi/tech/1745631298/553
554: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 3732-SsbA) [sage] 2025/07/12(土) 20:02:23.86 ID:5KyGwfre0 排他処理が入ると並列化の恩恵がだいぶん減るので高速化の意図でマルチスレッドを使うなら排他が不要な部分を見つけるのが第一だね。 メモリなどの各種のリソース管理の後始末を別スレッドに任せるという例も聞いたことはある。 デストラクタが起動するとサブオブジェクトのデストラクタも連鎖的に起動するからワンフレームの時間が限られている状況では間に合わないということも起こる。 だからデストラクタは後始末が必要なリソースをテーブルに登録するだけにして、別スレッドが実際の後始末をするってことね。 もう使うことの無いリソースだというのは分かってるから排他は少なくてすむ。 (ヒープメモリの管理テーブルはスレッド共通だから排他がゼロとはいかないと思うけど。) 後始末が少しくらい遅れてもどうということはないし。 http://mevius.5ch.net/test/read.cgi/tech/1745631298/554
555: デフォルトの名無しさん (ワッチョイ e202-oEHq) [sage] 2025/07/13(日) 11:30:27.40 ID:WDtYO/xJ0 まあ、 アクションとか以外の、1/60秒で同期させなくていい処理ですかね… 遠くのPhysXの物理とかもできるのかな… 数年ぶりで、レイトレーシングとか未経験だわ… http://mevius.5ch.net/test/read.cgi/tech/1745631298/555
556: デフォルトの名無しさん (ワッチョイ e202-oEHq) [sage] 2025/07/13(日) 11:36:28.87 ID:WDtYO/xJ0 >>554 コンテキストスイッチとか気にしないといけないですね… PlaystationとXboxとPCゲームで、それぞれに最適化とか大変そうですね… http://mevius.5ch.net/test/read.cgi/tech/1745631298/556
557: デフォルトの名無しさん (ワッチョイ cecd-YjA1) [] 2025/07/13(日) 21:38:10.94 ID:e/4c/Agi0 ・人間は犯罪を起こす種族と言い切っている 地球はすでに丸見え、レーダー電波で宇宙人に居場所をさらしている 公開: 2025-07-13 21:00 https://karapaia.com/archives/524757.html >>明らかに人工的なもので、200光年以内にある知的文明なら、地球の場所を把握できる可能性が高い。 >>アレシボ天文台のような超高感度の望遠鏡を使えば、理論上は6万光年先からでも地球の電波を検出できるとされている。 >>に宇宙空間で“丸見え”の状態にあり、その状況は75年前から続いているのだ。問題は、彼らが友好的な文明であるという保証がまったくないことだ。 ★>>可能性としては、(我々人間のように)きわめて敵対的かつ侵略的な種族であるケースも十分にあり得る。 http://mevius.5ch.net/test/read.cgi/tech/1745631298/557
558: デフォルトの名無しさん (ワッチョイ ce59-YjA1) [] 2025/07/14(月) 12:26:06.28 ID:D5VD7WG/0 GPT-4.1超えの中国製AIモデル「Kimi K2」が無料公開される、複数のテストでGPT-4.1やClaude 4 Opusを打ち負かしエージェントタスクもこなす 2025年07月14日 11時10分 https://gigazine.net/news/20250714-ai-kimi-k2/ >>Kimi K2はベースモデルの「Kimi-K2-Base」と事後学習済みモデルの「Kimi-K2-Instruct」の2種類に分かれてリリースされています。以下の図は「Kimi-K2-Instruct」「DeepSeek V3」「Qwen3-235B」「GPT-4.1」「Claude 4 Opus」「Claude 4 Sonnet」「Gemini 2.5 Flash」のベンチマークスコアを並べたものです。Kimi-K2-InstructはすべてのテストでオープンモデルのDeepSeel V3とQwen3-235Bを超えるスコアを記録し、一部のテストでGPT-4.1やClaude Sonnet 4などの商用モデルに勝利しています。 ◇上記サイト内にダウンロードリンクがある http://mevius.5ch.net/test/read.cgi/tech/1745631298/558
559: デフォルトの名無しさん (ワッチョイ a9d9-jjSx) [sage] 2025/07/14(月) 14:37:25.45 ID:4jx6FCSc0 >>540 お前ゲーム作ったこと無いやろ・・・ http://mevius.5ch.net/test/read.cgi/tech/1745631298/559
560: デフォルトの名無しさん (ワッチョイ 370b-VyTm) [sage] 2025/07/14(月) 16:00:51.76 ID:sJl0ASyp0 ただエンプティ言いたいだけ違うんかと http://mevius.5ch.net/test/read.cgi/tech/1745631298/560
561: デフォルトの名無しさん (ワッチョイ 915f-YjA1) [sage] 2025/07/14(月) 16:18:22.23 ID:CQ+aGKeG0 画面描画FPS(frames per second)を固定させる為に、以下の待ち処理を入れるとFPSがメッチャ安定する: while (system_clock::now() < t_after_sleeping) { Sleep(0); } しかし強制フリーズさせてるみたいで、ハード痛めたりしないか不安なんだが。どうなん実際の所?詳しい人教えて http://mevius.5ch.net/test/read.cgi/tech/1745631298/561
562: デフォルトの名無しさん (ワッチョイ 30a6-4yYS) [sage] 2025/07/14(月) 16:27:01.51 ID:NLDJkZue0 マルチスレッドのセオリーとしてはSleepせずにビジーループするほうが問題 なんだけど、Sleepだと精度悪すぎてちゃんとFPS担保できるのか心配にはなる。動いてるならそれでいいけど http://mevius.5ch.net/test/read.cgi/tech/1745631298/562
563: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ bd32-2YuX) [sage] 2025/07/14(月) 17:49:12.87 ID:23SHNwVj0 >>561 定石と言えるレベルの普通の処理だよ。 既に指摘されているようにタイマーの精度の問題はあるので工夫を入れる必要はあるけど、 精度が悪くても処理が遅れる (想定より FPS が下がる) 可能性があるだけ。 どういう理屈で不安に思っているのかがよくわからないので何を間違っているのか説明できない。 Sleep(0) が何をやってるかわからない (これが何らかの危険な処理だと思っている) ってこと? http://mevius.5ch.net/test/read.cgi/tech/1745631298/563
564: デフォルトの名無しさん (ワッチョイ 915f-YjA1) [sage] 2025/07/14(月) 20:03:36.26 ID:CQ+aGKeG0 test http://mevius.5ch.net/test/read.cgi/tech/1745631298/564
565: デフォルトの名無しさん (ワッチョイ 915f-YjA1) [sage] 2025/07/14(月) 20:04:22.78 ID:CQ+aGKeG0 >>563 ありがとう。Sleep(0)が何をやっているかはわかっている http://mevius.5ch.net/test/read.cgi/tech/1745631298/565
566: デフォルトの名無しさん (ワッチョイ 915f-YjA1) [sage] 2025/07/14(月) 20:05:51.19 ID:CQ+aGKeG0 >>561のwhile中を空にする(Sleep(0)しない) > while中でSleep(0)する > while中でSleep(1)する(時間単位を1msにして待ち時間を1ms縮める) という具合にCPU占有率が上がる。精度は落ちるがSleep(1)を入れた方がCPUの負荷は減るので、何となく安心する。 http://mevius.5ch.net/test/read.cgi/tech/1745631298/566
567: デフォルトの名無しさん (ワッチョイ 915f-YjA1) [sage] 2025/07/14(月) 20:06:23.37 ID:CQ+aGKeG0 >>561のwhileの中でSleep(0)しつつ準ビジー状態を強行するのがどれだけハードに悪影響なのか、その辺りの実績経験を盗みかった。卑しい盗人を助けてくれ下さい http://mevius.5ch.net/test/read.cgi/tech/1745631298/567
568: デフォルトの名無しさん (ワッチョイ 7001-jjSx) [sage] 2025/07/15(火) 00:13:36.01 ID:KEPxDdxR0 C++スレ的にはthis_thread::yieldかと思ったんだが http://mevius.5ch.net/test/read.cgi/tech/1745631298/568
569: デフォルトの名無しさん (ワッチョイ 6268-3HIJ) [sage] 2025/07/15(火) 04:24:49.25 ID:4J45BJq00 >>561 グラフィックのAPIは何使ってる? 何と比べて安定したのかしらんけどそのやり方でディスプレイの出力と同期できるわけないのわかる? http://mevius.5ch.net/test/read.cgi/tech/1745631298/569
570: デフォルトの名無しさん (ワッチョイ cda1-2ooF) [sage] 2025/08/04(月) 06:40:16.41 ID:0gfRmGh70 ちょっ質問なのですが unsigned long m_ulAbortReasonBmp; std::mutex m_mutex; std::atomic<unsigned long> m_ulBias; に対し、 m_mutex.lock(); m_ulAbortReasonBmp |= fooBmp; // (1) : m_mutex.lock()期間内 m_mutex.unlock(); m_ulBias.store(barVal, std::memory_order_release); // (2) : m_mutex.lock()期間外だがm_mutex.lock()期間の後 としたとき、 Q1. m_mutex.lock()している他スレッドから見て(1)、(2)の操作の順序(m_ulAbortReasonBmpが変化した後、m_ulBiasが変化する)は保証される? Q2. m_mutex.lock()していない他スレッドから見てんも(1)、(2)の操作の順序(m_ulAbortReasonBmpが変化した後、m_ulBiasが変化する)は保証される? http://mevius.5ch.net/test/read.cgi/tech/1745631298/570
571: デフォルトの名無しさん (ワッチョイ cda1-2ooF) [sage] 2025/08/04(月) 07:34:20.02 ID:0gfRmGh70 Q1については、他スレッドから見てm_ulBiasのreadが m_mutex.lock()期間(クリティカルセクション)内のm_ulAbortReasonBmpへの書き込みより 先行するようなことが起きるとクリティカルセクションの意味が消失するから保証される Q2についてはm_ulBiasのreadがプロセッサコアにどう計画されるかわからないから m_ulAbortReasonBmpへの書き込みの後になることは一般に保証されない、 が、現在人類が手にしているクリティカルセクションの実装(lock期間に入るときと出るときそれぞれで いかなるreadもwriteも無差別にバリアする)により、lockしないスレッドから見ても順序が実質的に保証される、 でおk? http://mevius.5ch.net/test/read.cgi/tech/1745631298/571
572: デフォルトの名無しさん (ワッチョイ cda1-2ooF) [sage] 2025/08/04(月) 08:33:59.43 ID:0gfRmGh70 訂正orz、 Q2のケースでは保証されない 現在人類が手にしているクリティカルセクションの実装(lock期間に入るときと出るときそれぞれで いかなるreadもwriteも無差別にバリアする)のが真実だとしても、 それはm_ulAbortReasonBmpやm_ulBiasをwriteする側のスレッドがwrite順を守るというだけで、 m_ulAbortReasonBmpやm_ulBiasをreadする側のスレッドにはメモリバリアするコードが無いから read順を好きに計画され、writeした順でreadされる保証が無い http://mevius.5ch.net/test/read.cgi/tech/1745631298/572
573: デフォルトの名無しさん (ワッチョイ 5f79-1HMX) [sage] 2025/08/04(月) 08:41:31.47 ID:3rv0HXUI0 >ちょっ かわいい …舐めてんの? http://mevius.5ch.net/test/read.cgi/tech/1745631298/573
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.022s