from 日記2025-03-26 Devinをたくさん並列で使うと効率よく頭がパンクする
DevinのACU消滅期限が近かったので盛大に使ったのだけど やはりDevinをたくさん並列で使うと効率よく頭がパンクする 2〜3個が限界な気持ち
それがなぜなのかを考えつつ夕食を買いに行ってきます
速度と並行数を区別して考えないといけない 速度をあげる目的だと1人の人間がシングルスレッドで集中してクラインとかを使っている状態が最速だろうと思う。
オープンソース開発は並行数を上げる。 僕がアジュールのAPI側を直している間に、別の人がアジュールをデプロイするメイクファイルを作っていたのは、まさに並行数が上がっている。
オープンソース開発は、ワーカーがいつ起動して、どのタスクをつかむかが保証されない並行処理。 これはデビンを使っている時と結構似ている。デビンはこれをやってと言った仕事をやってくれるが、やってるかなと思ったらつまずいて止まっていたりする。見てない間に見当違いの方向に走って行ったりもする。
並行性(へいこうせい、英: concurrency)とは、計算機科学において、時間的にオーバーラップして実行される計算を伴うシステムの属性であり、そのような計算ではリソースを共有することがある。
オープンソースのワーカーは期待した作業をしてくれない。しょうがない。 だから作業の機会を作るけども誰かがその作業をすると期待してはいけない。 なので、究極的には自分が実現したい目的のために必要なラインの上のタスクをこなしていくことになる。 そのライン上のものは、他の人がやってくれると期待せずに全部自分でやる覚悟が必要だが、一方でたまに他の人がやってくれて自分の作業が楽になる。この時はとてもありがたい。 Devinには何をやってくれと指示することができる。でてきた成果がそのまま受け入れ可能な状態であることを期待してはいけない。将来的には期待できる確率が上がるかもしれないが、現状は着地点から修正をすることが必要になる。これに関しては過去に2つ図を書いた。
なぜ混乱するのかに関しての考察
メモ
タスクに基づいて仮想デスクトップ内にすべての必要なウィンドウを集めるべきか
全画面表示したブラウザでタブをたくさん開くとMission Controlが聞かない
人間がClineを使ってるときは共有メモリな感じがある そして人間のメモリは占有されてる
Devinは人間が見てなくても作業を進めるのだけど Cline的に見ることもできてしまう
何か自分でないプロセッサにタスクを任せていて、それが失敗したり入力待ちでブロックされているとき 通知がないと頻繁に見に行かないといけなくなるが、 通知で自分に割り込みをかけて欲しくないし、 つまりこれは通知がイベントキューに入るべきで、 人間は都合のいいときにキューを見に行って処理をする