2017-10-01から1ヶ月間の記事一覧
遺伝的アルゴリズムを使ったルーティングアルゴリズムにより、接続の偏りが少なくなった。 評価用の点数の付け方も工夫したので、特定のノードに通信が集中しそうになっても経路が分散されるはず。 計算負荷が上がったためか、120ノード前後でタイムアウトが…
WebRTCのやTCPのように、コネクション型の通信経路を使う場合、特定のノードに接続が集中すると、そのノードのリソースが不足したり、負荷が上がってしまう。例えば、macOS sierraではユーザがopenできるディスクリプタの数は256に制限されているため、1ノー…
経緯 本当はパフォーマンス測定ツールを使って、プログラムが想定外に重い処理を行っていないか、確認したかった。 とりあえず、「Analyze」を起動したら、「Potential memory leak」と言われてビクビク検証している。 プログラム 分散処理インフラのpicojso…
ルーティングアルゴリズムの不具合を幾つか修正することで、安定性が向上した。5〜10%の割合でランダムにノードを突然終了させても、全体では崩壊せずに動作し続ける。
何度か動かしているうちに、近隣との接続時の動作が想定と異なる気が。確認のため、10%の割合でランダムにノードをkillするようにしたら、その情報がうまく更新されていない動きをするようだ。chromeのwebrtcライブラリはマルチスレッド動作で、切断イベント…
seed側でパケットを破棄する時間が短すぎたので、修正。400ノード以上繋げられる状態になった。
130〜150ノードあたりで急に接続失敗が増える。seedの不具合っぽい。
複数ノードでPROCESSWARPの安定した動作を実現するために、分散メモリの足回りを抜き出して開発中。 100ノード前後でファイルディスクリプタの上限に達したため、以下のページに従い上限を増やす。 christina04.hatenablog.com なぜかプロセス数の上限が以下…