スタックレス python を使用して複数のタスクレットを実行するプログラムがあります。問題は、高速ですが、同じコードを実行する 1 つ以上のプロセスを開始すると速度が低下することです。
たとえば、プロセス内でスレッドを使用すると、プログラムが完了するまでに 6 秒かかりますが、2 つのプロセスを開始しても、完了するまでに 6 秒しかかかりません。しかし、タスクレットを使用すると、プログラムは完了するまでに 2 秒しかかかりませんが、2 つのプロセスを同時に実行すると 4 秒、3 つのプロセスを実行すると 6 秒かかります。
私の質問は、これはスタックレス python の通常の動作ですか? 別々のプロセスのタスクレットが別々のスケジューラを使用しており、各プロセスが自分のタスクレットしか表示できないことを確認しましたが、すべてのプロセスのすべてのタスクレットがシステム リソースをめぐって争っている可能性があります。スレッドではなくタスクレットを使用すると、追加のプロセスごとに速度が低下する理由について、私が考えることができる唯一の説明です。私のコードに何か問題があるのか 、それともこれが避けられない問題なのかを判断できるように、これを説明してくれる人が必要です。