◉CLAUDE LABEN
●2.1.283 — 週末の Claude Code リリースはなく、最新は 9月25日の 2.1.283 のまま。権限モード未設定時の既定が auto に変わった点は、許可ルールとの照合が要ります●PLANS — Pro と Team Standard の既定モデルが Sonnet から Opus へ。Claude Code 2.1.280 の変更で、プラン選びの前提が変わっています●10/07 — Claude Desktop / Cowork の管理構成キー旧綴りの受付終了まで残り9日。締切後は読み込みが fail-closed になります●AUTO — 「許可ルールに書いたコマンドが auto モードで拒否される」という問いが出ています。呼ぶ形を許可ルールに揃える話題です●NEW — 既定の Opus が 5.5 に変わった週、別名のまま残していた3箇所の確認●CURSOR — Cursor 経由で Claude を使うとクレジットがモデル原価に比例して減る構造。1日50件を超えるなら定額の Claude Code Pro が安定という整理が出ています●2.1.283 — 週末の Claude Code リリースはなく、最新は 9月25日の 2.1.283 のまま。権限モード未設定時の既定が auto に変わった点は、許可ルールとの照合が要ります●PLANS — Pro と Team Standard の既定モデルが Sonnet から Opus へ。Claude Code 2.1.280 の変更で、プラン選びの前提が変わっています●10/07 — Claude Desktop / Cowork の管理構成キー旧綴りの受付終了まで残り9日。締切後は読み込みが fail-closed になります●AUTO — 「許可ルールに書いたコマンドが auto モードで拒否される」という問いが出ています。呼ぶ形を許可ルールに揃える話題です●NEW — 既定の Opus が 5.5 に変わった週、別名のまま残していた3箇所の確認●CURSOR — Cursor 経由で Claude を使うとクレジットがモデル原価に比例して減る構造。1日50件を超えるなら定額の Claude Code Pro が安定という整理が出ています
記事一覧/Claude Code
⟐ Claude Code/2026-06-28上級

ストリーミングを並行で束ねると、ノートPCの CPU が先に音を上げる — 実測値で並行本数を絞る適応スロットルの設計

ストリーミングのCPU使用が軽くなっても、複数セッションを1台で束ねるとホストのCPUが先に飽和します。固定セマフォの限界と、実測CPUに応じて並行本数を上下させる適応ゲートの実装を、動くコードと実測値で解説します。

Claude Code258並行処理3ストリーミング10パフォーマンス4自動運用17

✦ プレミアム記事

先日の Claude Code 更新で、ストリーミング時の CPU 使用が約37%削減されました。長時間回し続ける運用にとっては素直にありがたい底上げです。ただ、私自身が複数サイトの自動投稿を1台のマシンで並行させていると、この種の改善で楽になるのは「1本あたりの重さ」であって、「同時に何本も束ねたときに先に音を上げるのはどこか」という問題は別に残り続けます。

実際、私の手元では、各サイトの記事生成を並行で走らせた瞬間にファンが唸り出し、1本ずつ流していたときには気づかなかった遅延が p95 で跳ね上がる、という現象に何度もぶつかりました。メモリは余っているのに、です。ここで取り上げたいのは、その律速が「ホストの CPU」だったときの対処です。勘で決めた固定の並行数をやめ、実測 CPU に合わせて並行本数を自動で絞る仕組みを、動くコードと手元の実測値で組み立てていきます。

なぜメモリより先に CPU が音を上げるのか

ストリーミング応答は、サーバーから届く SSE イベントを1つずつ受け取り、差分の JSON をパースし、テキストを継ぎ足していく処理の連続です。1本だけなら大した負荷ではありません。ところが同じ処理を10本20本と並行させると、イベントループ上で「細かいパース+コールバック」の山が絶え間なく発生し、CPU が律速になります。

ここで効いてくるのが、各セッションが待ち時間の少ない忙しいコルーチンだという点です。ネットワーク待ちで眠っている時間より、届いたチャンクを捌いている時間の比率が高いワークロードでは、I/O 並行の常識(「待ちが多いからたくさん並べてよい」)が崩れます。メモリ使用は本数に対しておおむね線形で予測しやすい一方、CPU は本数を増やすと飽和点で急に崖を迎えます。だからこそ、メモリのウォッチドッグとは別に、CPU を見て並行数を決める層が要ります。

「同時に何本まで」を勘で決めない

多くのバッチ処理は、次のような固定セマフォで並行数を縛ります。

import asyncio
 
# 勘で決めた固定値。開発機では快適だったが…
sem = asyncio.Semaphore(12)
 
async def run_one(site, client):
    async with sem:
        async with client.messages.stream(
            model="claude-sonnet-4-6",
            max_tokens=4096,
            messages=[{"role": "user", "content": build_prompt(site)}],
        ) as stream:
            async for _ in stream.text_stream:
                pass
        return await stream.get_final_message()

このコードの問題は、12 という数字がある特定のマシンの、ある特定の瞬間に最適化されている点です。私の場合、開発に使っている性能の高い Mac では12本でも余裕でしたが、同じスクリプトを古いミニ PC のスケジュール実行に載せた途端、CPU が96%前後に張り付き、各ストリームの実時間が単独実行のときの2.4倍ほどに伸びました。逆に、他の処理が一切いない大きなマシンでは12本では使い切れず、遊ばせてしまいます。固定値は「速い側」にも「遅い側」にも合いません。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦固定セマフォが「速いマシン基準」で決め打ちされ、非力な実行環境でCPUを飽和させる仕組み
✦ホストCPUをEWMAで実測し、目標使用率に対して並行本数を1本ずつ上下させる適応ゲートの実装
✦過負荷時に新規受付を止めて最低1本を守る背圧設計と、複数マシンで同じコードを使い回す運用の勘所
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

⟐ Claude Code2026-09-01
MCPサーバが十数個を超えてから、起動直後の一覧を信用しなくなりました
起動直後に「接続できません」と並ぶサーバのうち、こちらから手を打てるものは一部だけです。応答なし・起動失敗・プロトコル拒否を分けて返すプローブを実装し、14台構成で逐次22.03秒が並列5.09秒まで縮むところ、待ち時間を詰めると健全なサーバが失敗に化けるところを実測で残しました。
⟐ Claude Code2026-07-18
headless の Claude Code を止めたのに、ビルドだけが生き残っていた — exit 143 を前提に停止処理を設計する
headless モードの Claude Code が Bash 実行中に SIGTERM を受けると、コマンドのプロセスツリーが孤児化していました。2.1.212 の修正で挙動は exit 143 に変わります。この契約を前提に、監督スクリプトと後片づけを設計し直す手順をまとめます。
⟐ Claude Code2026-07-18
プランモードを「読むだけ」と信じていた — 前提を機構で確かめ直す
Claude Code 2.1.212 で、プランモードがファイルを変更する Bash を許可プロンプトも canUseTool も通さず実行していた不具合が修正されました。前提が崩れていた期間に何が起きうるのか、手元で確かめる方法と、モード名に安全性を預けない設計をまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます