From 42d7237491f1bec40eea32168e84b112ccc99a9d Mon Sep 17 00:00:00 2001 From: Mikhail Goncharov Date: Fri, 17 Jul 2020 18:37:29 +0200 Subject: [PATCH] Add step to schedule agent restart on windows --- docs/playbooks.md | 6 +- scripts/buildkite/analyze_jobs.ipynb | 1120 +++++++------------------- 2 files changed, 288 insertions(+), 838 deletions(-) diff --git a/docs/playbooks.md b/docs/playbooks.md index 041cfe3..07d8554 100644 --- a/docs/playbooks.md +++ b/docs/playbooks.md @@ -131,11 +131,15 @@ To spawn a new windows agent: $Env:CONDUIT_TOKEN = "conduit-api-token" ``` Pleas mind the length of the agent name as it will be in path and might cause some tests to fail due to 260 character limit. -1. Run +1. Clone scripts directory and start agent: ```powershell git clone https://github.com/google/llvm-premerge-checks.git C:\llvm-premerge-checks C:\llvm-premerge-checks\scripts\windows_agent_start_buildkite.ps1 [-workdir D:\] [-testing] [-version latest] ``` +1. Add a task to start agent when machine restarts (make sure to pass correct parameters). +``` +schtasks.exe /create /tn "Start Buildkite agent" /ru SYSTEM /SC ONSTART /DELAY 0005:00 /tr "powershell -command 'C:\llvm-premerge-checks\scripts\windows_agent_start_buildkite.ps1'" +``` ### Jenkins 1. Create `c:\credentials` folder with `build-agent-results_key.json` to access cloud storage copy from one of the existing machines. diff --git a/scripts/buildkite/analyze_jobs.ipynb b/scripts/buildkite/analyze_jobs.ipynb index 1cff9ad..4d8b562 100644 --- a/scripts/buildkite/analyze_jobs.ipynb +++ b/scripts/buildkite/analyze_jobs.ipynb @@ -51,7 +51,7 @@ }, { "cell_type": "code", - "execution_count": 79, + "execution_count": 165, "metadata": { "scrolled": true }, @@ -60,7 +60,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "loaded 9926 entries\n" + "loaded 9938 entries\n" ] } ], @@ -73,7 +73,7 @@ }, { "cell_type": "code", - "execution_count": 96, + "execution_count": 170, "metadata": {}, "outputs": [ { @@ -81,344 +81,28 @@ "output_type": "stream", "text": [ "loading page 1\n", - "https://buildkite.com/llvm-project/premerge-checks/builds/4056 is running skipping\n", - "https://buildkite.com/llvm-project/diff-checks/builds/4771 is running skipping\n", - "https://buildkite.com/llvm-project/llvm-master-build/builds/313 is running skipping\n", + "https://buildkite.com/llvm-project/premerge-checks/builds/4227 is running skipping\n", + "https://buildkite.com/llvm-project/diff-checks/builds/4974 is running skipping\n", + "https://buildkite.com/llvm-project/premerge-checks/builds/4226 is running skipping\n", + "https://buildkite.com/llvm-project/diff-checks/builds/4972 is running skipping\n", + "https://buildkite.com/llvm-project/premerge-checks/builds/4225 is running skipping\n", + "https://buildkite.com/llvm-project/diff-checks/builds/4971 is running skipping\n", + "https://buildkite.com/llvm-project/premerge-checks/builds/4224 is running skipping\n", + "https://buildkite.com/llvm-project/diff-checks/builds/4970 is running skipping\n", + "https://buildkite.com/llvm-project/premerge-checks/builds/4223 is running skipping\n", + "https://buildkite.com/llvm-project/premerge-checks/builds/4222 is running skipping\n", + "https://buildkite.com/llvm-project/diff-checks/builds/4969 is running skipping\n", + "https://buildkite.com/llvm-project/diff-checks/builds/4968 is running skipping\n", + "https://buildkite.com/llvm-project/premerge-checks/builds/4221 is running skipping\n", + "https://buildkite.com/llvm-project/diff-checks/builds/4967 is running skipping\n", + "https://buildkite.com/llvm-project/llvm-master-build/builds/320 is running skipping\n", + "https://buildkite.com/llvm-project/premerge-checks/builds/4220 is running skipping\n", + "https://buildkite.com/llvm-project/diff-checks/builds/4963 is running skipping\n", "loading page 2\n", "loading page 3\n", - "loading page 4\n", - "loading page 5\n", - "loading page 6\n", - "loading page 7\n", - "loading page 8\n", - "loading page 9\n", - "loading page 10\n", - "loading page 11\n", - "loading page 12\n", - "loading page 13\n", - "loading page 14\n", - "loading page 15\n", - "loading page 16\n", - "loading page 17\n", - "loading page 18\n", - "loading page 19\n", - "loading page 20\n", - "loading page 21\n", - "loading page 22\n", - "loading page 23\n", - "loading page 24\n", - "loading page 25\n", - "loading page 26\n", - "loading page 27\n", - "loading page 28\n", - "loading page 29\n", - "loading page 30\n", - "loading page 31\n", - "loading page 32\n", - "loading page 33\n", - "loading page 34\n", - "loading page 35\n", - "loading page 36\n", - "loading page 37\n", - "loading page 38\n", - "loading page 39\n", - "loading page 40\n", - "loading page 41\n", - "loading page 42\n", - "loading page 43\n", - "loading page 44\n", - "loading page 45\n", - "loading page 46\n", - "loading page 47\n", - "loading page 48\n", - "loading page 49\n", - "loading page 50\n", - "loading page 51\n", - "loading page 52\n", - "loading page 53\n", - "loading page 54\n", - "loading page 55\n", - "loading page 56\n", - "loading page 57\n", - "loading page 58\n", - "loading page 59\n", - "loading page 60\n", - "loading page 61\n", - "loading page 62\n", - "loading page 63\n", - "loading page 64\n", - "loading page 65\n", - "loading page 66\n", - "loading page 67\n", - "loading page 68\n", - "loading page 69\n", - "loading page 70\n", - "loading page 71\n", - "loading page 72\n", - "loading page 73\n", - "loading page 74\n", - "loading page 75\n", - "loading page 76\n", - "loading page 77\n", - "loading page 78\n", - "loading page 79\n", - "loading page 80\n", - "loading page 81\n", - "loading page 82\n", - "loading page 83\n", - "loading page 84\n", - "loading page 85\n", - "loading page 86\n", - "loading page 87\n", - "loading page 88\n", - "loading page 89\n", - "loading page 90\n", - "loading page 91\n", - "loading page 92\n", - "loading page 93\n", - "loading page 94\n", - "loading page 95\n", - "loading page 96\n", - "loading page 97\n", - "loading page 98\n", - "loading page 99\n", - "loading page 100\n", - "loading page 101\n", - "loading page 102\n", - "loading page 103\n", - "loading page 104\n", - "loading page 105\n", - "loading page 106\n", - "loading page 107\n", - "loading page 108\n", - "loading page 109\n", - "loading page 110\n", - "loading page 111\n", - "loading page 112\n", - "loading page 113\n", - "loading page 114\n", - "loading page 115\n", - "loading page 116\n", - "loading page 117\n", - "loading page 118\n", - "loading page 119\n", - "loading page 120\n", - "loading page 121\n", - "loading page 122\n", - "loading page 123\n", - "loading page 124\n", - "loading page 125\n", - "loading page 126\n", - "loading page 127\n", - "loading page 128\n", - "loading page 129\n", - "loading page 130\n", - "loading page 131\n", - "loading page 132\n", - "loading page 133\n", - "loading page 134\n", - "loading page 135\n", - "loading page 136\n", - "loading page 137\n", - "loading page 138\n", - "loading page 139\n", - "loading page 140\n", - "loading page 141\n", - "loading page 142\n", - "loading page 143\n", - "loading page 144\n", - "loading page 145\n", - "loading page 146\n", - "loading page 147\n", - "loading page 148\n", - "loading page 149\n", - "loading page 150\n", - "loading page 151\n", - "loading page 152\n", - "loading page 153\n", - "loading page 154\n", - "loading page 155\n", - "loading page 156\n", - "loading page 157\n", - "loading page 158\n", - "loading page 159\n", - "loading page 160\n", - "loading page 161\n", - "loading page 162\n", - "loading page 163\n", - "loading page 164\n", - "loading page 165\n", - "loading page 166\n", - "loading page 167\n", - "loading page 168\n", - "loading page 169\n", - "loading page 170\n", - "loading page 171\n", - "loading page 172\n", - "loading page 173\n", - "loading page 174\n", - "loading page 175\n", - "loading page 176\n", - "loading page 177\n", - "loading page 178\n", - "loading page 179\n", - "loading page 180\n", - "loading page 181\n", - "loading page 182\n", - "loading page 183\n", - "loading page 184\n", - "loading page 185\n", - "loading page 186\n", - "loading page 187\n", - "loading page 188\n", - "loading page 189\n", - "loading page 190\n", - "loading page 191\n", - "loading page 192\n", - "loading page 193\n", - "loading page 194\n", - "loading page 195\n", - "loading page 196\n", - "loading page 197\n", - "loading page 198\n", - "loading page 199\n", - "loading page 200\n", - "loading page 201\n", - "loading page 202\n", - "loading page 203\n", - "loading page 204\n", - "loading page 205\n", - "loading page 206\n", - "loading page 207\n", - "loading page 208\n", - "loading page 209\n", - "loading page 210\n", - "loading page 211\n", - "loading page 212\n", - "loading page 213\n", - "loading page 214\n", - "loading page 215\n", - "loading page 216\n", - "loading page 217\n", - "loading page 218\n", - "loading page 219\n", - "loading page 220\n", - "loading page 221\n", - "loading page 222\n", - "loading page 223\n", - "loading page 224\n", - "loading page 225\n", - "loading page 226\n", - "loading page 227\n", - "loading page 228\n", - "loading page 229\n", - "loading page 230\n", - "loading page 231\n", - "loading page 232\n", - "loading page 233\n", - "loading page 234\n", - "loading page 235\n", - "loading page 236\n", - "loading page 237\n", - "loading page 238\n", - "loading page 239\n", - "loading page 240\n", - "loading page 241\n", - "loading page 242\n", - "loading page 243\n", - "loading page 244\n", - "loading page 245\n", - "loading page 246\n", - "loading page 247\n", - "loading page 248\n", - "loading page 249\n", - "loading page 250\n", - "loading page 251\n", - "loading page 252\n", - "loading page 253\n", - "loading page 254\n", - "loading page 255\n", - "loading page 256\n", - "loading page 257\n", - "loading page 258\n", - "loading page 259\n", - "loading page 260\n", - "loading page 261\n", - "loading page 262\n", - "loading page 263\n", - "loading page 264\n", - "loading page 265\n", - "loading page 266\n", - "loading page 267\n", - "loading page 268\n", - "loading page 269\n", - "loading page 270\n", - "loading page 271\n", - "loading page 272\n", - "loading page 273\n", - "loading page 274\n", - "loading page 275\n", - "loading page 276\n", - "loading page 277\n", - "loading page 278\n", - "loading page 279\n", - "loading page 280\n", - "loading page 281\n", - "loading page 282\n", - "loading page 283\n", - "loading page 284\n", - "loading page 285\n", - "loading page 286\n", - "loading page 287\n", - "loading page 288\n", - "loading page 289\n", - "loading page 290\n", - "loading page 291\n", - "loading page 292\n", - "loading page 293\n", - "loading page 294\n", - "loading page 295\n", - "loading page 296\n", - "loading page 297\n", - "loading page 298\n", - "loading page 299\n", - "loading page 300\n", - "loading page 301\n", - "loading page 302\n", - "loading page 303\n", - "loading page 304\n", - "loading page 305\n", - "loading page 306\n", - "loading page 307\n", - "loading page 308\n", - "loading page 309\n", - "loading page 310\n", - "loading page 311\n", - "loading page 312\n", - "loading page 313\n", - "loading page 314\n", - "loading page 315\n", - "loading page 316\n", - "loading page 317\n", - "loading page 318\n", - "loading page 319\n", - "loading page 320\n", - "loading page 321\n", - "loading page 322\n", - "loading page 323\n", - "loading page 324\n", - "loading page 325\n", - "loading page 326\n", - "loading page 327\n", - "loading page 328\n", - "loading page 329\n", - "loading page 330\n", - "loading page 331\n", - "loading page 332\n", - "loading page 333\n", - "empty response\n", - "9938 jobs in total\n", - "saved 9938 entries\n" + "found existing job fd1b3754-6375-4d58-8c83-8a66b0c5b5fa\n", + "10294 jobs in total\n", + "saved 10294 entries\n" ] } ], @@ -430,8 +114,8 @@ " existing.add(j['id'])\n", "\n", " # uncomment to reset\n", - " builds = []\n", - " existing = set()\n", + "# builds = []\n", + "# existing = set()\n", " page = 1\n", " stop = False\n", " while not stop:\n", @@ -465,269 +149,7 @@ }, { "cell_type": "code", - "execution_count": 92, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'id': 'a2711b08-9b6a-42d5-b4b6-6c59c1552de5',\n", - " 'url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939',\n", - " 'web_url': 'https://buildkite.com/llvm-project/premerge-checks/builds/939',\n", - " 'number': 939,\n", - " 'state': 'passed',\n", - " 'blocked': False,\n", - " 'message': ':rocket: build and test',\n", - " 'commit': 'ea6b09b8619acacb33fcd203f221478008ecaf3a',\n", - " 'branch': 'phab-diff-271774',\n", - " 'tag': None,\n", - " 'env': {'ph_build_id': '73722',\n", - " 'ph_target_phid': 'PHID-HMBT-4acp7qthh3xglytj6u5m',\n", - " 'scripts_branch': 'master',\n", - " 'ph_buildable_diff': '271774',\n", - " 'ph_initiator_phid': 'PHID-HRUL-pvs6c7dbp4vlzqcixysi',\n", - " 'ph_scripts_branch': 'master',\n", - " 'ph_buildable_revision': '82048'},\n", - " 'source': 'trigger_job',\n", - " 'creator': {'id': '2dd32c51-ad7e-4624-a8a0-4131b3677b92',\n", - " 'name': 'premerge bot',\n", - " 'email': 'llvm.premerge.tests@gmail.com',\n", - " 'avatar_url': 'https://www.gravatar.com/avatar/43ac7ccfca24b7e2132c9afa165a9f30',\n", - " 'created_at': '2020-05-14T10:32:08.557Z'},\n", - " 'created_at': '2020-06-18T17:55:24.440Z',\n", - " 'scheduled_at': '2020-06-18T17:55:24.422Z',\n", - " 'started_at': '2020-06-18T17:55:39.000Z',\n", - " 'finished_at': '2020-06-18T18:13:04.000Z',\n", - " 'meta_data': {'buildkite:git:commit': 'commit ea6b09b8619acacb33fcd203f221478008ecaf3a\\nAuthor: myusername \\nAuthorDate: Thu Jun 18 17:55:19 2020 +0000\\nCommit: myusername \\nCommitDate: Thu Jun 18 17:55:19 2020 +0000\\n\\n applying Diff 271774'},\n", - " 'pull_request': None,\n", - " 'rebuilt_from': None,\n", - " 'pipeline': {'id': 'f8ab115f-a384-49e8-a048-0f71ab03c5d0',\n", - " 'url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks',\n", - " 'web_url': 'https://buildkite.com/llvm-project/premerge-checks',\n", - " 'name': 'premerge checks',\n", - " 'description': 'builds branch from https://github.com/llvm-premerge-tests/llvm-project',\n", - " 'slug': 'premerge-checks',\n", - " 'repository': 'https://github.com/llvm-premerge-tests/llvm-project.git',\n", - " 'cluster_id': None,\n", - " 'branch_configuration': None,\n", - " 'default_branch': None,\n", - " 'skip_queued_branch_builds': False,\n", - " 'skip_queued_branch_builds_filter': None,\n", - " 'cancel_running_branch_builds': False,\n", - " 'cancel_running_branch_builds_filter': None,\n", - " 'provider': {'id': 'github',\n", - " 'settings': {'trigger_mode': 'none',\n", - " 'build_pull_requests': True,\n", - " 'pull_request_branch_filter_enabled': False,\n", - " 'skip_builds_for_existing_commits': False,\n", - " 'skip_pull_request_builds_for_existing_commits': True,\n", - " 'build_pull_request_forks': False,\n", - " 'build_pull_request_ready_for_review': False,\n", - " 'prefix_pull_request_fork_branch_names': True,\n", - " 'build_tags': False,\n", - " 'publish_commit_status': False,\n", - " 'publish_commit_status_per_step': False,\n", - " 'separate_pull_request_statuses': False,\n", - " 'publish_blocked_as_pending': False,\n", - " 'filter_enabled': False,\n", - " 'repository': 'llvm-premerge-tests/llvm-project',\n", - " 'commit_status_error': '404'},\n", - " 'webhook_url': 'https://webhook.buildkite.com/deliver/1da5c96d5d0d13c86f088b9003508dcc1152caa6a0943ecb8e'},\n", - " 'builds_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds',\n", - " 'badge_url': 'https://badge.buildkite.com/e1c6f1032968e2137789f152d46d803db28599ea05bb0f2cb7.svg',\n", - " 'created_at': '2020-05-13T13:28:54.906Z',\n", - " 'env': {'PHABRICATOR_HOST': 'https://reviews.llvm.org',\n", - " 'scripts_branch': 'master'},\n", - " 'scheduled_builds_count': 0,\n", - " 'running_builds_count': 3,\n", - " 'scheduled_jobs_count': 0,\n", - " 'running_jobs_count': 5,\n", - " 'waiting_jobs_count': 3,\n", - " 'visibility': 'public',\n", - " 'steps': [{'type': 'script',\n", - " 'name': ':seedling: setup',\n", - " 'command': 'export SRC=${BUILDKITE_BUILD_PATH}/llvm-premerge-checks\\r\\nrm -rf ${SRC}\\r\\ngit clone --depth 1 --branch ${scripts_branch:-master} https://github.com/google/llvm-premerge-checks.git ${SRC}\\r\\nexport SCRIPT_DIR=${SRC}/scripts\\r\\n${SCRIPT_DIR}/buildkite/build_branch_pipeline.py | tee /dev/tty | buildkite-agent pipeline upload',\n", - " 'artifact_paths': '',\n", - " 'branch_configuration': '',\n", - " 'env': {},\n", - " 'timeout_in_minutes': None,\n", - " 'agent_query_rules': ['queue=linux'],\n", - " 'concurrency': None,\n", - " 'parallelism': None}]},\n", - " 'jobs': [{'id': '0b167b1c-8fcd-4454-a81e-bc31f008c17c',\n", - " 'type': 'script',\n", - " 'name': ':seedling: setup',\n", - " 'step_key': None,\n", - " 'agent_query_rules': ['queue=linux'],\n", - " 'state': 'passed',\n", - " 'build_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939',\n", - " 'web_url': 'https://buildkite.com/llvm-project/premerge-checks/builds/939#0b167b1c-8fcd-4454-a81e-bc31f008c17c',\n", - " 'log_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/0b167b1c-8fcd-4454-a81e-bc31f008c17c/log',\n", - " 'raw_log_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/0b167b1c-8fcd-4454-a81e-bc31f008c17c/log.txt',\n", - " 'artifacts_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/0b167b1c-8fcd-4454-a81e-bc31f008c17c/artifacts',\n", - " 'command': 'export SRC=${BUILDKITE_BUILD_PATH}/llvm-premerge-checks\\nrm -rf ${SRC}\\ngit clone --depth 1 --branch ${scripts_branch} https://github.com/google/llvm-premerge-checks.git ${SRC}\\nexport SCRIPT_DIR=${SRC}/scripts\\n${SCRIPT_DIR}/buildkite/build_branch_pipeline.py | tee /dev/tty | buildkite-agent pipeline upload',\n", - " 'soft_failed': False,\n", - " 'exit_status': 0,\n", - " 'artifact_paths': '',\n", - " 'agent': {'id': 'ea83f219-5446-4baa-ae1d-3a6fb4560d8c',\n", - " 'url': 'https://api.buildkite.com/v2/organizations/llvm-project/agents/ea83f219-5446-4baa-ae1d-3a6fb4560d8c',\n", - " 'web_url': 'https://buildkite.com/organizations/llvm-project/agents/ea83f219-5446-4baa-ae1d-3a6fb4560d8c',\n", - " 'name': 'premerge-debian-79cddc6ddb-tctnh-1',\n", - " 'connection_state': 'lost',\n", - " 'ip_address': '35.222.74.159',\n", - " 'hostname': 'premerge-debian-79cddc6ddb-tctnh',\n", - " 'user_agent': 'buildkite-agent/3.22.1.x (linux; amd64)',\n", - " 'version': '3.22.1',\n", - " 'creator': None,\n", - " 'created_at': '2020-06-18T14:16:59.263Z',\n", - " 'job': None,\n", - " 'last_job_finished_at': '2020-06-18T20:08:44.000Z',\n", - " 'priority': 0,\n", - " 'meta_data': ['queue=linux']},\n", - " 'created_at': '2020-06-18T17:55:24.446Z',\n", - " 'scheduled_at': '2020-06-18T17:55:24.446Z',\n", - " 'runnable_at': '2020-06-18T17:55:24.000Z',\n", - " 'started_at': '2020-06-18T17:55:39.693Z',\n", - " 'finished_at': '2020-06-18T17:55:44.016Z',\n", - " 'retried': False,\n", - " 'retried_in_job_id': None,\n", - " 'retries_count': None,\n", - " 'parallel_group_index': None,\n", - " 'parallel_group_total': None},\n", - " {'id': '83b8e803-3b7d-4b66-a269-d594838617db',\n", - " 'type': 'script',\n", - " 'name': ':linux: build and test linux',\n", - " 'step_key': 'linux',\n", - " 'agent_query_rules': ['queue=linux'],\n", - " 'state': 'passed',\n", - " 'build_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939',\n", - " 'web_url': 'https://buildkite.com/llvm-project/premerge-checks/builds/939#83b8e803-3b7d-4b66-a269-d594838617db',\n", - " 'log_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/83b8e803-3b7d-4b66-a269-d594838617db/log',\n", - " 'raw_log_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/83b8e803-3b7d-4b66-a269-d594838617db/log.txt',\n", - " 'artifacts_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/83b8e803-3b7d-4b66-a269-d594838617db/artifacts',\n", - " 'command': 'mkdir -p artifacts\\ndpkg -l >> artifacts/packages.txt\\nexport SRC=/mnt/disks/ssd0/agent/llvm-premerge-checks\\nrm -rf /mnt/disks/ssd0/agent/llvm-premerge-checks\\ngit clone --depth 1 --branch master https://github.com/google/llvm-premerge-checks.git /mnt/disks/ssd0/agent/llvm-premerge-checks\\n/mnt/disks/ssd0/agent/llvm-premerge-checks/scripts/phabtalk/add_url_artifact.py --phid=\"PHID-HMBT-4acp7qthh3xglytj6u5m\" --url=\"https://buildkite.com/llvm-project/premerge-checks/builds/939\" --name=\"Buildkite build\"\\n/mnt/disks/ssd0/agent/llvm-premerge-checks/scripts/premerge_checks.py --check-clang-format --check-clang-tidy',\n", - " 'soft_failed': False,\n", - " 'exit_status': 0,\n", - " 'artifact_paths': 'artifacts/**/*;*_result.json',\n", - " 'agent': {'id': 'ea83f219-5446-4baa-ae1d-3a6fb4560d8c',\n", - " 'url': 'https://api.buildkite.com/v2/organizations/llvm-project/agents/ea83f219-5446-4baa-ae1d-3a6fb4560d8c',\n", - " 'web_url': 'https://buildkite.com/organizations/llvm-project/agents/ea83f219-5446-4baa-ae1d-3a6fb4560d8c',\n", - " 'name': 'premerge-debian-79cddc6ddb-tctnh-1',\n", - " 'connection_state': 'lost',\n", - " 'ip_address': '35.222.74.159',\n", - " 'hostname': 'premerge-debian-79cddc6ddb-tctnh',\n", - " 'user_agent': 'buildkite-agent/3.22.1.x (linux; amd64)',\n", - " 'version': '3.22.1',\n", - " 'creator': None,\n", - " 'created_at': '2020-06-18T14:16:59.263Z',\n", - " 'job': None,\n", - " 'last_job_finished_at': '2020-06-18T20:08:44.000Z',\n", - " 'priority': 0,\n", - " 'meta_data': ['queue=linux']},\n", - " 'created_at': '2020-06-18T17:55:43.698Z',\n", - " 'scheduled_at': '2020-06-18T17:55:24.446Z',\n", - " 'runnable_at': '2020-06-18T17:55:44.000Z',\n", - " 'started_at': '2020-06-18T17:55:49.798Z',\n", - " 'finished_at': '2020-06-18T17:59:35.715Z',\n", - " 'retried': False,\n", - " 'retried_in_job_id': None,\n", - " 'retries_count': None,\n", - " 'parallel_group_index': None,\n", - " 'parallel_group_total': None},\n", - " {'id': 'b614bdd2-e73b-4365-94ec-d5f63f3bda47',\n", - " 'type': 'script',\n", - " 'name': ':windows: build and test windows',\n", - " 'step_key': 'windows',\n", - " 'agent_query_rules': ['queue=windows'],\n", - " 'state': 'passed',\n", - " 'build_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939',\n", - " 'web_url': 'https://buildkite.com/llvm-project/premerge-checks/builds/939#b614bdd2-e73b-4365-94ec-d5f63f3bda47',\n", - " 'log_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/b614bdd2-e73b-4365-94ec-d5f63f3bda47/log',\n", - " 'raw_log_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/b614bdd2-e73b-4365-94ec-d5f63f3bda47/log.txt',\n", - " 'artifacts_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/b614bdd2-e73b-4365-94ec-d5f63f3bda47/artifacts',\n", - " 'command': 'sccache --zero-stats\\nset SRC=%BUILDKITE_BUILD_PATH%/llvm-premerge-checks\\nrm -rf %SRC%\\ngit clone --depth 1 --branch %scripts_branch% https://github.com/google/llvm-premerge-checks.git %SRC%\\npowershell -command \"%SRC%/scripts/premerge_checks.py; $exit=$?;sccache --show-stats;if ($exit) { echo \"success\"; exit 0; } else { echo \"failure\"; exit 1;}',\n", - " 'soft_failed': False,\n", - " 'exit_status': 0,\n", - " 'artifact_paths': 'artifacts/**/*;*_result.json',\n", - " 'agent': {'id': '283e8832-4e87-49c6-93ce-5d7d7e521344',\n", - " 'url': 'https://api.buildkite.com/v2/organizations/llvm-project/agents/283e8832-4e87-49c6-93ce-5d7d7e521344',\n", - " 'web_url': 'https://buildkite.com/organizations/llvm-project/agents/283e8832-4e87-49c6-93ce-5d7d7e521344',\n", - " 'name': 'w5',\n", - " 'connection_state': 'stopped',\n", - " 'ip_address': '104.198.242.71',\n", - " 'hostname': 'a38dd42bb01e',\n", - " 'user_agent': 'buildkite-agent/3.22.0.x (windows; amd64)',\n", - " 'version': '3.22.0',\n", - " 'creator': None,\n", - " 'created_at': '2020-06-17T07:40:25.447Z',\n", - " 'job': None,\n", - " 'last_job_finished_at': '2020-07-08T12:05:08.000Z',\n", - " 'priority': 0,\n", - " 'meta_data': ['queue=windows']},\n", - " 'created_at': '2020-06-18T17:55:43.698Z',\n", - " 'scheduled_at': '2020-06-18T17:55:24.446Z',\n", - " 'runnable_at': '2020-06-18T17:55:44.000Z',\n", - " 'started_at': '2020-06-18T17:55:47.785Z',\n", - " 'finished_at': '2020-06-18T18:12:57.015Z',\n", - " 'retried': False,\n", - " 'retried_in_job_id': None,\n", - " 'retries_count': None,\n", - " 'parallel_group_index': None,\n", - " 'parallel_group_total': None},\n", - " {'id': 'e29e615e-76a0-4ad3-912d-ef18b1cfd5f8',\n", - " 'type': 'script',\n", - " 'name': ':spiral_note_pad: report',\n", - " 'step_key': None,\n", - " 'agent_query_rules': ['queue=linux'],\n", - " 'state': 'passed',\n", - " 'build_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939',\n", - " 'web_url': 'https://buildkite.com/llvm-project/premerge-checks/builds/939#e29e615e-76a0-4ad3-912d-ef18b1cfd5f8',\n", - " 'log_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/e29e615e-76a0-4ad3-912d-ef18b1cfd5f8/log',\n", - " 'raw_log_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/e29e615e-76a0-4ad3-912d-ef18b1cfd5f8/log.txt',\n", - " 'artifacts_url': 'https://api.buildkite.com/v2/organizations/llvm-project/pipelines/premerge-checks/builds/939/jobs/e29e615e-76a0-4ad3-912d-ef18b1cfd5f8/artifacts',\n", - " 'command': 'mkdir -p artifacts\\nbuildkite-agent artifact download \"*_result.json\" .\\nexport SRC=/mnt/disks/ssd0/agent/llvm-premerge-checks\\nrm -rf /mnt/disks/ssd0/agent/llvm-premerge-checks\\ngit clone --depth 1 --branch master https://github.com/google/llvm-premerge-checks.git /mnt/disks/ssd0/agent/llvm-premerge-checks\\n/mnt/disks/ssd0/agent/llvm-premerge-checks/scripts/buildkite/summary.py',\n", - " 'soft_failed': False,\n", - " 'exit_status': 0,\n", - " 'artifact_paths': 'artifacts/**/*',\n", - " 'agent': {'id': '14036082-a941-423b-945d-6442e9af3dde',\n", - " 'url': 'https://api.buildkite.com/v2/organizations/llvm-project/agents/14036082-a941-423b-945d-6442e9af3dde',\n", - " 'web_url': 'https://buildkite.com/organizations/llvm-project/agents/14036082-a941-423b-945d-6442e9af3dde',\n", - " 'name': 'premerge-debian-79cddc6ddb-snd9j-1',\n", - " 'connection_state': 'lost',\n", - " 'ip_address': '104.154.164.190',\n", - " 'hostname': 'premerge-debian-79cddc6ddb-snd9j',\n", - " 'user_agent': 'buildkite-agent/3.22.1.x (linux; amd64)',\n", - " 'version': '3.22.1',\n", - " 'creator': None,\n", - " 'created_at': '2020-06-18T14:19:09.078Z',\n", - " 'job': None,\n", - " 'last_job_finished_at': '2020-06-18T18:38:42.000Z',\n", - " 'priority': 0,\n", - " 'meta_data': ['queue=linux']},\n", - " 'created_at': '2020-06-18T17:55:43.698Z',\n", - " 'scheduled_at': '2020-06-18T17:55:24.446Z',\n", - " 'runnable_at': '2020-06-18T18:12:57.000Z',\n", - " 'started_at': '2020-06-18T18:12:59.559Z',\n", - " 'finished_at': '2020-06-18T18:13:03.893Z',\n", - " 'retried': False,\n", - " 'retried_in_job_id': None,\n", - " 'retries_count': None,\n", - " 'parallel_group_index': None,\n", - " 'parallel_group_total': None}]}" - ] - }, - "execution_count": 92, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "builds[7007]" - ] - }, - { - "cell_type": "code", - "execution_count": 107, + "execution_count": 171, "metadata": {}, "outputs": [], "source": [ @@ -1094,7 +516,7 @@ }, { "cell_type": "code", - "execution_count": 142, + "execution_count": 172, "metadata": {}, "outputs": [ { @@ -1107,12 +529,12 @@ } ], "source": [ - "ds = jobs[jobs['pipeline'] == 'llvm-master-build'][jobs['step_key'] == 'windows'][jobs['state']=='passed'][~jobs['agent_name'].str.startswith('buildkite-')]" + "ds = jobs[jobs['pipeline'] == 'premerge-checks'][jobs['step_key'] == 'windows'][jobs['state']=='passed'][~jobs['agent_name'].str.startswith('buildkite-')]" ] }, { "cell_type": "code", - "execution_count": 146, + "execution_count": 151, "metadata": {}, "outputs": [ { @@ -1152,79 +574,79 @@ " \n", " \n", " \n", - " 181\n", - " llvm-master-build\n", + " 2\n", + " premerge-checks\n", " :windows: build and test windows\n", " windows\n", " passed\n", " 0\n", - " 5c0f2d87-607b-4ae7-a44c-7a382a0e7705\n", - " w1\n", - " 2020-07-16 08:01:15\n", - " 2020-07-16 08:11:48.930\n", - " 633.930\n", - " 2020-07-16 08:50:32.852\n", - " 2323.922\n", + " f4f2789e-50aa-4dfb-88e9-267df8227508\n", + " w64\n", + " 2020-07-16 12:50:25\n", + " 2020-07-16 12:50:29.645\n", + " 4.645\n", + " 2020-07-16 13:04:03.301\n", + " 813.656\n", " \n", " \n", - " 267\n", - " llvm-master-build\n", + " 9\n", + " premerge-checks\n", " :windows: build and test windows\n", " windows\n", " passed\n", " 0\n", - " 5c0f2d87-607b-4ae7-a44c-7a382a0e7705\n", - " w1\n", - " 2020-07-16 04:01:16\n", - " 2020-07-16 06:50:58.490\n", - " 10182.490\n", - " 2020-07-16 08:11:43.778\n", - " 4845.288\n", + " 1ee7462f-3202-4272-a755-7e2850e59af4\n", + " w3\n", + " 2020-07-16 12:41:56\n", + " 2020-07-16 12:42:00.171\n", + " 4.171\n", + " 2020-07-16 12:57:31.825\n", + " 931.654\n", " \n", " \n", - " 440\n", - " llvm-master-build\n", + " 16\n", + " premerge-checks\n", " :windows: build and test windows\n", " windows\n", " passed\n", " 0\n", - " e503ea2c-8fff-40d9-bc64-299869ccccff\n", + " cae1cf3a-a836-4ae3-93ff-448f5c58a7a9\n", " w-no-ssd\n", - " 2020-07-16 00:01:46\n", - " 2020-07-16 00:01:51.426\n", - " 5.426\n", - " 2020-07-16 01:22:54.629\n", - " 4863.203\n", + " 2020-07-16 12:39:04\n", + " 2020-07-16 12:39:05.859\n", + " 1.859\n", + " 2020-07-16 12:56:56.294\n", + " 1070.435\n", " \n", " \n", - " 625\n", - " llvm-master-build\n", + " 23\n", + " premerge-checks\n", " :windows: build and test windows\n", " windows\n", " passed\n", " 0\n", - " 17eda84a-51c1-44f1-950f-a1304ac55456\n", - " w1\n", - " 2020-07-15 20:02:07\n", - " 2020-07-15 20:02:09.353\n", - " 2.353\n", - " 2020-07-15 21:00:32.799\n", - " 3503.446\n", + " c1698c80-18e9-420f-a61c-37843b65313f\n", + " w2\n", + " 2020-07-16 12:21:57\n", + " 2020-07-16 12:22:02.335\n", + " 5.335\n", + " 2020-07-16 12:55:54.695\n", + " 2032.360\n", " \n", " \n", - " 863\n", - " llvm-master-build\n", + " 30\n", + " premerge-checks\n", " :windows: build and test windows\n", " windows\n", " passed\n", " 0\n", - " a2f3c85b-378e-4223-858a-ce7a494ff640\n", - " w5\n", - " 2020-07-15 16:01:03\n", - " 2020-07-15 16:01:12.283\n", - " 9.283\n", - " 2020-07-15 16:55:52.946\n", - " 3280.663\n", + " cae1cf3a-a836-4ae3-93ff-448f5c58a7a9\n", + " w-no-ssd\n", + " 2020-07-16 12:15:46\n", + " 2020-07-16 12:15:55.777\n", + " 9.777\n", + " 2020-07-16 12:33:55.839\n", + " 1080.062\n", " \n", " \n", " ...\n", @@ -1242,142 +664,142 @@ " ...\n", " \n", " \n", - " 25093\n", - " llvm-master-build\n", + " 25194\n", + " premerge-checks\n", + " :windows: build and test windows\n", + " windows\n", + " passed\n", + " 0\n", + " d7a4e418-c12e-4a55-ad5c-3803f03f0782\n", + " w1\n", + " 2020-06-17 10:13:40\n", + " 2020-06-17 10:13:45.308\n", + " 5.308\n", + " 2020-06-17 10:41:51.716\n", + " 1686.408\n", + " \n", + " \n", + " 25223\n", + " premerge-checks\n", + " :windows: build and test windows\n", + " windows\n", + " passed\n", + " 0\n", + " d7a4e418-c12e-4a55-ad5c-3803f03f0782\n", + " w1\n", + " 2020-06-17 08:35:44\n", + " 2020-06-17 08:35:54.793\n", + " 10.793\n", + " 2020-06-17 09:58:01.633\n", + " 4926.840\n", + " \n", + " \n", + " 25234\n", + " premerge-checks\n", + " :windows: build and test windows\n", + " windows\n", + " passed\n", + " 0\n", + " bd675275-3c9b-47ce-8fc3-73d6c3f8d089\n", + " w2\n", + " 2020-06-17 08:07:44\n", + " 2020-06-17 08:16:26.374\n", + " 522.374\n", + " 2020-06-17 08:56:29.420\n", + " 2403.046\n", + " \n", + " \n", + " 25238\n", + " premerge-checks\n", " :windows: build and test windows\n", " windows\n", " passed\n", " 0\n", " 283e8832-4e87-49c6-93ce-5d7d7e521344\n", " w5\n", - " 2020-06-17 12:01:24\n", - " 2020-06-17 12:01:27.363\n", - " 3.363\n", - " 2020-06-17 13:29:18.491\n", - " 5271.128\n", + " 2020-06-17 08:04:01\n", + " 2020-06-17 08:04:05.998\n", + " 4.998\n", + " 2020-06-17 09:29:55.553\n", + " 5149.555\n", " \n", " \n", - " 25258\n", - " llvm-master-build\n", + " 25242\n", + " premerge-checks\n", " :windows: build and test windows\n", " windows\n", " passed\n", " 0\n", - " 142ddc24-79ae-4f89-b5b3-30ce39c62fb0\n", - " w6\n", - " 2020-06-17 08:02:07\n", - " 2020-06-17 08:02:11.264\n", - " 4.264\n", - " 2020-06-17 09:24:04.261\n", - " 4912.997\n", - " \n", - " \n", - " 28534\n", - " llvm-master-build\n", - " :windows: build and test windows\n", - " windows\n", - " passed\n", - " 0\n", - " 62e608ec-76e4-430d-8f7d-be2d9b2ca729\n", - " windows-dev\n", - " 2020-06-06 04:01:47\n", - " 2020-06-06 04:01:52.303\n", - " 5.303\n", - " 2020-06-06 05:14:32.464\n", - " 4360.161\n", - " \n", - " \n", - " 28659\n", - " llvm-master-build\n", - " :windows: build and test windows\n", - " windows\n", - " passed\n", - " 0\n", - " 62e608ec-76e4-430d-8f7d-be2d9b2ca729\n", - " windows-dev\n", - " 2020-06-05 20:01:37\n", - " 2020-06-05 20:01:40.598\n", - " 3.598\n", - " 2020-06-05 20:54:39.448\n", - " 3178.850\n", - " \n", - " \n", - " 28736\n", - " llvm-master-build\n", - " :windows: build and test windows\n", - " windows\n", - " passed\n", - " 0\n", - " 62e608ec-76e4-430d-8f7d-be2d9b2ca729\n", - " windows-dev\n", - " 2020-06-05 16:01:10\n", - " 2020-06-05 16:01:14.700\n", - " 4.700\n", - " 2020-06-05 17:13:38.058\n", - " 4343.358\n", + " af60fa17-98d6-4cfe-8b93-f9f5d9572069\n", + " w7\n", + " 2020-06-17 08:04:02\n", + " 2020-06-17 08:07:10.312\n", + " 188.312\n", + " 2020-06-17 08:50:11.249\n", + " 2580.937\n", " \n", " \n", "\n", - "

