パフォーマンスのベンチマーク
Tracelet のコア Dart アルゴリズムは、厳格なパフォーマンスしきい値に対して継続的にベンチマークが行われます。これにより、カルマン フィルタリング、ポイント イン ポリゴン ジオフェンシング、バッテリー バジェットなどの機能が非常に軽量であり、バッテリーの消耗を引き起こさないことが保証されます。
以下のインタラクティブなグラフは、最近のコミットからの主要なベンチマーク メトリクスの履歴を自動的に視覚化します。
データは、リポジトリ内で追跡されている BENCHMARK.md ファイルから動的に取得されます。
値が低いほど (μs/op)、パフォーマンスが向上します。
Loading graph...
ベンチマークの説明
| ベンチマーク | 説明 | ホットパス |
|---|---|---|
| 非トランスレート | 単一カルマン フィルター予測 + 更新サイクル | すべての GPS 修正 |
| 非トランスレート | カルマン フィルターによる 100 回の連続 GPS 修正 | 継続的な追跡 |
| 非トランスレート | カルマン フィルターによる 1000 回の連続 GPS 修正 | ロングセッション |
| 非トランスレート | フィルター状態をリセット (Float64List fillRange) | モード変更 |
| 非トランスレート | 単一のハバーサイン距離の計算 | すべての GPS 修正 (3 回以上の通話) |
| 非トランスレート | 1000 回の連続ハバーサイン計算 | バッチ処理 |
| 非トランスレート | ポイントインポリゴン、4 頂点ポリゴン | シンプルなジオフェンス |
| 非トランスレート | ポイントインポリゴン、10 頂点ポリゴン | 中型ポリゴン |
| 非トランスレート | ポイントインポリゴン、50 頂点ポリゴン | 複雑な多角形 |
| 非トランスレート | ポイントインポリゴン、100 頂点ポリゴン | 詳細な境界 |
| 非トランスレート | ポイントインポリゴン、500 頂点ポリゴン | 高精細ポリゴン |
| 非トランスレート | 10 個の円形ジオフェンスを評価する | 小規模な導入 |
| 非トランスレート | 100 個の円形ジオフェンスを評価する | 中規模展開 |
| 非トランスレート | 500 個の円形ジオフェンスを評価する | 大規模な展開 |
| 非トランスレート | 10 個のポリゴン ジオフェンス (それぞれ 6 頂点) を評価します。ポリゴンゾーン | |
| 非トランスレート | 50 個のポリゴン ジオフェンス (それぞれ 6 つの頂点) を評価します。多くのポリゴンゾーン | |
| 非トランスレート | 完全な LocationProcessor パイプライン、1000 件の修正 | コア追跡ループ |
| 非トランスレート | アダプティブ モードを備えた LocationProcessor、1000 修正 | バッテリーを意識した追跡 |
| 非トランスレート | TripManager が 5000 のウェイポイントを蓄積 | 長旅 |
| 非トランスレート | スケジュール文字列を解析する | スケジュールの評価 |
| 非トランスレート | 時間がスケジュールと一致するかどうかを確認する | スケジュールの評価 |
| 非トランスレート | 5 つのスケジュール エントリを確認する | マルチスケジュール |
| 非トランスレート | AdaptiveSamplingEngine の単一計算 | すべての GPS 修正 (適応型) |
| 非トランスレート | プラットフォーム マップから位置を逆シリアル化する | すべての GPS 修正 |
| 非トランスレート | 位置をマップにシリアル化する | 永続化/HTTP |
| 非トランスレート | 完全なシリアル化往復 | 従来のパス |
| 非トランスレート | 新しい座標で場所をコピー (最適化) | カルマン出力 |
| 非トランスレート | 円形ジオフェンスを逆シリアル化する | ジオフェンスの読み込み |
| 非トランスレート | 頂点を含むポリゴン ジオフェンスを逆シリアル化する | ポリゴンのロード |
| 非トランスレート | 10 か所のデルタ エンコード バッチ | HTTP同期 |
| 非トランスレート | 100 個の場所のデルタ エンコード バッチ | HTTP同期 |
| 非トランスレート | 500 個の位置のデルタ エンコード バッチ | 一括同期 |
| 非トランスレート | 10 か所のデルタ デコード バッチ | サーバーの復元 |
| 非トランスレート | 100 個の位置のデルタ デコード バッチ | サーバーの復元 |
| 非トランスレート | 500 個の位置のデルタ デコード バッチ | 一括復元 |
| 非トランスレート | フルエンコード→デコード往復、100箇所 | 正確性のパス |
| 非トランスレート | 単電池サンプル処理 | すべてのバッテリーの読み取り |
| 非トランスレート | 60 サンプル (1 時間のシミュレーション) | 継続的な追跡 |
| 非トランスレート | 強力なドレインを使用した 120 個のサンプル | 最悪の場合の予算 |
| 非トランスレート | 100 回の GPS 修正を含む全旅行 | 旅行の完了 |
| 非トランスレート | 場所ごとの炭素会計 | すべての GPS 修正 |
| 非トランスレート | アクティビティタイプの切り替え | アクティビティの変更 |
| 非トランスレート | 累積レポートの生成 (10 件の旅行) | レポートリクエスト |
| 非トランスレート | 位置保持決定 (全モード) | すべての GPS 修正 |
| 非トランスレート | ジオフェンスの永続化の決定 (すべてのモード) | ジオフェンスイベント |
| 非トランスレート | マップから完全な構成を逆シリアル化する | 構成の復元 |
| 非トランスレート | 完全な構成をマップにシリアル化する | 構成は永続化されます |
| 非トランスレート | フル構成シリアル化ラウンドトリップ | 構成の更新 |
| 非トランスレート | マップから状態を逆シリアル化する | 状態の復元 |
| 非トランスレート | 状態をマップにシリアル化する | 状態が持続する |
| 非トランスレート | RouteContext をシリアル化してマップする | ルートコンテキストのアタッチ |
| 非トランスレート | RouteContext をマップから逆シリアル化する | ルートコンテキストの復元 |
| 非トランスレート | 完全な RouteContext シリアル化往復 | ルートコンテキストの更新 |
| 非トランスレート | 50 の場所で SyncBodyContext をシリアル化する | ボディビルドを同期 |
| 非トランスレート | 50 の場所で SyncBodyContext を逆シリアル化する | 同期本体の復元 |
| 非トランスレート | SSL ピン留めフィールドを使用して HttpConfig をシリアル化する | 構成は永続化されます |
| 非トランスレート | SSL ピン留めフィールドを使用して HttpConfig を逆シリアル化する | 構成の復元 |
| 非トランスレート | 完全な HttpConfig+SSL シリアル化ラウンドトリップ | 構成の更新 |
完全なテスト方法については、Tracelet リポジトリ ルートにある BENCHMARK.md ファイルを参照してください。