136 rows × 12 columns

\n", + "

2560 rows × 12 columns

\n", "" ], "text/plain": [ - " pipeline name step_key state \\\n", - "181 llvm-master-build :windows: build and test windows windows passed \n", - "267 llvm-master-build :windows: build and test windows windows passed \n", - "440 llvm-master-build :windows: build and test windows windows passed \n", - "625 llvm-master-build :windows: build and test windows windows passed \n", - "863 llvm-master-build :windows: build and test windows windows passed \n", - "... ... ... ... ... \n", - "25093 llvm-master-build :windows: build and test windows windows passed \n", - "25258 llvm-master-build :windows: build and test windows windows passed \n", - "28534 llvm-master-build :windows: build and test windows windows passed \n", - "28659 llvm-master-build :windows: build and test windows windows passed \n", - "28736 llvm-master-build :windows: build and test windows windows passed \n", + " pipeline name step_key state \\\n", + "2 premerge-checks :windows: build and test windows windows passed \n", + "9 premerge-checks :windows: build and test windows windows passed \n", + "16 premerge-checks :windows: build and test windows windows passed \n", + "23 premerge-checks :windows: build and test windows windows passed \n", + "30 premerge-checks :windows: build and test windows windows passed \n", + "... ... ... ... ... \n", + "25194 premerge-checks :windows: build and test windows windows passed \n", + "25223 premerge-checks :windows: build and test windows windows passed \n", + "25234 premerge-checks :windows: build and test windows windows passed \n", + "25238 premerge-checks :windows: build and test windows windows passed \n", + "25242 premerge-checks :windows: build and test windows windows passed \n", "\n", - " exit_status agent_id agent_name \\\n", - "181 0 5c0f2d87-607b-4ae7-a44c-7a382a0e7705 w1 \n", - "267 0 5c0f2d87-607b-4ae7-a44c-7a382a0e7705 w1 \n", - "440 0 e503ea2c-8fff-40d9-bc64-299869ccccff w-no-ssd \n", - "625 0 17eda84a-51c1-44f1-950f-a1304ac55456 w1 \n", - "863 0 a2f3c85b-378e-4223-858a-ce7a494ff640 w5 \n", - "... ... ... ... \n", - "25093 0 283e8832-4e87-49c6-93ce-5d7d7e521344 w5 \n", - "25258 0 142ddc24-79ae-4f89-b5b3-30ce39c62fb0 w6 \n", - "28534 0 62e608ec-76e4-430d-8f7d-be2d9b2ca729 windows-dev \n", - "28659 0 62e608ec-76e4-430d-8f7d-be2d9b2ca729 windows-dev \n", - "28736 0 62e608ec-76e4-430d-8f7d-be2d9b2ca729 windows-dev \n", + " exit_status agent_id agent_name \\\n", + "2 0 f4f2789e-50aa-4dfb-88e9-267df8227508 w64 \n", + "9 0 1ee7462f-3202-4272-a755-7e2850e59af4 w3 \n", + "16 0 cae1cf3a-a836-4ae3-93ff-448f5c58a7a9 w-no-ssd \n", + "23 0 c1698c80-18e9-420f-a61c-37843b65313f w2 \n", + "30 0 cae1cf3a-a836-4ae3-93ff-448f5c58a7a9 w-no-ssd \n", + "... ... ... ... \n", + "25194 0 d7a4e418-c12e-4a55-ad5c-3803f03f0782 w1 \n", + "25223 0 d7a4e418-c12e-4a55-ad5c-3803f03f0782 w1 \n", + "25234 0 bd675275-3c9b-47ce-8fc3-73d6c3f8d089 w2 \n", + "25238 0 283e8832-4e87-49c6-93ce-5d7d7e521344 w5 \n", + "25242 0 af60fa17-98d6-4cfe-8b93-f9f5d9572069 w7 \n", "\n", " runnable_at started_at wait_duration \\\n", - "181 2020-07-16 08:01:15 2020-07-16 08:11:48.930 633.930 \n", - "267 2020-07-16 04:01:16 2020-07-16 06:50:58.490 10182.490 \n", - "440 2020-07-16 00:01:46 2020-07-16 00:01:51.426 5.426 \n", - "625 2020-07-15 20:02:07 2020-07-15 20:02:09.353 2.353 \n", - "863 2020-07-15 16:01:03 2020-07-15 16:01:12.283 9.283 \n", + "2 2020-07-16 12:50:25 2020-07-16 12:50:29.645 4.645 \n", + "9 2020-07-16 12:41:56 2020-07-16 12:42:00.171 4.171 \n", + "16 2020-07-16 12:39:04 2020-07-16 12:39:05.859 1.859 \n", + "23 2020-07-16 12:21:57 2020-07-16 12:22:02.335 5.335 \n", + "30 2020-07-16 12:15:46 2020-07-16 12:15:55.777 9.777 \n", "... ... ... ... \n", - "25093 2020-06-17 12:01:24 2020-06-17 12:01:27.363 3.363 \n", - "25258 2020-06-17 08:02:07 2020-06-17 08:02:11.264 4.264 \n", - "28534 2020-06-06 04:01:47 2020-06-06 04:01:52.303 5.303 \n", - "28659 2020-06-05 20:01:37 2020-06-05 20:01:40.598 3.598 \n", - "28736 2020-06-05 16:01:10 2020-06-05 16:01:14.700 4.700 \n", + "25194 2020-06-17 10:13:40 2020-06-17 10:13:45.308 5.308 \n", + "25223 2020-06-17 08:35:44 2020-06-17 08:35:54.793 10.793 \n", + "25234 2020-06-17 08:07:44 2020-06-17 08:16:26.374 522.374 \n", + "25238 2020-06-17 08:04:01 2020-06-17 08:04:05.998 4.998 \n", + "25242 2020-06-17 08:04:02 2020-06-17 08:07:10.312 188.312 \n", "\n", " finished_at run_duration \n", - "181 2020-07-16 08:50:32.852 2323.922 \n", - "267 2020-07-16 08:11:43.778 4845.288 \n", - "440 2020-07-16 01:22:54.629 4863.203 \n", - "625 2020-07-15 21:00:32.799 3503.446 \n", - "863 2020-07-15 16:55:52.946 3280.663 \n", + "2 2020-07-16 13:04:03.301 813.656 \n", + "9 2020-07-16 12:57:31.825 931.654 \n", + "16 2020-07-16 12:56:56.294 1070.435 \n", + "23 2020-07-16 12:55:54.695 2032.360 \n", + "30 2020-07-16 12:33:55.839 1080.062 \n", "... ... ... \n", - "25093 2020-06-17 13:29:18.491 5271.128 \n", - "25258 2020-06-17 09:24:04.261 4912.997 \n", - "28534 2020-06-06 05:14:32.464 4360.161 \n", - "28659 2020-06-05 20:54:39.448 3178.850 \n", - "28736 2020-06-05 17:13:38.058 4343.358 \n", + "25194 2020-06-17 10:41:51.716 1686.408 \n", + "25223 2020-06-17 09:58:01.633 4926.840 \n", + "25234 2020-06-17 08:56:29.420 2403.046 \n", + "25238 2020-06-17 09:29:55.553 5149.555 \n", + "25242 2020-06-17 08:50:11.249 2580.937 \n", "\n", - "[136 rows x 12 columns]" + "[2560 rows x 12 columns]" ] }, - "execution_count": 146, + "execution_count": 151, "metadata": {}, "output_type": "execute_result" } @@ -1388,22 +810,22 @@ }, { "cell_type": "code", - "execution_count": 144, + "execution_count": 173, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 144, + "execution_count": 173, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "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+nzH6mskcjHYi0HyLcAd7n7azPrDYzNx96+b2b8APsn6YpuPTDn1u4FbzCwFVoB/AFwDvN9GyzH5X4b1P6QcBne02EYuMGEY0uv16PV62/o6eZ5v6E2tjk2GkskgUoWKyZAxuYq5HibqoaIKFvXAttmtf6qi3hwRkZJtdt812V7Ly8t+7NixnW6GiIiIyFmZ2XF3X548rr53EREREWlEQVJEREREGlGQFBEREZFGFCRFREREpBEFSRERERFpREFSRERERBpRkBQRERGRRhQkRURERKQRBUkRERERaURBUkREREQaUZAUERERkUYUJEVERESkEQVJEREREWlEQVJEREREGlGQFBEREZFGFCRFREREpBEFSRERERFpREFSRERERBpRkBQRERGRRhQkRURERKQRBUkRERERaURBUkREREQaUZAUERERkUYUJEVERESkEQVJEREREWlEQVJEREREGlGQFBEREZFGFCRFREREpBEFSRERERFpREFSRERERBpRkBQRERGRRhQkRURERKQRBUkRERERaURBUkREREQaUZAUERERkUYUJEVERESkEQVJEREREWlEQVJEREREGlGQFBEREZFGFCRFREREpJHWTjdARET2vizL6Pf7rK2t0e/3N2zX9weDwahU+0mSjEqaJCRpQpampFlGnmVkeU5RFOR5jrvjheP4WBvMjCAICIKAMAxphSFhq0XUahHFMXEcE8dt2u02cRzTbrfpdDp0Oh3m5uaYm5uj0+nQ7XbHSq/XG9VRFO3QJyyyOylIbgEz+xRwFbA2PPS97v6NnWuRiGzG3XF3iqKgKIrRPjDar587KzMb265KfX+zxze7Rr29lXobJ99LVfJa6MrznCzLRnVV0jTdUKogVwW7el0PhP3+Gv21Ndb6a/T7ZSDMsnzmzwogahmtlhGFEIbQCp0wgDBwwhDCADoBdNsQzEEQQGBgVQGoaigjpUPh4MO6KNZLPoDVVThVQJ4bWWFkOWQZpJmTpLN9raMootfrMt/rMb+wwPz8Ar1ej/n5+VGp9nu93oYSx/GGr7vIXqYguXVe6+7HdroRIueLu48CyWQw2ez4ZJn2+ORz6+FnVKrjeTYKSXmek2cZeZGT57VAlRcUXoUsP6dweLEzwIJhbRNleCww6ERg8fp+/bzJ/aqU0W/j18KhDHjDXJqkMEihHUF8Dp2Bl++DG5bPFNjGX9u9fM0khTQr66Sqh21IUhgkKUl6giQ9wenH4fFvGElm9BMYJAVFceZ2hWFItztHr9el1+3R7c2P9X5WPaP1HtJOpzPWe1r1qHY6HaIoIo5jgkAz1WRnKEjOwMxuAQbufquZvQu43t1vNLMbgTfscPNEOHHiBO9+97t54IEHznquu0/tESkDlg//K7/J5nlGlmbl8OJwO8tzsqwMblvJDMLQaAVGMOyRCoP1nqggcAJzguHxJ06V3/Cr59avA2XQCQyCcL3Xqt6DNXn+djm9BvlZwsVu5YDvcNs7nQ4HDx7kyJEj9J/oz/y8R56Abz6x/T80hKFz4FLnhm+3URgdJOvhc5DUQmgKSZqTpCtlWYNHT8JDeUCSQZpCkjlZdu7tbrVCoigaltawLns/jbL3e9pVZ+0drf7dqH4Qu+qqqzh06BBXXnnlObdVLiwKkrM5CrwZuBVYBtpmFgE3AJ8GfhR4v5nlwO8A/8andHuY2U3ATQAHDhw4T02Xi8Hdd9/Npz71qZ1uxkhgEEUQt8pepGhYx8Nj0x5rheWwZhD4WIicrKvtO+6ER0+wMRnuMv1k7wbJ3eDgwYMcOnQIgMOHD+9wa87MzIha5Z/pWeS5D3s+i1EPaJqV4XO1P176CawNyjLtZ7gsK3/AW1ubPWw/GQ8++CDPec5z+OEf/uHz8nqye5mGec5uGBrvBZ4L/Cfgi8CHgLcCbwROuPvXzGyBMkj+lrv/xpmuuby87MeOaSRctkZRFNx///0kSTK2IGHanLlpc+iKohgNG9e38zwnTdOp8+vqdZIk5FlGmqWkSVLOt0vT0WKJqlezONu4X0NlwLRhz2VVbzK8yrAX0iDA13spR72VPtqfZmxOHus7Xnu0/thjJ3zUcyrnbqxHsj97SLr6cvg7L9u+nzLcy69r1euY1HofJ3shq8eTzEhSGx538ny2779BENBux3Q65UKhdrsc4q4vHKpKNdTdapW9klUdhuHYdrUfBMGorhYpVdtVqS9iqu8/9alPJQzDbfuMZXcxs+Puvjx5XD2SM3D31My+DLwO+AxwJ/Ay4JnAPVXvo7ufMrPfBl4InDFIimylIAh45jOfudPNOKsqkE7Oh0ySZOq8yvqxyTBbD7tVXYXgKkDXt+uLayb3q7bBxsUtdZPHpy2gmdz3r3yFtbU1NnMuCy+mtau+8GZUezk5oXovk4Vqkc6T7EiYnPcYTBybNj9yw7GJ54yuC2CQpH1u/8Rh5juwf2H2tl2+b/wzqhbfVPMv1xfalNtptj43crM5kukwCJbh0Dnbx9fptOl2u8zP91hcWtyw8KaaE9nr9UZzIrvd7mgVebfbpd1uE0WRFujIrqUgObujwM3A64G7gHcCx4HQzPa5+yPDnsu/DfzhzjVTZPeqekLa7fZON0WG3H1s1fa0FduTt+oZX8G9fmuf9bLK2toag36f/mBA2rBL1gzCwAiCMsQFg/UwWj1evonhfM7him0HHjsJ9zzg5MX0oeCzCYKAubkOvV6XbrfH/v0LowA4uSK7vlK7/lirpW+xcuHTn/LZHQXeAtzh7qfNrD881gb+YBgiQ8oQ+e92rpkiIrMzs9GwaK/X25bXyPN8FDjrQbQKqPXgmgynRtR7pate5/q0jMme46oHOAxDzIxWqzX6wWV9EUo0eq/VKuiqnlwtrdv0iMxGQXJG7n47ENX2n1V7+Pnnv0UiIntDGIajXjoRubDoxlMiIiIi0oiCpIiIiIg0oiApIiIiIo0oSIqIiIhIIwqSIiIiItKIgqSIiIiINKIgKSIiIiKNKEiKiIiISCMKkiIiIiLSiIKkiIiIiDSiICkiIiIijShIioiIiEgjCpIiIiIi0oiCpIiIiIg0oiApIiIiIo0oSIqIiIhIIwqSIiIiItKIgqSIiIiINKIgKSIiIiKNKEiKiIiISCMKkiIiIiLSiIKkiIiIiDSiICkiIiIijShIioiIiEgjCpIiIiIi0oiCpIiIiIg0oiApIiIiIo0oSIqIiIhIIwqSIiIiItKIgqSIiIiINKIgKSIiIiKNKEiKiIiISCMKkiIiIiLSiIKkiIiIiDSiICkiIiIijShIioiIiEgjCpIiIiIi0oiCpIiIiIg0oiApIiIiIo20droBIiKyc9ydJEkYDAYMBoOp2/U6TVOSJBmVNE3HSpZlZFlGmqbkeU6WZRRFUW7nGUVe4F5QFAXu420xAzMjCEKCMKAVtmi1WoRhSBRFoxLHMe12m3a7TafTodPpMDc3x9zcHN1ul16vN6rn5+eZm5sjCNRvIrIdFCS3kJn9LvB0d3/OTrdFRPaeKnhVgawKZ/XQVm1Xwa4q/X5/00A4GAzo9/v0B30Gg37tnJQ0SfHJRDcjMwhDIwiNIIQggCAEC8DMa7UPQ2JZqOppHLxWisKggMINz42igCKHPIMsc4r87G03M7rdOebn51lYXGRpcYmFhQUWFxdZWFhgaWlpVC8uLo7qdrvd6HMRuZgoSG4RM/s7wMpOt0Nkr3J3siwb6+Wqh6d6j9dk71e95Hk+KtV+1SNWbZe9YU6e57g77j46VtX148CG45PnVtddL+VrZXlOUeTkWT7WM5dnwzbm+Wi7eq0na0NgMzB87JgZWAjtbv0cNpyTZ5DnELYgisfPLf83WwitguG5vxeHEEJ8w3eshf3w7OcP25hBlkKelnWWlHWaQJo42eA0aXKaJ04/zDcfD8gSIx1AMtj8M4/bMQsL8ywuLrFvad8oeFYhdH5+noWFBebn50el1+vR6XSwTZOyyIVFQXIGZnYLMHD3W83sXcD17n6jmd0IvAH4H4GfBG4C/t8dbKoIUPZsra6ubghH9aBTBakq3EyGrSqIVWGsXk/2mtXD3WSph8FBMiCt9aIlaUKaVOdmjXvGZlKFn+F2raptjJ2+6WMbTyqD2uTxadcY5YtaGAsiCOPycLI27IV7EqaHtmbX7HQ6vOLgQY4cOcKJk/0n1a6tduox59RjZz5nYT/8tRdMHl0Pj0UB6WC9JANI+tX2gHQwYGXwKI//hZEmwfC8jcPydWbGXLdDd65Lt9el2+3RnesyNzc3Goqvhubb7fZoqL4ato+iiFarNapbrRZXXnkl+/fvb/xZiWwXBcnZHAXeDNwKLANtM4uAG4BPA28F/g9g9UwXMbObKMMmBw4c2M72ykXup37qFr74xbt3uhkbtCKnFUMrgqgNUQ+6lzA6FoRlCUN4+CswWGVsGHRjb9j0YDZTCNylsqQMN7vFwYMHOXToEACHDx/e4dZsvSCA9lxZzsyBvNzysqczS4YBtNoe1U5/dZX+6VUeeQwGX4M8e3J/GC+77FJ+67c++KSuIbIdFCRncxx4vpktAgPgc5SB8gbgZ4BXufv/bGbXneki7v5e4L0Ay8vL29j1Ihe7V7zilfz5n/93kiTZ6aaMyVIjSzd/PAiNMISwtT7nzgIv592ZE4S+PhcvKIdmy3MgGA7VBjacoxcMh2eD9WNjw7pT5uuZTQTTM4XVeqDdZFi42g9qrx3U2jZqe+3YZ/8AHn94Sz/2J+XIkSNj9W6ysB9e+H3bd/08K3so0wGk/eF2UuvBHG5niZV/thMrh9HTrf/n/eUv/1tbfk2RrWDbOpR0ATGz24GPAJcBdwLPouxdfBvwL4GEMphfAXzG3b/7TNdbXl72Y8eObWeTRc6boiimDm/X5zYOBoMNx6tjkwtJJp87dk6akA3rPMtJs3JoPc/y2hzJYnuHybeJBaxPOZwIrVAFUx8/PhFqJwPyLOecSZZAmkIUlT3Hu8n0YeuN3Nd7DOsBcENIHECaBGQDI+k7Wbb5n6FOp01vvsfCwiKLC4tjcyTrK8erUq0sr4a2q+HtVkv9ObI3mNlxd1+ePK4/wbM7CtwMvB64C3gncNzd3w28G2DYI/nRs4VIkQtNEBtg+MoAACAASURBVATEcUwc756kMW3O55kW2+R5OWxZ1dMW3pxpoU313Mm5qNNef9rc0+p2OZvNNa3CdH/QJxkkDJKyTtJkuPo6Ic+bjYmHLaPVMoJWOa2g7PktS6cL3dHx8RKG4z3DY73F9Z7WgKk9wTAeZN0pV20DXgznehblUL8PV2sXRdlTWK3c/u+fr1Zw1xbapJCnAXlqpMmZF9QA9HpdFhYXuGxpH/uW9m1YyV0trqkvttlNf9ZFdpKC5OyOAm8B7nD302bWHx4TkV0oCAKCICCKop1uynlTrXqvbvczeSug6hZB9VsFTd42qP6c8rHhsbUBaVL1DJe9z7tFHEd05jrMdeaY7/aYv2Sebrc76iGsr6qur7qugmEYhjv9FkT2LAXJGbn77UBU23/WlHMeAHQPSRHZEdUK3263u+2v5e5Te02n3ZJpsx7hyekHZjYqYRgShuEZb0je6XSI41g3GxfZQQqSIiJyzsxs101nEJHzTz/GiYiIiEgjCpIiIiIi0oiCpIiIiIg0oiApIiIiIo0oSIqIiIhIIwqSIiIiItKIgqSIiIiINKIgKSIiIiKNKEiKiIiISCMKkiIiIiLSiIKkiIiIiDSiICkiIiIijShIioiIiEgjCpIiIiIi0oiCpIiIiIg0oiApIiIiIo0oSIqIiIhIIwqSIiIiItKIgqSIiIiINKIgKSIiIiKNKEiKiIiISCMKkiIiIiLSiIKkiIiIiDSiICkiIiIijShIioiIiEgjCpIiIiIi0oiCpIiIiIg0oiApIiIiIo0oSIqIiIhIIwqSIiIiItKIgqSIiIiINKIgKSIiIiKNKEiKiIiISCMKkiIiIiLSiIKkiIiIiDSiICkiIiIijShIioiIiEgjCpIiIiIi0khrpxsgIiIXBndnMBjQ7/dZXV2l3++PSpIkDAYDkiQhSRLSNB2VLMvI83xU3J2iKMaubWYEQUAQBIRhOCpRFNFqtYjjmHa7TRRFdDod2u02nU6Hubm5Uel2u0RRtEOfjsiFSUFSROQi5+6j8Hf69OlRXd9eXV3d+PjqKqdPr7C6usra2hqD/gB3b9aIwLDAytqg/N9YI8uqcCjAiwIavFQrapWhstdjYX6ehfkFer0e8/Pzo7KwsMDCwsLY9sLCAt1uF5tsl8hFTkFyC5jZEeAqys/zKPAT7p7vbKtE5ELh7mM9eFWpeviqut/vj3oEqzIYDEa9g1XgW11b5fQwGK6trtJf688UAC0OsTiAOMAj8NggDmA+gCiCuA1RAJFBa1hX2y1bL+FEMcYC2iz50KhCpUMO5A5ZMawd0uF+6pAWkJR1lhScSgpOJad4eHACO1lgKTAo8H6G55u/ehAEdHtdFhYXWVpY3BA460F0fn5+FFB7vR5zc3MKoXJBUpDcGq9x95NW/ivxH4EfAT60w20SaczdyfN8NORYH3pM03Ssrh6bPD7tvKpsdu2q1I8VRTFWV8OeRVFQeEGRl7V72Uvl+PCcKhDMFkuq7/FmVhZGB4bHGB2vAoFZGYJqV8Gr1/Pyc3T38Ta5kxf56DMuioK8eo95TpZn5FlOlufkWU4+/CyasjAow19Uhrmin5UBKxi2PTDoBWUPYMD6sSm128SnmTvkOfSf/M/NnhQwKKBdBtWzujTGXnJp2bbRd7Kw2WvXd7JhOwYF9KvtHPoFxaBgpV+wMniCr688hj3q2MBhkFMMzvwZmBlz3XJ4vdfr0ev2RgGzGnafm5uj0+mMlXa7PRq2r7brw/hVUUiVnaIgOQMzuwUYuPutZvYu4Hp3v9HMbgTe4O6vHZ7aAmIaDbiIzOa2227j1ltv3elmbAkLbWxIc72wIcAwLF5ljGr4s/ZY2bXFWLgbnbuZyb+tPrnt48c3PH6mNzilrrc5sDL7BNSC3LAOQwhaEHSG50z04rUmtu8+BSez2uexSfhbGfbO7bJ/pjqdDgcPvoojR47Q7/fP/oRHEvzR5NxepAqfZ2CtoOxB7c12ydGnWDgktRBa3x4UeFKwmhSsJms8kpyGJxx7xLG07D31pMCT7R/I+omf+Am+//u/f9tfRy4eCpKzOQq8GbgVWAbaZhYBNwCfBjCzPwBeCHyMsldyAzO7CbgJ4MCBA9vfarkgHTt2bKebMJuwGta0UW/Y2DBnaGUoDAwPJkLU5H4VvgLbEJQ2hEjYWMP6nLtpQ7jnGianPWczY22ZaHP9fU17/2EtXIdsGBK2oDYc/MAqrO3dGTUHDx7k0KFDABw+fHiHW3PuLDDohGUZch8Os1fBclTK0OlpGTDHht/7efl1XB32hBZneNEGvvjFLypIypayxhOjLyLD0Hgv8FzgPwFfpBy6fivwRne/e3heB/gg8B53/8SZrrm8vOx7JhDIrlKtjK2GeMeGemv71bBpVerDw5PbZxparg9BT5bJoe3NHk+z8rHROdXzhtvlkG45lOu1tspZBIa1Aqy1HtA9BG8xPkcxCtbnLn5ppey53GXKHsmDs/dIXt3GfuCq7W8Y4NmUoe76fr+ApBz+tsSxpAyPxSAveyrPIm636XTadObm6M7NMdeZGw1z14e160PbVakPb7daLVqtFlEUEYYhrVZrtLq92r7iiiu0cl0aMbPj7r48eVw9kjNw99TMvgy8DvgMcCfwMuCZwD218/pm9hHgB4AzBkmRpsyMTqez083YdpOBeDIYT4ZoYFRP3j5m8gfmafPJ6vMe64/X90fzJyce36z9VT1ZqrbX39O0IF8F8mkLbarb6Gy22Gatv8ba2hprJ/sM+n36/TXybMYAWfWWbpgzWT++SW9x/dg5TNvrJzmHb/+9cuHO/vbZn3BpPNN13b2cyznq9Rv2/NV7CQf1ksPACYbneD8v501uIggCevM95ueXWFhYZPHKchX4wsLC2GKb+fl5ut3uqPR6vdG8yCDQLZ1l71KQnN1R4Gbg9cBdwDuB40DPzBbc/etm1gJeNTxXRJ4EMxv1psjWSNO0XLVdrdgebq+trY3d7qd++5/yNj/r22tra6RJOtsLBkZQ9YZW0xlaw3muLVuf9xkYzLNx6gLD7dH81PLWP7hDv8A//o0yJBZA5lheruC2rFq5XQ4fz9or2Jsvbwm0eOkii4uLG27/U1+lXT2uWwLJxU5BcnZHgbcAd7j7aTPrD4/1gN81szblz+KfBN6zc80UEZmuGgJdXFx8UtfJsmwUOKeF0jPdkHwwGJS3LhrdlDwhra/Sz3MKL1e3F7We5MAMs4AgDAiDkHA4VBtHEXE7Jl6YfkPybrc7WgFd9QKOVk7XegxbLX07FGlCf3Nm5O63A1Ft/1m1h19w/lskIrIzWq0Wi4uLTzqQisjep4kZIiIiItKIgqSIiIiINKIgKSIiIiKNKEiKiIiISCMKkiIiIiLSiIKkiIiIiDSiICkiIiIijShIioiIiEgjCpIiIiIi0oiCpIiIiIg0oiApIiIiIo0oSIqIiIhIIwqSIiIiItKIgqSIiIiINKIgKSIiIiKNnDVIWunvm9nPDPcPmNkLt79pIiIiIrKbzdIj+WvAi4EfHe6fAn5121okIiIiIntCa4ZzXuTuzzOzPwVw98fNLN7mdomIiIjILjdLj2RqZiHgAGZ2OVBsa6tEREREZNebJUjeCnwYuMLMfg74I+Dnt7VVIiIiIrLrnXVo290/aGbHgZcDBvygu9+z7S0TERERkV1tljmSAA8DR4fnz5nZ89z9c9vXLBERERHZ7c4aJM3srcDrgPsYzpMc1jduX7NEREREZLebpUfyNcAz3D3Z7saIiIiIyN4xy2KbLwD7trshIiIiIrK3zNIj+QvAn5rZF4BBddDdX71trRIRERGRXW+WIPkB4G3AXej+kSIiIiIyNEuQXHX3W7e9JSIiIiKyp8wSJI+a2S8Av8v40LZu/yMiIiJyEZslSH77sP6O2jHd/kdERETkIjfLb7Z52floiIiIiIjsLTP9ZhszexXwN4BOdczd/7ftapSIiIiI7H5nvY+kmb0H+LvA/0T5u7Z/BHjaNrdLRERERHa5WW5I/jfd/R8Aj7v7vwZeDDxre5slIiIiIrvdLEFybVivmtnVQApctX1NEhEREZG9YJY5kh81s33AO4DPUa7Y/vVtbZWIiIiI7HqzrNp+63Dzd8zso0DH3U9sb7NEREREZLebddX23wSuq843M9z9N7axXSIiIiKyy501SJrZbwLPAD4P5MPDDihIioiIiFzEZumRXAb+urv7djdGRERERPaOWYLkF4Arga9vc1v2JDPrAv+Bstc2B37P3f/FzrZKZHdzd9I0HStZlpFl2dh2nucbSlEUFEWBu49tn+lnXTMjCIKxutqulzAMCcNwbHuyVI+1Wq2px6vr77SiKEafYfV5Vp9v/TOvtpMk2bA97djk9mRJ0pQsz8jSjDRLyfOCPMvIi5wiL8jzHJ/4um32tTMzrPZ1C8OAIFj/zFtRi6gV0YpaxFFMO46Ja6XdbhPHMZ1Oh3a7PVZXZW5ubrTd7XZH+1EUneevmMjeNEuQvAy428w+Cwyqg+7+6m1r1d7zb939k2YWA7eb2Svc/WM73SiRWeV5TpIkDAaDDfW07X6/P3Zs6vFk+FiSkCQJyWA9fGRputNvefuZYWeqN2yX/5uMoF7932v77mPbVRBz97HHt5zZqJ3r25PHp9XDcwBaxti3njNkbmf9reQ4qQPtEHvKpVAUkBdQFHiewmAAqwWW51hePmZ5jmcFnmZ4lp3T5xK2WnTmOsx15pjrztGd69IbBs1pZTKU1ksVXuM4JghmueueyN4xS5D8V9vdiN3OzG4BBu5+q5m9C7je3W80sxuBN7j7awHcPTGzzwHX7mR7Zff7yle+wle/+tWxY/UetqpM65Grepiq7TRNR8cme/bqPUhJmpAk69tpkpIO6zzPN2npWZgRRC1ohRCGwzrAwxBvBRCGWBzCXAd/pA8UELeg3VoPFpPhZLg5NYxU54+2N2xs7omTkDZ8n03UQt1emBfU6XQ4ePAgR44cod/vTz/Jq0C7g+8oy/B2vOnDHgR4EMBkh+L+RYIXfStkWfnnIMsgzSDLIc3wdLg/LEWWsZpmrCYZnqVw6lHssW9gWY4Nz/c0xfPinJofRRHxsKc0bpc9p524Tdxu045joiiaWlqt1lgZ9crWtid71YMg4MCBAxw4cKDBBy0ym1lu//Ofz/S4md3h7i/euibtSkeBNwO3Us4ZbZtZBNwAfLo6aXi/ze8HfmnaRczsJuAmQH+xL3I/+ZM/ycrKyk43A9oR9DoQR9COsHYM7bg83o6hE68fiyNoBdCqBcfApg7jTot1xR134o/u4J3DdsFw82528OBBDh06BMDhw4d3uDVbz8ywMIAwhvaUx8/1esPiebEeStMMkhRWB3h/AGvDMkiG+wnpICFdW+X0efr7f/kVV/Cbv6G1sbJ9Zrr9z1l0tuAau91x4Plmtkg5vP85ykB5A/BGADNrAf83cKu73z/tIu7+XuC9AMvLy3uhk0K2yZve9CY++clPAmVPZBXGZt2u6moe3Gi+W5aSJOUctTRNy17HLCVLM7J0Ss/jIC3L0LQ/lKNjZlirhbWGPY/DMFmEAd4KoRVgrRaEwUQPZdlLydI8tn8JwmD4DX14PAjKehhMR8eCoNwPgjIEBtVw6vTwejb5R4/C1x855+ddLI4cOTJW71qX7iP82zdsyaW8KEY9kpNlsody2mOW5es9lFmGJ1l5zXMUtlplz2Nc9j7GUVxutyLiYV31SlY9jdW/A2f79+LlL3/5lnxWIpuxJ7sY28w+5+7P26L27FpmdjvwEco5o3dS/r7xm4BvcXc3s/cBK+7+xlmut7y87MeOHdu29opMUxTF+lD3sKRpumFu5LT5j5Pb9fmQ/eFj/X5/OCdyQJqUw+bbcsOHUaBkfIi83BjW46/rWb59cwcvNFafAzmsJ6cijO1PfA0m508OLzM6WN8ee91hveHLtD5HlN4c9i3XlHMkq5JXJR+rPcvLoJjlBNXcyTTDs7wcmj6HKR1RHJdzJue6dOfm6HW7dLtd2u023W536uKdyTmS7XZ7rMTDoewwDGduh8hOMbPj7r48eXwreiQvFkeBm4HXA3cB7wSOD0PkvwGWgH+0g+0TOasgCEbfxM4HdyfLsrHgeqbVv9Wcz/pq42mrtque1fqq7er16uo9l2dbtT258rqqqzlo07brx6Y9f9pq7mp/sk1Veyd7W+urmidXOtc/j8ntyRXb9c931lXb01ZwJ2nCYJCMVmhXi6eyLCNLynpb7xZ3YgX/y29uOBwM5wvGcUwUx8RxRKfdoTPfHlup3W63R2Gvvj25aKYKh1WtsCcy3VYEyYtl4tFR4C3AHe5+2sz6wFEzu3Z4/EvA54bfBH7F3fX7yOWiZ2ajxQK9Xm+nmyPnSX0hWDX9IsuyUdCtLyjb7BZA9YBdXzxSBfgwDEfDvVEUaTW0yA6Z5TfbvM3d//kZjv3YtrRsl3H326mtA3T3Z9UevljCtIjIWVW9sXG8+epqEbkwzPIj3PdMOfaKasPdv7B1zRERERGRvWLTHkkz+yfAjwNPN7M7aw8tAH+83Q0TERERkd3tTEPbvw18DPgFoP4r/065+2Pb2ioRERER2fU2DZLufgI4AfyomYXAU4bnz5vZvLt/5Ty1UURERER2oVkW2/xTyl+T+DBQ3WnVgW/bvmaJiIiIyG43y+1//hnwbHd/dLsbIyIiIiJ7xyyrtr9KOcQtIiIiIjIyS4/k/cCnzOz3KX/PNADu/s5ta5WIiIiI7HqzBMmvDEs8LCIiIiIiZw+S7v6vAcys6+6r298kEREREdkLzjpH0sxebGZ3U/4uaczsejP7tW1vmYiIiIjsarMstvlF4PuARwHc/c+Al25no0RERERk95slSOLuX504lG9DW0RERERkD5llsc1XzexvAm5mEfAm4J7tbZaIiIiI7Haz9EgeAn4CuAb4GvDc4b6IiIiIXMRmWbX9CPDa89AWEREREdlDZvld27dOOXwCOObuH9n6JomIiIjIXjDL0HaHcjj7z4fl24BrgTeY2S9uY9tEREREZBebZbHNtwHf6e45gJm9GzgKvAS4axvbJiIiIiK72Cw9kpcA87X9HrB/GCwH058iIiIiIhe6WXok3w583sw+BRjlzch/3sx6wB9uY9tEREREZBebZdX2vzezjwE/Rnn/yI8Df+Hup4Fbtrl9IiIiIrJLzbJq+x9R3oT8WuDzwHcAdwA3bm/TRERERGQ3m2Vo+03AC4A/cfeXmdlfBX5+e5slIvLkPfTQQ3z2s5/l1KlTPO1pT+OFL3whcRzvdLNERC4YswTJvrv3zQwza7v7l8zs2dveMhGRhgaDAb/+67/ORz/6Udx9dPyS/Zfyz970Rl70ohftYOtERC4cswTJvzCzfcBh4BNm9jjw4PY2S0SkmdOnT/OWn/5pvnTPPQR//Tm0vvV66Pbwr3+NE//1T/jZn/1ZDh06xA/+4A/udFNFRPa8WRbb/A/DzX9lZp8EloAj29oqEZEGkiThp//lv+Tee++l9fLvJfiWZ4wes2sPYFdeDZ/6Q97znvcQxzGvfOUrd7C1IiJ73yz3kRxx9//s7r/r7sl2NUhEpAl355d+6Ze45+67Cb775WMhsmKtFuGN30Nw7QF+5Vd+hT/7sz87/w0VEbmAnFOQFBHZrT72sY9x++23Ez7vBYRPf+am51kQEt74PbC0xL/5uZ/j0UcfPY+tFBG5sChIisie9+CDD/Lud7+b4JprCb79+Wc93+KY8MbvZWV1lXe84x0URXEeWikicuFRkBSRPS1NU9729reTt1qE33UjZjbT8+yS/QTf8Z18/vOf5/Dhw9vcShGRC5OCpIjsab/927/N/ffdR/Cd34V1e+f03ODZf43gwHW87/3v58EHdTMKEZFzpSApInvWPffcw4c+9CGCv/Jsguu+5Zyfb2aEL/kuilaLt7397WRZtg2tFBG5cClIisietLa2xtve/nasN0/44u9sfB3rdgm+86Xcf999fPCDH9zCFoqIXPgUJEVkT/q1X/s1Hvr6QwTfdSMWt5/UtYLrnk7wV57Nhz70Ie66664taqGIyIVPQVJE9pyPf/zjfOITnyB47vMIrrp6S64Zvvgl2OIiP/8L/zsnTpzYkmuKiFzoFCRFZE+5++67ufWXf5ng6msIn7e8Zde1OCZ42ffwxIkn+Plf+AXyPN+ya4uIXKgUJEVkz3jggQf4mZ/9WYq5LuGN34sFW/tPWHDZ5QTf+VL+7POf51d/9Vdx9y29vojIhUZBUkT2hHvvvZdbfuqnWC0Kwu97FdbpbMvrhM/6qwTf9lxuu+02PvCBDyhMioicQWunGyAiciZ5nvORj3yE973//RSdOcJXvhpbWtrW1wxf8B0wGPChD32Ifr/PP/7H/5gwDLf1NUVE9iIFyRmZWQz8CvDdQAG8xd1/p/b4DwH/EXiBux/bkUaK7CIPP/wwX/jCF7j33nt54MEH+fpDD7Fy6hRZlhHHMUtLSzzliiu49tpreepTn8o111zDFVdcwfz8PHme841vfIM777yTjx05wsMPPUTw1KcRvvRl2Nzctre9ur8krRaHDx/myw88wM1vfjOXX375tr+2iMheYhq2mY2Z/WsgdPefNrMA2O/ujwwfWwB+H4iBfzpLkFxeXvZjx5Q35cLxxBNPcNddd/Gnf/qnHDt+nG88/DAAFkXYJfthYRE6HQgCyDK8v4atrMCJJyiSZNPrBldeRfCt12MHrpv51x9upfzeeyju+GOiMOBHfviHefWrX83SNveIiojsNmZ23N03rHBUkBwys1uAgbvfambvAq539xvN7EbgDcBLgb/q7qenPPcXgU8AtwA3K0jKhe6RRx7h/vvv56tf/Sr3338/93zpS/zl174GQBDH+JVXE1x9DXbVNdgll5xxUYy7w9oqfuIEfnoFkgSCAOt2scuuwLrdmduV3fFH+KOPrl87SSAZQNzG4nh03C69lNaLXzLzdf3USfL/cgfFA/cThiEveOELufnNb2Z+fn7ma4iI7GWbBUkNba87CrwZuBVYBtpmFgE3AHdSBsm3mtl3A/dR9jw+bGbPA57q7r8/DKMiF7TBYMCP/diPjRahBN0efullhC94EXbl1djll2PB7PMJzQy6vXP+PdnTFF++H1bXf9brdDocPHiQI0eO0H+sPzrujz5C+uijMwdKW1ik9be+D3/8MbI7/og/ueMO7rvvPq6//von3WYRkb1Mq7bXHQeeb2aLwAC4gzJQ3jDcvhb4jLs/b7j/b4dD3O+kDKBnZWY3mdkxMzv2zW9+czveg8i2c/exlcwWBhAGYAGEIXD+h583c/DgQQ4dOsTBgwe35oJBUBYREQHUIzni7qmZfRl4HfAZyl7IlwHPpOytXAX+0/D0/0A53L0APAf41HDu1pXA75rZq6cNb7v7e4H3Qjm0vZ3vR2S7dDodPvCBD3DfffeNDW1/47N3ABC0O/hVVxNccy3BlVfDvn1nndvo/T5+8glYOY0ng9rQ9uVYZ/bFNba4hNd6JI8cOTJWj8679DKiv/0DM1/XV06Rf/ZPKO6/jyAwnr+8zNOf/vSZny8icqFSkBx3FLgZeD1wF2Vv43F3dzP7PcoV2/8f8HLgbnc/AVxWPdnMPsWMcyRF9rKnPOUpPOUpTxk79uijj3LnnXeOFts89sf3kwNBu41fsh+rL7bJc1hbg5VTcPIExdrapq8VXHUNwbc9l+CpB87aLrv00rH9fpJw+A9vh+48tm//puedSf7n/43iM0dpGfzI330NP/ADP8D+/fvP/kQRkYuAFtvUmNnLgSPAPnc/bWb/DXiPu7/TzJ4G/CawD/gm8A/d/SsTz/8UWmwjgrvz9a9/nbvuuot7772XLz/wAA89/DArJ0+SFwVRFLG4tMSVw9v/VOXyyy9nYWGBPM95+OGHufPOO/mDj3+cR775TYLrvoXwJd+9bTcin/Ye8s/+CcVdn+dvPOc53HLzzVx55ZXn5bVFRHYbrdreZRQkRWaTpikf/vCHy98y05snPPgqbHF7b7/j7uSfOUpxzxd51atexY//+I/rhuQiclHbLEhq1riI7GpRFPGa17yGd7zjHcwV+f/f3r2HSXLV5x3//rr6NjN7v2ovmtXKQmCBEIZ5HCCIyMKBDcHIxlaMjYmwAD0ikQkYgaQojxOwnYudBxLFCURJsGNig20CEsF4jYSEWNDFrDASBkkgdEG77EU7O7Nz7Wv98kdV9VT39szO1s5Mz86+Hz2lqjp1qrq6e7v7nXNOddP80hfw8bFFvc3mw39D+Nh3ufrqq7nhhhsUIkVEZqEgKSJnhUsuuYTf/73fo+xOc+9f4tXqotxO8wffJ/z2t3jDG97Atdde25MvQRcROVsoSIrIWePCCy/kIx/+MDYxTvOeu/AwXNDjh8PDhN+4j0svvZTf+I3fUIgUETkFBUkROau85CUv4YYbbiA8+Bzht7+1YMf1ep3w3rtYu3o1t956K/m8vtRCRORUFCRF5KyzZ88errzySpp/u5/w8KEFOWbzwW8QnhjllptvZt26dQtyTBGRlU5BUkTOOmbGDTfcwJYtWwm/dk/0m9pnIHz2GcInHuOfXH21fvZQROQ0KEiKyFmpv7+fmz70QXx8nOaD38h8HJ+eJvz6fVywezdvf/vbF/AMRURWPgVJETlrvfjFL+bqq68m/P7jhM8+c9r7uzvNr9+H1Wvc9KEPUSgUFv4kRURWMAVJETmr/dqv/Rq7LriA8Ov34dNTp7Vv+IMnCJ99mndccw27d+9epDMUEVm5FCRF5KxWLBa5+aabyDXqNO+7l/n+WpePjhA+8HUuvfRS3vKWtyzyWYqIrEwKkiJy1tu9ezfXvfvdhAd+RPjIqb8SyOt1mvfcxUC5zE033aRfrhERyUhBUkRWhJ/7uZ/jH1xxBc393yR85qlZ63kY0rz3LnzkOP/yllvY2uPrQgAAIABJREFUtGnTEp6liMjKoiApIiuCmfH+972Pi194Mc177yZ89umT6nizSfOrXyH80bO85z3v4eUvf3kPzlREZOVQkBSRFaNcLvO7v/M7XHThhTTu+msaD96PT07gYUj444M0/9/nCZ96kne96128+c1v7vXpioic9Wy+A9NlYQ0NDfn+/ft7fRoiK1KlUuH222/nS3/1V5B6j1u7bh3/4r3v5dWvfnUPz05E5OxjZg+7+9BJ5QqSvaEgKbL4Dhw4wEMPPcTExASDg4O86lWvolwu9/q0RETOOrMFyXwvTkZEZCns3LmTnTt39vo0RERWLI2RFBEREZFMFCRFREREJBMFSRERERHJREFSRERERDJRkBQRERGRTBQkRURERCQTBUkRERERyURBUkREREQyUZAUERERkUwUJEVEREQkEwVJEREREclEQVJEREREMlGQFBEREZFMFCRFREREJBMFSRERERHJREFSRERERDJRkBQRERGRTBQkRURERCQTBUkRERERyURBUkREREQyUZAUERERkUwUJEVEREQkEwVJEREREckk3+sTEBGR5aHZbFKtVltTpVKhVqtRq9WoVqvUajXq9XprXq/XaTQaNJtN6vU6zWaTZrNJGIatyd1bU8LMMDNyuVxrCoKgNRUKBfL5PPl8nkKhQLFYbJtKpVLbVC6XKZVKBEHQw0dP5NykILkAzKwI/AFwBRACt7r7/+3pSYksU+7eCiPJ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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -1427,7 +849,7 @@ }, { "cell_type": "code", - "execution_count": 145, + "execution_count": 174, "metadata": {}, "outputs": [ { @@ -1458,116 +880,140 @@ " median\n", " mean\n", " std\n", + " count_nonzero\n", " \n", " \n", " \n", " run_duration\n", " run_duration\n", " run_duration\n", + " run_duration\n", " \n", " \n", " agent_name\n", " \n", " \n", " \n", + " \n", " \n", " \n", " \n", " \n", + " wr\n", + " 2253.1580\n", + " 2358.452667\n", + " 1063.643825\n", + " 15.0\n", + " \n", + " \n", " w-no-ssd\n", - " 2850.9130\n", - " 3247.563941\n", - " 1282.447187\n", - " \n", - " \n", - " w1\n", - " 4622.4640\n", - " 4402.738182\n", - " 845.100475\n", - " \n", - " \n", - " w2\n", - " 3721.4650\n", - " 3384.658500\n", - " 1164.059499\n", - " \n", - " \n", - " w3\n", - " 4361.7415\n", - " 3924.218400\n", - " 1015.238411\n", - " \n", - " \n", - " w4\n", - " 3854.8910\n", - " 3736.914565\n", - " 923.383163\n", - " \n", - " \n", - " w5\n", - " 4481.5830\n", - " 3896.175667\n", - " 1088.397638\n", - " \n", - " \n", - " w6\n", - " 4018.8300\n", - " 3459.808882\n", - " 1101.520573\n", - " \n", - " \n", - " w64\n", - " 2230.6670\n", - " 2181.231625\n", - " 217.800498\n", + " 2205.6560\n", + " 2384.878086\n", + " 903.300255\n", + " 327.0\n", " \n", " \n", " w7\n", - " 3744.3995\n", - " 3744.399500\n", - " 1399.975967\n", + " 2183.6010\n", + " 2105.768773\n", + " 838.872186\n", + " 22.0\n", " \n", " \n", - " windows-dev\n", - " 4223.4625\n", - " 3996.484000\n", - " 557.546608\n", + " wh64-1\n", + " 2171.9305\n", + " 2030.448714\n", + " 458.938941\n", + " 14.0\n", " \n", " \n", - " wr\n", - " 3422.8020\n", - " 3422.802000\n", - " 2057.547797\n", + " w1\n", + " 2167.8730\n", + " 2337.174326\n", + " 946.209905\n", + " 276.0\n", + " \n", + " \n", + " w5\n", + " 2120.6475\n", + " 2298.384057\n", + " 864.067277\n", + " 350.0\n", + " \n", + " \n", + " w4\n", + " 2085.1555\n", + " 2259.117868\n", + " 894.307199\n", + " 340.0\n", + " \n", + " \n", + " w3\n", + " 2052.3355\n", + " 2205.881979\n", + " 901.605416\n", + " 374.0\n", + " \n", + " \n", + " w2\n", + " 2003.3485\n", + " 2215.764024\n", + " 909.803217\n", + " 334.0\n", + " \n", + " \n", + " w6\n", + " 1928.4930\n", + " 2096.736796\n", + " 870.648539\n", + " 367.0\n", + " \n", + " \n", + " wh64-2\n", + " 1802.3465\n", + " 1843.380400\n", + " 269.787648\n", + " 10.0\n", + " \n", + " \n", + " w64\n", + " 1689.1110\n", + " 1598.434884\n", + " 397.997104\n", + " 275.0\n", " \n", " \n", "\n", "" ], "text/plain": [ - " median mean std\n", - " run_duration run_duration run_duration\n", - "agent_name \n", - "w-no-ssd 2850.9130 3247.563941 1282.447187\n", - "w1 4622.4640 4402.738182 845.100475\n", - "w2 3721.4650 3384.658500 1164.059499\n", - "w3 4361.7415 3924.218400 1015.238411\n", - "w4 3854.8910 3736.914565 923.383163\n", - "w5 4481.5830 3896.175667 1088.397638\n", - "w6 4018.8300 3459.808882 1101.520573\n", - "w64 2230.6670 2181.231625 217.800498\n", - "w7 3744.3995 3744.399500 1399.975967\n", - "windows-dev 4223.4625 3996.484000 557.546608\n", - "wr 3422.8020 3422.802000 2057.547797" + " median mean std count_nonzero\n", + " run_duration run_duration run_duration run_duration\n", + "agent_name \n", + "wr 2253.1580 2358.452667 1063.643825 15.0\n", + "w-no-ssd 2205.6560 2384.878086 903.300255 327.0\n", + "w7 2183.6010 2105.768773 838.872186 22.0\n", + "wh64-1 2171.9305 2030.448714 458.938941 14.0\n", + "w1 2167.8730 2337.174326 946.209905 276.0\n", + "w5 2120.6475 2298.384057 864.067277 350.0\n", + "w4 2085.1555 2259.117868 894.307199 340.0\n", + "w3 2052.3355 2205.881979 901.605416 374.0\n", + "w2 2003.3485 2215.764024 909.803217 334.0\n", + "w6 1928.4930 2096.736796 870.648539 367.0\n", + "wh64-2 1802.3465 1843.380400 269.787648 10.0\n", + "w64 1689.1110 1598.434884 397.997104 275.0" ] }, - "execution_count": 145, + "execution_count": 174, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "pd.pivot_table(ds, values=['run_duration'], index=['agent_name'],\n", - " aggfunc=[np.median, np.mean, np.std])" + "t = pd.pivot_table(ds, values=['run_duration'], index=['agent_name'],\n", + " aggfunc=[np.median, np.mean, np.std, np.count_nonzero])\n", + "t = t.reindex(t.sort_values(by=('median', 'run_duration'), ascending=False).index)\n", + "t" ] } ],