Newer
Older
"id": "b2fdbe8a-6210-4dd0-9c3f-92d40b7d330b",
"metadata": {},
"outputs": [],
"source": [
"import duckdb\n",
"\n",
"db = duckdb.connect(\"agg.db\")"
]
},
{
"cell_type": "code",
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
"id": "c6b5a875-4e6a-402b-94ad-e560533ec44a",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" compiler query partition duration unit bench iter_number \\\n",
"0 3 4 2 5.367870 ns 3 0 \n",
"1 3 4 2 5.483773 ns 3 1 \n",
"2 3 4 2 5.271529 ns 3 2 \n",
"3 3 4 2 5.397912 ns 3 3 \n",
"4 3 4 2 5.521134 ns 3 4 \n",
"... ... ... ... ... ... ... ... \n",
"3995 3 3 3 6.154460 ns 3 95 \n",
"3996 3 3 3 6.286358 ns 3 96 \n",
"3997 3 3 3 6.220507 ns 3 97 \n",
"3998 3 3 3 6.144119 ns 3 98 \n",
"3999 3 3 3 6.150991 ns 3 99 \n",
"\n",
" iter_count \n",
"0 2 \n",
"1 2 \n",
"2 2 \n",
"3 2 \n",
"4 2 \n",
"... ... \n",
"3995 3 \n",
"3996 3 \n",
"3997 3 \n",
"3998 3 \n",
"3999 3 \n",
"\n",
"[4000 rows x 8 columns]\n"
]
}
],
"source": [
"df = db.sql(\"select * from measurements where bench = (select id from bench_types where name = 'criterion')\").df()\n",
"df[\"duration\"] = pd.to_timedelta(df['duration'], unit='ns').dt.total_seconds()\n",
"print(df)\n",
"queryAliases = {}\n",
"for (id, name) in db.sql(\"select id, name from queries\").fetchall():\n",
" queryAliases[id] = name\n",
"\n",
"df[\"query\"] = df[\"query\"].apply(lambda q: queryAliases[q])\n",
"df = df.sort_values(by=['query'])\n",
"queries = sorted(queryAliases.values())\n",
"\n",
"compilers = db.sql(\"select id, name from compilers\").fetchall()\n",
"partitions = db.sql(\"select id, name from partitions\").fetchall()\n",
"bench = db.sql(\"select * from compilers\").fetchall()\n",
"\n",
"\n",
"if not os.path.exists(\"images\"):\n",
" os.mkdir(\"images\")\n"
"id": "4dc1f3ea-b5f7-4be9-84b5-bec031ec64c8",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[('cpu-genoa', 'simple', 'q2-2', 1965920682.2666664, 0), ('gpu-pvc', 'simple', 'q1-2', 1188905080.6600003, 0), ('cpu-genoa', 'naive', 'q2-1', 4554614491.45, 0), ('gpu-a100', 'simple', 'q2-2', 2711211120.55, 0), ('gpu-pvc', 'adaptive', 'q2-2', 2069519806.25, 0), ('cpu-genoa', 'naive', 'q1-1', 2057303104.9, 0), ('cpu-genoa', 'adaptive', 'q1-1', 1427331502.5000002, 0), ('gpu-a100', 'naive', 'q1-1', 2634335646.6, 0), ('standard96_test', 'adaptive', 'q1-1', 2856096966.3, 0), ('gpu-a100', 'adaptive', 'q2-1', 3161887932.4, 0), ('gpu-pvc', 'naive', 'q2-1', 4344107315.5, 0), ('gpu-a100', 'simple', 'q1-2', 1621278906.125, 0), ('gpu-pvc', 'adaptive', 'q1-2', 1193645518.3333335, 0), ('gpu-pvc', 'simple', 'q2-2', 1851910958.3333333, 0), ('standard96_test', 'adaptive', 'q2-1', 4527176129.8, 0), ('cpu-genoa', 'adaptive', 'q2-1', 2486333482.55, 0), ('gpu-pvc', 'naive', 'q1-1', 1855937529.9, 0), ('cpu-genoa', 'simple', 'q1-2', 1169601225.1799998, 0), ('gpu-a100', 'naive', 'q2-1', 6151676922.4, 0), ('gpu-a100', 'adaptive', 'q1-1', 2031796036.85, 0), ('cpu-genoa', 'adaptive', 'q2-2', 2286686439.4, 0), ('standard96_test', 'adaptive', 'q2-2', 4127432462.9, 0), ('gpu-pvc', 'simple', 'q2-1', 1909676239.8, 0), ('gpu-a100', 'naive', 'q2-2', 5367176018.2, 0), ('cpu-genoa', 'naive', 'q1-2', 2028404712.766667, 0), ('gpu-pvc', 'naive', 'q2-2', 3928432040.6, 0), ('gpu-a100', 'adaptive', 'q2-2', 2898331238.95, 0), ('gpu-pvc', 'simple', 'q1-1', 1199158130.4, 0), ('gpu-a100', 'adaptive', 'q1-2', 1739457004.75, 0), ('gpu-a100', 'simple', 'q2-1', 2821338737.2, 0), ('gpu-pvc', 'naive', 'q1-2', 1823770145.1333332, 0), ('gpu-pvc', 'adaptive', 'q2-1', 2328153008.2, 0), ('cpu-genoa', 'simple', 'q1-1', 1194215290.96, 0), ('gpu-pvc', 'adaptive', 'q1-1', 1883442026.8, 0), ('gpu-a100', 'simple', 'q1-1', 1644526456.075, 0), ('cpu-genoa', 'naive', 'q2-2', 3939685557.25, 0), ('cpu-genoa', 'adaptive', 'q1-2', 1318973275.7666667, 0), ('gpu-a100', 'naive', 'q1-2', 2607321752.15, 0), ('standard96_test', 'adaptive', 'q1-2', 2357584990.15, 0), ('cpu-genoa', 'simple', 'q2-1', 2058943305.1666667, 0), ('cpu-genoa', 'simple', 'q2-2', 1965941472.1666667, 10), ('gpu-pvc', 'simple', 'q1-2', 1189074073.92, 10), ('cpu-genoa', 'naive', 'q2-1', 4550878870.45, 10), ('gpu-pvc', 'adaptive', 'q1-1', 1883965552.35, 10), ('gpu-a100', 'simple', 'q1-1', 1645784568.6, 10), ('cpu-genoa', 'naive', 'q2-2', 3963760098.4, 10), ('cpu-genoa', 'adaptive', 'q1-2', 1318563046.6999998, 10), ('gpu-a100', 'naive', 'q1-2', 2599699154.3, 10), ('standard96_test', 'adaptive', 'q1-2', 2355176104.75, 10), ('cpu-genoa', 'simple', 'q2-1', 2063428377.6, 10), ('gpu-a100', 'simple', 'q2-2', 2742825080.45, 10), ('gpu-pvc', 'adaptive', 'q2-2', 2036211409.5, 10), ('cpu-genoa', 'naive', 'q1-1', 2069433206.9666667, 10), ('cpu-genoa', 'adaptive', 'q1-1', 1420880805.4, 10), ('gpu-a100', 'naive', 'q1-1', 2630632230.1, 10), ('standard96_test', 'adaptive', 'q1-1', 2857486966.45, 10), ('gpu-a100', 'adaptive', 'q2-1', 3255507969.2, 10), ('gpu-pvc', 'naive', 'q2-1', 4346479931.4, 10), ('gpu-a100', 'simple', 'q1-2', 1641421875.25, 10), ('gpu-pvc', 'adaptive', 'q1-2', 1199681236.5, 10), ('gpu-pvc', 'naive', 'q2-2', 3926584375.7, 10), ('gpu-a100', 'adaptive', 'q2-2', 2898107310.95, 10), ('gpu-pvc', 'simple', 'q1-1', 1199716181.6, 10), ('gpu-pvc', 'simple', 'q2-2', 1870469519.8, 10), ('standard96_test', 'adaptive', 'q2-1', 4609639085.2, 10), ('cpu-genoa', 'adaptive', 'q2-1', 2501816745.0, 10), ('gpu-pvc', 'naive', 'q1-1', 1859074389.5333333, 10), ('cpu-genoa', 'simple', 'q1-2', 1169509657.2199998, 10), ('gpu-a100', 'naive', 'q2-1', 6110479917.8, 10), ('gpu-a100', 'adaptive', 'q1-1', 2030948360.7, 10), ('cpu-genoa', 'adaptive', 'q2-2', 2289231512.0, 10), ('standard96_test', 'adaptive', 'q2-2', 4123830087.6, 10), ('gpu-pvc', 'simple', 'q2-1', 1921089981.6333337, 10), ('gpu-a100', 'naive', 'q2-2', 5395676544.2, 10), ('cpu-genoa', 'naive', 'q1-2', 2037173776.3666668, 10), ('gpu-a100', 'adaptive', 'q1-2', 1741424331.1, 10), ('gpu-a100', 'simple', 'q2-1', 2821992665.05, 10), ('gpu-pvc', 'naive', 'q1-2', 1824112640.7333336, 10), ('gpu-pvc', 'adaptive', 'q2-1', 2442924701.9, 10), ('cpu-genoa', 'simple', 'q1-1', 1189513336.56, 10), ('gpu-pvc', 'adaptive', 'q1-1', 1886698622.8, 20), ('gpu-a100', 'simple', 'q1-1', 1644648213.975, 20), ('cpu-genoa', 'naive', 'q2-2', 3953210050.85, 20), ('cpu-genoa', 'adaptive', 'q1-2', 1319886968.6333332, 20), ('gpu-a100', 'naive', 'q1-2', 2595990257.05, 20), ('standard96_test', 'adaptive', 'q1-2', 2362589572.45, 20), ('cpu-genoa', 'simple', 'q2-1', 2045232958.3, 20), ('gpu-a100', 'adaptive', 'q1-2', 1739069413.8, 20), ('gpu-a100', 'simple', 'q2-1', 2803609922.9, 20), ('gpu-pvc', 'naive', 'q1-2', 1824635473.7, 20), ('gpu-pvc', 'adaptive', 'q2-1', 2379267695.0, 20), ('cpu-genoa', 'simple', 'q1-1', 1193482556.3, 20), ('cpu-genoa', 'simple', 'q2-2', 1972176728.9999995, 20), ('gpu-pvc', 'simple', 'q1-2', 1189398074.44, 20), ('cpu-genoa', 'naive', 'q2-1', 4550423999.15, 20), ('cpu-genoa', 'adaptive', 'q1-1', 1422476657.8333333, 20), ('gpu-a100', 'naive', 'q1-1', 2633704620.85, 20), ('standard96_test', 'adaptive', 'q1-1', 2853170545.1, 20), ('gpu-a100', 'adaptive', 'q2-1', 3283904431.3, 20), ('gpu-pvc', 'naive', 'q2-1', 4344291868.85, 20), ('gpu-a100', 'simple', 'q1-2', 1633319501.45, 20), ('gpu-pvc', 'adaptive', 'q1-2', 1201517393.3666666, 20), ('cpu-genoa', 'adaptive', 'q2-2', 2284164951.9, 20), ('standard96_test', 'adaptive', 'q2-2', 4124369952.1, 20), ('gpu-pvc', 'simple', 'q2-1', 1911509243.233333, 20), ('gpu-a100', 'naive', 'q2-2', 5395131336.8, 20), ('cpu-genoa', 'naive', 'q1-2', 2029250959.6666665, 20), ('gpu-pvc', 'simple', 'q2-2', 1862018967.1333332, 20), ('standard96_test', 'adaptive', 'q2-1', 4526617459.4, 20), ('cpu-genoa', 'adaptive', 'q2-1', 2493672472.25, 20), ('gpu-pvc', 'naive', 'q1-1', 1856375141.4666665, 20), ('cpu-genoa', 'simple', 'q1-2', 1165413712.32, 20), ('gpu-a100', 'naive', 'q2-1', 6028498144.3, 20), ('gpu-a100', 'adaptive', 'q1-1', 2032032087.55, 20), ('gpu-a100', 'simple', 'q2-2', 2737742532.85, 20), ('gpu-pvc', 'adaptive', 'q2-2', 2045892135.55, 20), ('cpu-genoa', 'naive', 'q1-1', 2067598919.0000005, 20), ('gpu-pvc', 'naive', 'q2-2', 3926909587.85, 20), ('gpu-a100', 'adaptive', 'q2-2', 2900952655.8, 20), ('gpu-pvc', 'simple', 'q1-1', 1198604725.94, 20), ('gpu-a100', 'adaptive', 'q1-2', 1742369053.25, 30), ('gpu-a100', 'simple', 'q2-1', 2834290212.55, 30), ('gpu-pvc', 'naive', 'q1-2', 1824509875.6, 30), ('gpu-pvc', 'adaptive', 'q2-1', 2329390971.65, 30), ('cpu-genoa', 'simple', 'q1-1', 1193696731.44, 30), ('cpu-genoa', 'adaptive', 'q2-2', 2278054071.8, 30), ('standard96_test', 'adaptive', 'q2-2', 4115279425.9, 30), ('gpu-pvc', 'simple', 'q2-1', 1902347729.733333, 30), ('gpu-a100', 'naive', 'q2-2', 5370604033.8, 30), ('cpu-genoa', 'naive', 'q1-2', 2024819278.0333333, 30), ('gpu-pvc', 'adaptive', 'q1-1', 1884063970.85, 30), ('gpu-a100', 'simple', 'q1-1', 1645825263.85, 30), ('cpu-genoa', 'naive', 'q2-2', 3951399745.2, 30), ('cpu-genoa', 'adaptive', 'q1-2', 1322599934.8333333, 30), ('gpu-a100', 'naive', 'q1-2', 2600627620.25, 30), ('standard96_test', 'adaptive', 'q1-2', 2355413264.45, 30), ('cpu-genoa', 'simple', 'q2-1', 2050950482.3666668, 30), ('cpu-genoa', 'adaptive', 'q1-1', 1424639047.6666665, 30), ('gpu-a100', 'naive', 'q1-1', 2631318875.85, 30), ('standard96_test', 'adaptive', 'q1-1', 2855564216.8, 30), ('gpu-a100', 'adaptive', 'q2-1', 3206763601.9, 30), ('gpu-pvc', 'naive', 'q2-1', 4344538049.85, 30), ('gpu-a100', 'simple', 'q1-2', 1627303750.65, 30), ('gpu-pvc', 'adaptive', 'q1-2', 1202739378.1333334, 30), ('gpu-a100', 'simple', 'q2-2', 2725254768.95, 30), ('gpu-pvc', 'adaptive', 'q2-2', 2064369424.1, 30), ('cpu-genoa', 'naive', 'q1-1', 2065522017.4999995, 30), ('gpu-pvc', 'naive', 'q2-2', 3927317230.45, 30), ('gpu-a100', 'adaptive', 'q2-2', 2890160123.55, 30), ('gpu-pvc', 'simple', 'q1-1', 1198092355.7199998, 30), ('gpu-pvc', 'simple', 'q2-2', 1861029331.0666664, 30), ('standard96_test', 'adaptive', 'q2-1', 4516186331.5, 30), ('cpu-genoa', 'adaptive', 'q2-1', 2494586925.45, 30), ('gpu-pvc', 'naive', 'q1-1', 1855217547.4333336, 30), ('cpu-genoa', 'simple', 'q1-2', 1163101805.18, 30), ('gpu-a100', 'naive', 'q2-1', 5943378144.1, 30), ('gpu-a100', 'adaptive', 'q1-1', 2027766058.0, 30), ('cpu-genoa', 'simple', 'q2-2', 1973271697.4, 30), ('gpu-pvc', 'simple', 'q1-2', 1188855738.5, 30), ('cpu-genoa', 'naive', 'q2-1', 4545353506.7, 30), ('gpu-a100', 'adaptive', 'q1-2', 1743269446.55, 40), ('gpu-a100', 'simple', 'q2-1', 2788294169.4, 40), ('gpu-pvc', 'naive', 'q1-2', 1822419408.8, 40), ('gpu-pvc', 'adaptive', 'q2-1', 2324143402.45, 40), ('cpu-genoa', 'simple', 'q1-1', 1190621463.34, 40), ('cpu-genoa', 'adaptive', 'q1-1', 1426260784.9333332, 40), ('gpu-a100', 'naive', 'q1-1', 2627841697.3, 40), ('standard96_test', 'adaptive', 'q1-1', 2856424991.85, 40), ('gpu-a100', 'adaptive', 'q2-1', 3187580176.8, 40), ('gpu-pvc', 'naive', 'q2-1', 4347510966.25, 40), ('gpu-a100', 'simple', 'q1-2', 1628443851.85, 40), ('gpu-pvc', 'adaptive', 'q1-2', 1204086466.8000002, 40), ('cpu-genoa', 'simple', 'q2-2', 1971589738.4999995, 40), ('gpu-pvc', 'simple', 'q1-2', 1190761063.6000001, 40), ('cpu-genoa', 'naive', 'q2-1', 4504246773.8, 40), ('cpu-genoa', 'adaptive', 'q2-2', 2273277607.9, 40), ('standard96_test', 'adaptive', 'q2-2', 4118777474.7, 40), ('gpu-pvc', 'simple', 'q2-1', 1906537421.8, 40), ('gpu-a100', 'naive', 'q2-2', 5395535590.6, 40), ('cpu-genoa', 'naive', 'q1-2', 2030606510.5666664, 40), ('gpu-pvc', 'adaptive', 'q1-1', 1884562162.15, 40), ('gpu-a100', 'simple', 'q1-1', 1644399182.325, 40), ('cpu-genoa', 'naive', 'q2-2', 3953214243.3, 40), ('cpu-genoa', 'adaptive', 'q1-2', 1322603055.0000002, 40), ('gpu-a100', 'naive', 'q1-2', 2603135811.85, 40), ('standard96_test', 'adaptive', 'q1-2', 2356786930.25, 40), ('cpu-genoa', 'simple', 'q2-1', 2054303778.6333337, 40), ('gpu-pvc', 'simple', 'q2-2', 1873818762.5333328, 40), ('standard96_test', 'adaptive', 'q2-1', 4507119343.4, 40), ('cpu-genoa', 'adaptive', 'q2-1', 2496467692.55, 40), ('gpu-pvc', 'naive', 'q1-1', 1854890951.4333332, 40), ('cpu-genoa', 'simple', 'q1-2', 1175138604.0400002, 40), ('gpu-a100', 'naive', 'q2-1', 5955264480.5, 40), ('gpu-a100', 'adaptive', 'q1-1', 2029808814.75, 40), ('gpu-a100', 'simple', 'q2-2', 2752869244.65, 40), ('gpu-pvc', 'adaptive', 'q2-2', 2038576428.2, 40), ('cpu-genoa', 'naive', 'q1-1', 2062889003.5999997, 40), ('gpu-pvc', 'naive', 'q2-2', 3926794158.65, 40), ('gpu-a100', 'adaptive', 'q2-2', 2886659361.05, 40), ('gpu-pvc', 'simple', 'q1-1', 1198375769.22, 40), ('cpu-genoa', 'adaptive', 'q2-2', 2273617795.0, 50), ('standard96_test', 'adaptive', 'q2-2', 4132599859.7, 50), ('gpu-pvc', 'simple', 'q2-1', 1909756704.0333335, 50), ('gpu-a100', 'naive', 'q2-2', 5383861608.5, 50), ('cpu-genoa', 'naive', 'q1-2', 2020093056.0333333, 50), ('gpu-pvc', 'naive', 'q2-2', 3928523530.5, 50), ('gpu-a100', 'adaptive', 'q2-2', 2898271620.7, 50), ('gpu-pvc', 'simple', 'q1-1', 1197806509.52, 50), ('gpu-pvc', 'adaptive', 'q1-1', 1885533326.65, 50), ('gpu-a100', 'simple', 'q1-1', 1640515486.25, 50), ('cpu-genoa', 'naive', 'q2-2', 3965088982.25, 50), ('cpu-genoa', 'adaptive', 'q1-2', 1321873076.6, 50), ('gpu-a100', 'naive', 'q1-2', 2594050703.3, 50), ('standard96_test', 'adaptive', 'q1-2', 2355422902.15, 50), ('cpu-genoa', 'simple', 'q2-1', 2057154670.266667, 50), ('gpu-pvc', 'simple', 'q2-2', 1868280692.5, 50), ('standard96_test', 'adaptive', 'q2-1', 4513652786.1, 50), ('cpu-genoa', 'adaptive', 'q2-1', 2494295415.55, 50), ('gpu-pvc', 'naive', 'q1-1', 1855398716.3, 50), ('cpu-genoa', 'simple', 'q1-2', 1177234455.8000002, 50), ('gpu-a100', 'naive', 'q2-1', 5903337672.2, 50), ('gpu-a100', 'adaptive', 'q1-1', 2029175158.6, 50), ('gpu-a100', 'adaptive', 'q1-2', 1742822376.2, 50), ('gpu-a100', 'simple', 'q2-1', 2815012712.7, 50), ('gpu-pvc', 'naive', 'q1-2', 1823323446.766667, 50), ('gpu-pvc', 'adaptive', 'q2-1', 2322885710.2, 50), ('cpu-genoa', 'simple', 'q1-1', 1184005154.3600001, 50), ('cpu-genoa', 'simple', 'q2-2', 1983150090.4333332, 50), ('gpu-pvc', 'simple', 'q1-2', 1189578640.22, 50), ('cpu-genoa', 'naive', 'q2-1', 4472590290.6, 50), ('cpu-genoa', 'adaptive', 'q1-1', 1435503535.6, 50), ('gpu-a100', 'naive', 'q1-1', 2633267872.45, 50), ('standard96_test', 'adaptive', 'q1-1', 2854062113.65, 50), ('gpu-a100', 'adaptive', 'q2-1', 3177751050.4, 50), ('gpu-pvc', 'naive', 'q2-1', 4344605714.15, 50), ('gpu-a100', 'simple', 'q1-2', 1626311867.3, 50), ('gpu-pvc', 'adaptive', 'q1-2', 1204826188.766667, 50), ('gpu-a100', 'simple', 'q2-2', 2743546268.55, 50), ('gpu-pvc', 'adaptive', 'q2-2', 2033429393.15, 50), ('cpu-genoa', 'naive', 'q1-1', 2070414744.7, 50), ('gpu-pvc', 'adaptive', 'q1-1', 1885620318.7, 60), ('gpu-a100', 'simple', 'q1-1', 1641008738.75, 60), ('cpu-genoa', 'naive', 'q2-2', 3963039923.45, 60), ('cpu-genoa', 'adaptive', 'q1-2', 1318685558.4666667, 60), ('gpu-a100', 'naive', 'q1-2', 2603218118.55, 60), ('standard96_test', 'adaptive', 'q1-2', 2351556721.05, 60), ('cpu-genoa', 'simple', 'q2-1', 2064465859.0333335, 60), ('gpu-pvc', 'simple', 'q2-2', 1877702099.3666668, 60), ('standard96_test', 'adaptive', 'q2-1', 4511304483.3, 60), ('cpu-genoa', 'adaptive', 'q2-1', 2490165236.95, 60), ('gpu-pvc', 'naive', 'q1-1', 1855476385.233333, 60), ('cpu-genoa', 'simple', 'q1-2', 1174405371.76, 60), ('gpu-a100', 'naive', 'q2-1', 5898890458.3, 60), ('gpu-a100', 'adaptive', 'q1-1', 2027688848.25, 60), ('cpu-genoa', 'simple', 'q2-2', 1963720436.1333337, 60), ('gpu-pvc', 'simple', 'q1-2', 1189990650.3600001, 60), ('cpu-genoa', 'naive', 'q2-1', 4427777595.4, 60), ('cpu-genoa', 'adaptive', 'q2-2', 2263916697.4, 60), ('standard96_test', 'adaptive', 'q2-2', 4121886743.2, 60), ('gpu-pvc', 'simple', 'q2-1', 1919486911.4333336, 60), ('gpu-a100', 'naive', 'q2-2', 5373230341.3, 60), ('cpu-genoa', 'naive', 'q1-2', 2032399478.8666663, 60), ('gpu-a100', 'simple', 'q2-2', 2751525030.85, 60), ('gpu-pvc', 'adaptive', 'q2-2', 2040842441.2, 60), ('cpu-genoa', 'naive', 'q1-1', 2071513829.3, 60), ('cpu-genoa', 'adaptive', 'q1-1', 1442462720.4, 60), ('gpu-a100', 'naive', 'q1-1', 2634903686.5, 60), ('standard96_test', 'adaptive', 'q1-1', 2853424815.05, 60), ('gpu-a100', 'adaptive', 'q2-1', 3174706799.3, 60), ('gpu-pvc', 'naive', 'q2-1', 4343844590.05, 60), ('gpu-a100', 'simple', 'q1-2', 1625158127.275, 60), ('gpu-pvc', 'adaptive', 'q1-2', 1205128491.2999997, 60), ('gpu-a100', 'adaptive', 'q1-2', 1746720134.25, 60), ('gpu-a100', 'simple', 'q2-1', 2805654025.35, 60), ('gpu-pvc', 'naive', 'q1-2', 1822897965.6666667, 60), ('gpu-pvc', 'adaptive', 'q2-1', 2322618304.8, 60), ('cpu-genoa', 'simple', 'q1-1', 1188542731.1, 60), ('gpu-pvc', 'naive', 'q2-2', 3939170952.85, 60), ('gpu-a100', 'adaptive', 'q2-2', 2886014829.65, 60), ('gpu-pvc', 'simple', 'q1-1', 1197753913.1, 60), ('gpu-pvc', 'simple', 'q2-2', 1880748454.1333337, 70), ('standard96_test', 'adaptive', 'q2-1', 4519638779.3, 70), ('cpu-genoa', 'adaptive', 'q2-1', 2492309938.45, 70), ('gpu-pvc', 'naive', 'q1-1', 1854153073.1, 70), ('cpu-genoa', 'simple', 'q1-2', 1175692286.26, 70), ('gpu-a100', 'naive', 'q2-1', 5871528671.5, 70), ('gpu-a100', 'adaptive', 'q1-1', 2027424750.35, 70), ('gpu-pvc', 'adaptive', 'q1-1', 1883064914.95, 70), ('gpu-a100', 'simple', 'q1-1', 1644734328.3, 70), ('cpu-genoa', 'naive', 'q2-2', 3957519720.55, 70), ('cpu-genoa', 'adaptive', 'q1-2', 1319230539.5333333, 70), ('gpu-a100', 'naive', 'q1-2', 2594053921.3, 70), ('standard96_test', 'adaptive', 'q1-2', 2359426851.65, 70), ('cpu-genoa', 'simple', 'q2-1', 2049690425.5, 70), ('cpu-genoa', 'adaptive', 'q1-1', 1457807931.9, 70), ('gpu-a100', 'naive', 'q1-1', 2637367597.2, 70), ('standard96_test', 'adaptive', 'q1-1', 2853629358.8, 70), ('gpu-a100', 'adaptive', 'q2-1', 3159885124.2, 70), ('gpu-pvc', 'naive', 'q2-1', 4343791739.3, 70), ('gpu-a100', 'simple', 'q1-2', 1623015653.875, 70), ('gpu-pvc', 'adaptive', 'q1-2', 1204679881.5333333, 70), ('gpu-a100', 'adaptive', 'q1-2', 1745412788.05, 70), ('gpu-a100', 'simple', 'q2-1', 2820406852.45, 70), ('gpu-pvc', 'naive', 'q1-2', 1825250832.4, 70), ('gpu-pvc', 'adaptive', 'q2-1', 2319507738.05, 70), ('cpu-genoa', 'simple', 'q1-1', 1188359500.96, 70), ('cpu-genoa', 'adaptive', 'q2-2', 2270096220.75, 70), ('standard96_test', 'adaptive', 'q2-2', 4109521526.9, 70), ('gpu-pvc', 'simple', 'q2-1', 1914232117.8666663, 70), ('gpu-a100', 'naive', 'q2-2', 5376834601.3, 70), ('cpu-genoa', 'naive', 'q1-2', 2028604094.7, 70), ('cpu-genoa', 'simple', 'q2-2', 1998097878.1, 70), ('gpu-pvc', 'simple', 'q1-2', 1189968713.24, 70), ('cpu-genoa', 'naive', 'q2-1', 4381886574.15, 70), ('gpu-pvc', 'naive', 'q2-2', 3928088414.75, 70), ('gpu-a100', 'adaptive', 'q2-2', 2885654689.35, 70), ('gpu-pvc', 'simple', 'q1-1', 1198753838.52, 70), ('gpu-a100', 'simple', 'q2-2', 2702943262.45, 70), ('gpu-pvc', 'adaptive', 'q2-2', 2041279985.3, 70), ('cpu-genoa', 'naive', 'q1-1', 2065103958.4000003, 70), ('cpu-genoa', 'simple', 'q2-2', 1988327107.233333, 80), ('gpu-pvc', 'simple', 'q1-2', 1188981280.48, 80), ('cpu-genoa', 'naive', 'q2-1', 4326185765.3, 80), ('gpu-a100', 'simple', 'q2-2', 2688655063.65, 80), ('gpu-pvc', 'adaptive', 'q2-2', 2028213177.5, 80), ('cpu-genoa', 'naive', 'q1-1', 2053759686.1333332, 80), ('cpu-genoa', 'adaptive', 'q2-2', 2266269756.0, 80), ('standard96_test', 'adaptive', 'q2-2', 4113549783.0, 80), ('gpu-pvc', 'simple', 'q2-1', 1909912524.9000003, 80), ('gpu-a100', 'naive', 'q2-2', 5368765368.4, 80), ('cpu-genoa', 'naive', 'q1-2', 2018469476.4666667, 80), ('cpu-genoa', 'adaptive', 'q1-1', 1450889904.4666667, 80), ('gpu-a100', 'naive', 'q1-1', 2634492003.45, 80), ('standard96_test', 'adaptive', 'q1-1', 2854657659.0, 80), ('gpu-a100', 'adaptive', 'q2-1', 3153056035.4, 80), ('gpu-pvc', 'naive', 'q2-1', 4349270706.35, 80), ('gpu-a100', 'simple', 'q1-2', 1621047478.85, 80), ('gpu-pvc', 'adaptive', 'q1-2', 1205190449.7666667, 80), ('gpu-a100', 'adaptive', 'q1-2', 1743483274.4, 80), ('gpu-a100', 'simple', 'q2-1', 2795421779.8, 80), ('gpu-pvc', 'naive', 'q1-2', 1823661605.6666665, 80), ('gpu-pvc', 'adaptive', 'q2-1', 2325529280.45, 80), ('cpu-genoa', 'simple', 'q1-1', 1191168967.7800002, 80), ('gpu-pvc', 'adaptive', 'q1-1', 1884601310.7, 80), ('gpu-a100', 'simple', 'q1-1', 1642086509.125, 80), ('cpu-genoa', 'naive', 'q2-2', 3956674796.05, 80), ('cpu-genoa', 'adaptive', 'q1-2', 1321470276.6333334, 80), ('gpu-a100', 'naive', 'q1-2', 2597388255.25, 80), ('standard96_test', 'adaptive', 'q1-2', 2352151336.75, 80), ('cpu-genoa', 'simple', 'q2-1', 2054127014.4, 80), ('gpu-pvc', 'naive', 'q2-2', 3924699152.85, 80), ('gpu-a100', 'adaptive', 'q2-2', 2885692516.85, 80), ('gpu-pvc', 'simple', 'q1-1', 1199440493.62, 80), ('gpu-pvc', 'simple', 'q2-2', 1866393031.7333336, 80), ('standard96_test', 'adaptive', 'q2-1', 4505577712.6, 80), ('cpu-genoa', 'adaptive', 'q2-1', 2498837609.7, 80), ('gpu-pvc', 'naive', 'q1-1', 1854091699.0333333, 80), ('cpu-genoa', 'simple', 'q1-2', 1175791268.24, 80), ('gpu-a100', 'naive', 'q2-1', 5876001136.7, 80), ('gpu-a100', 'adaptive', 'q1-1', 2023810452.9, 80), ('gpu-a100', 'simple', 'q2-2', 2696311165.95, 90), ('gpu-pvc', 'adaptive', 'q2-2', 2025413834.0, 90), ('cpu-genoa', 'naive', 'q1-1', 2051382702.9333332, 90), ('gpu-pvc', 'adaptive', 'q1-1', 1886499297.3, 90), ('gpu-a100', 'simple', 'q1-1', 1640217399.325, 90), ('cpu-genoa', 'naive', 'q2-2', 3946781673.6, 90), ('cpu-genoa', 'adaptive', 'q1-2', 1321464517.3666668, 90), ('gpu-a100', 'naive', 'q1-2', 2595966830.05, 90), ('standard96_test', 'adaptive', 'q1-2', 2351708492.55, 90), ('cpu-genoa', 'simple', 'q2-1', 2062626139.5333333, 90), ('cpu-genoa', 'adaptive', 'q1-1', 1443573589.2, 90), ('gpu-a100', 'naive', 'q1-1', 2634523771.3, 90), ('standard96_test', 'adaptive', 'q1-1', 2855240409.9, 90), ('gpu-a100', 'adaptive', 'q2-1', 3156240529.0, 90), ('gpu-pvc', 'naive', 'q2-1', 4346059235.4, 90), ('gpu-a100', 'simple', 'q1-2', 1622120454.2, 90), ('gpu-pvc', 'adaptive', 'q1-2', 1205684751.3666666, 90), ('cpu-genoa', 'adaptive', 'q2-2', 2268519178.7, 90), ('standard96_test', 'adaptive', 'q2-2', 4110910813.8, 90), ('gpu-pvc', 'simple', 'q2-1', 1912589158.1333332, 90), ('gpu-a100', 'naive', 'q2-2', 5386158382.6, 90), ('cpu-genoa', 'naive', 'q1-2', 2011010407.1333332, 90), ('gpu-pvc', 'naive', 'q2-2', 3924815455.1, 90), ('gpu-a100', 'adaptive', 'q2-2', 2881687898.55, 90), ('gpu-pvc', 'simple', 'q1-1', 1198455453.2599998, 90), ('gpu-a100', 'adaptive', 'q1-2', 1745080172.8, 90), ('gpu-a100', 'simple', 'q2-1', 2820965809.75, 90), ('gpu-pvc', 'naive', 'q1-2', 1822073902.2666664, 90), ('gpu-pvc', 'adaptive', 'q2-1', 2332914865.4, 90), ('cpu-genoa', 'simple', 'q1-1', 1187870539.5399997, 90), ('gpu-pvc', 'simple', 'q2-2', 1863254618.9, 90), ('standard96_test', 'adaptive', 'q2-1', 4516886524.1, 90), ('cpu-genoa', 'adaptive', 'q2-1', 2510034608.05, 90), ('gpu-pvc', 'naive', 'q1-1', 1854280275.0333333, 90), ('cpu-genoa', 'simple', 'q1-2', 1175293533.8799999, 90), ('gpu-a100', 'naive', 'q2-1', 5868396299.3, 90), ('gpu-a100', 'adaptive', 'q1-1', 2024203331.0, 90), ('cpu-genoa', 'simple', 'q2-2', 1989044650.8999996, 90), ('gpu-pvc', 'simple', 'q1-2', 1188610797.96, 90), ('cpu-genoa', 'naive', 'q2-1', 4338039549.3, 90)]\n",
" partition compiler query duration iter_number\n",
"0 cpu-genoa simple q2-2 1.965921 0\n",
"1 gpu-pvc simple q1-2 1.188905 0\n",
"2 cpu-genoa naive q2-1 4.554614 0\n",
"3 gpu-a100 simple q2-2 2.711211 0\n",
"4 gpu-pvc adaptive q2-2 2.069520 0\n",
".. ... ... ... ... ...\n",
"395 gpu-a100 naive q2-1 5.868396 90\n",
"396 gpu-a100 adaptive q1-1 2.024203 90\n",
"397 cpu-genoa simple q2-2 1.989045 90\n",
"398 gpu-pvc simple q1-2 1.188611 90\n",
"399 cpu-genoa naive q2-1 4.338040 90\n",
"\n",
"[400 rows x 5 columns]\n"
]
}
],
"source": [
"bins = [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]\n",
"for i in range(1, len(bins)):\n",
" values.extend(db.sql(\"\"\"\n",
" select\n",
" (select name from partitions where id = partition) as partition,\n",
" (select name from compilers where id = compiler) as compiler,\n",
" (select name from queries where id = query) as query,\n",
" avg(duration / iter_count) as duration,\n",
" %d\n",
" from measurements\n",
" where bench = (select id from bench_types where name = 'criterion') and\n",
" iter_number < %d and iter_number >= %d\n",
" group by partition, compiler, query;\"\"\" % (bins[i-1], bins[i], bins[i-1])).fetchall())\n",
"\n",
"print(values)\n",
"binned_df = pd.DataFrame(values, columns =['partition', \"compiler\", \"query\", \"duration\", \"iter_number\"])\n",
"binned_df[\"duration\"] = pd.to_timedelta(binned_df['duration'], unit='ns').dt.total_seconds()\n",
"print(binned_df)"
"id": "bea4da13-2431-4531-ba49-71d5fb3b5b3a",
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "query=q2-2<br>iteration (mean over 10 samples)=%{x}<br>duration in seconds=%{y}<extra></extra>",
"legendgroup": "q2-2",
"marker": {
"color": "red",
"symbol": "circle"
},
"mode": "markers",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
10,
20,
2.069519806,
2.036211409,
2.045892135,
2.064369424,
2.038576428,
2.033429393,
2.040842441,
2.041279985,
2.028213177,
2.025413834
"hovertemplate": "query=q1-2<br>iteration (mean over 10 samples)=%{x}<br>duration in seconds=%{y}<extra></extra>",
"legendgroup": "q1-2",
"marker": {
"color": "blue",
"symbol": "circle"
},
"mode": "markers",
"name": "q1-2",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
10,
20,
30,
1.193645518,
1.199681236,
1.201517393,
1.202739378,
1.204086466,
1.204826188,
1.205128491,
1.204679881,
1.205190449,
1.205684751
"hovertemplate": "query=q2-1<br>iteration (mean over 10 samples)=%{x}<br>duration in seconds=%{y}<extra></extra>",
"legendgroup": "q2-1",
"marker": {
"color": "yellow",
"symbol": "circle"
},
"mode": "markers",
"name": "q2-1",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
10,
2.328153008,
2.442924701,
2.379267695,
2.329390971,
2.324143402,
2.32288571,
2.322618304,
2.319507738,
2.32552928,
2.332914865
"hovertemplate": "query=q1-1<br>iteration (mean over 10 samples)=%{x}<br>duration in seconds=%{y}<extra></extra>",
"legendgroup": "q1-1",
"marker": {
"color": "purple",
"symbol": "circle"
},
"mode": "markers",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
1.883442026,
1.883965552,
1.886698622,
1.88406397,
1.884562162,
1.885533326,
1.885620318,
1.883064914,
1.88460131,
1.886499297
],
"yaxis": "y"
}
],
"layout": {
"height": 360,
"legend": {
"title": {
"text": "query"
},
"tracegroupgap": 0
},
"paper_bgcolor": "rgba(0, 0, 0, 0)",
"plot_bgcolor": "rgba(0, 0, 0, 0)",
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "rgb(36,36,36)"
},
"error_y": {
"color": "rgb(36,36,36)"
},
"marker": {
"line": {
"color": "rgb(234,234,242)",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "rgb(234,234,242)",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "rgb(36,36,36)",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "rgb(36,36,36)"
},
"baxis": {
"endlinecolor": "rgb(36,36,36)",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "rgb(36,36,36)"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "rgb(231,231,240)"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "rgb(183,183,191)"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "rgb(67,103,167)"
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"colorscale": {
"sequential": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"sequentialminus": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
]
},
"colorway": [
"rgb(76,114,176)",
"rgb(221,132,82)",
"rgb(85,168,104)",
"rgb(196,78,82)",
"rgb(129,114,179)",
"rgb(147,120,96)",
"rgb(218,139,195)",
"rgb(140,140,140)",
"rgb(204,185,116)",
"rgb(100,181,205)"
],
"font": {
"color": "rgb(36,36,36)"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "rgb(234,234,242)",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"paper_bgcolor": "white",
"plot_bgcolor": "rgb(234,234,242)",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"showgrid": true,
"ticks": ""
},
"bgcolor": "rgb(234,234,242)",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"showgrid": true,
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "rgb(234,234,242)",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"showgrid": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "rgb(234,234,242)",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"showgrid": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "rgb(234,234,242)",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"showgrid": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"fillcolor": "rgb(67,103,167)",
"line": {
"width": 0
},
"opacity": 0.5
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"showgrid": true,
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"showgrid": true,
"ticks": ""
},
"bgcolor": "rgb(234,234,242)",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"showgrid": true,
"ticks": ""
}
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"showgrid": true,
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white"
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"showgrid": true,
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white"
}
}
},
"title": {
"text": "Queries for Adaptive Compiler on gpu-pvc"
"xaxis": {
"anchor": "y",
"domain": [
0,
1
],
"range": [
0,
100
],
"title": {
"text": "iteration (mean over 10 samples)"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"domain": [
0,
1
],
"range": [
0,
10
],
"title": {
"text": "duration in seconds"
},
"type": "linear"
}
}
},
"image/png": "iVBORw0KGgoAAAANSUhEUgAABNYAAAFoCAYAAACbjXYdAAAgAElEQVR4XuzdCZwbdf3/8ex2eyzQSwotbWn3KFK5Kx5AOQoCKoKAP1CunxTkxgsE5dQCcqnILQUEyuEPEQFB5D7Kn0MQseAJtN3u9lhaWqUtped29//+hElNQ3aTyRz5JvPK45Emmcx85/t9fifZybvfmalJcUMAAQQQQAABBBBAAAEEEEAAAQQQQAAB3wI1vpdgAQQQQAABBBBAAAEEEEAAAQQQQAABBBBIEayxESCAAAIIIIAAAggggAACCCCAAAIIIFCCAMFaCWgsggACCCCAAAIIIIAAAggggAACCCCAAMEa2wACCCCAAAIIIIAAAggggAACCCCAAAIlCBCslYDGIggggAACCCCAAAIIIIAAAggggAACCBCssQ0ggAACCCCAAAIIIIAAAggggAACCCBQggDBWgloLIIAAggggAACCCCAAAIIIIAAAggggADBGtsAAggggAACCCCAAAIIIIAAAggggAACJQgQrJWAxiIIIIAAAggggAACCCCAAAIIIIAAAggQrLENIIAAAggggAACCCCAAAIIIIAAAgggUIIAwVoJaCyCAAIIIIAAAggggAACCCCAAAIIIIAAwRrbAAIIIIAAAggggAACCCCAAAIIIIAAAiUIEKyVgMYiCCCAAAIIIIAAAggggAACCCCAAAIIEKyxDSCAAAIIIIAAAggggAACCCCAAAIIIFCCAMFaCWgsggACCCCAAAIIIIAAAggggAACCCCAAMEa2wACCCCAAAIIIIAAAggggAACCCCAAAIlCBCslYDGIggggAACCCCAAAIIIIAAAggggAACCBCssQ0ggAACCCCAAAIIIIAAAggggAACCCBQggDBWgloLIIAAggggAACCCCAAAIIIIAAAggggADBGtsAAggggAACCCCAAAIIIIAAAggggAACJQgQrJWAxiIIIIAAAggggAACCCCAAAIIIIAAAggQrLENIIAAAggggAACCCCAAAIIIIAAAgggUIIAwVoJaCyCAAIIIIAAAggggAACCCCAAAIIIIAAwRrbAAIIIIAAAggggAACCCCAAAIIIIAAAiUIEKyVgMYiCCCAAAIIIIAAAggggAACCCCAAAIIEKyxDSCAAAIIIIAAAggggAACCCCAAAIIIFCCAMFaCWgsggACCCCA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",
"<div> <div id=\"2df465b8-ed3d-40f4-98b4-ffc07fb77698\" class=\"plotly-graph-div\" style=\"height:525px; width:500px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"2df465b8-ed3d-40f4-98b4-ffc07fb77698\")) { Plotly.newPlot( \"2df465b8-ed3d-40f4-98b4-ffc07fb77698\", [{\"hovertemplate\":\"query=q2-2\\u003cbr\\u003eiteration (mean over 10 samples)=%{x}\\u003cbr\\u003eduration in seconds=%{y}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"legendgroup\":\"q2-2\",\"marker\":{\"color\":\"red\",\"symbol\":\"circle\"},\"mode\":\"markers\",\"name\":\"q2-2\",\"orientation\":\"v\",\"showlegend\":true,\"x\":[0,10,20,30,40,50,60,70,80,90],\"xaxis\":\"x\",\"y\":[2.069519806,2.036211409,2.045892135,2.064369424,2.038576428,2.033429393,2.040842441,2.041279985,2.028213177,2.025413834],\"yaxis\":\"y\",\"type\":\"scatter\"},{\"hovertemplate\":\"query=q1-2\\u003cbr\\u003eiteration (mean over 10 samples)=%{x}\\u003cbr\\u003eduration in seconds=%{y}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"legendgroup\":\"q1-2\",\"marker\":{\"color\":\"blue\",\"symbol\":\"circle\"},\"mode\":\"markers\",\"name\":\"q1-2\",\"orientation\":\"v\",\"showlegend\":true,\"x\":[0,10,20,30,40,50,60,70,80,90],\"xaxis\":\"x\",\"y\":[1.193645518,1.199681236,1.201517393,1.202739378,1.204086466,1.204826188,1.205128491,1.204679881,1.205190449,1.205684751],\"yaxis\":\"y\",\"type\":\"scatter\"},{\"hovertemplate\":\"query=q2-1\\u003cbr\\u003eiteration (mean over 10 samples)=%{x}\\u003cbr\\u003eduration in seconds=%{y}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"legendgroup\":\"q2-1\",\"marker\":{\"color\":\"yellow\",\"symbol\":\"circle\"},\"mode\":\"markers\",\"name\":\"q2-1\",\"orientation\":\"v\",\"showlegend\":true,\"x\":[0,10,20,30,40,50,60,70,80,90],\"xaxis\":\"x\",\"y\":[2.328153008,2.442924701,2.379267695,2.329390971,2.324143402,2.32288571,2.322618304,2.319507738,2.32552928,2.332914865],\"yaxis\":\"y\",\"type\":\"scatter\"},{\"hovertemplate\":\"query=q1-1\\u003cbr\\u003eiteration (mean over 10 samples)=%{x}\\u003cbr\\u003eduration in seconds=%{y}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"legendgroup\":\"q1-1\",\"marker\":{\"color\":\"purple\",\"symbol\":\"circle\"},\"mode\":\"markers\",\"name\":\"q1-1\",\"orientation\":\"v\",\"showlegend\":true,\"x\":[0,10,20,30,40,50,60,70,80,90],\"xaxis\":\"x\",\"y\":[1.883442026,1.883965552,1.886698622,1.88406397,1.884562162,1.885533326,1.885620318,1.883064914,1.88460131,1.886499297],\"yaxis\":\"y\",\"type\":\"scatter\"}], {\"template\":{\"data\":{\"barpolar\":[{\"marker\":{\"line\":{\"color\":\"rgb(234,234,242)\",\"width\":0.5},\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"barpolar\"}],\"bar\":[{\"error_x\":{\"color\":\"rgb(36,36,36)\"},\"error_y\":{\"color\":\"rgb(36,36,36)\"},\"marker\":{\"line\":{\"color\":\"rgb(234,234,242)\",\"width\":0.5},\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"bar\"}],\"carpet\":[{\"aaxis\":{\"endlinecolor\":\"rgb(36,36,36)\",\"gridcolor\":\"white\",\"linecolor\":\"white\",\"minorgridcolor\":\"white\",\"startlinecolor\":\"rgb(36,36,36)\"},\"baxis\":{\"endlinecolor\":\"rgb(36,36,36)\",\"gridcolor\":\"white\",\"linecolor\":\"white\",\"minorgridcolor\":\"white\",\"startlinecolor\":\"rgb(36,36,36)\"},\"type\":\"carpet\"}],\"choropleth\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"type\":\"choropleth\"}],\"contourcarpet\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"type\":\"contourcarpet\"}],\"contour\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"colorscale\":[[0.0,\"rgb(2,4,25)\"],[0.06274509803921569,\"rgb(24,15,41)\"],[0.12549019607843137,\"rgb(47,23,57)\"],[0.18823529411764706,\"rgb(71,28,72)\"],[0.25098039215686274,\"rgb(97,30,82)\"],[0.3137254901960784,\"rgb(123,30,89)\"],[0.3764705882352941,\"rgb(150,27,91)\"],[0.4392156862745098,\"rgb(177,22,88)\"],[0.5019607843137255,\"rgb(203,26,79)\"],[0.5647058823529412,\"rgb(223,47,67)\"],[0.6274509803921569,\"rgb(236,76,61)\"],[0.6901960784313725,\"rgb(242,107,73)\"],[0.7529411764705882,\"rgb(244,135,95)\"],[0.8156862745098039,\"rgb(245,162,122)\"],[0.8784313725490196,\"rgb(246,188,153)\"],[0.9411764705882353,\"rgb(247,212,187)\"],[1.0,\"rgb(250,234,220)\"]],\"type\":\"contour\"}],\"heatmapgl\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"colorscale\":[[0.0,\"rgb(2,4,25)\"],[0.06274509803921569,\"rgb(24,15,41)\"],[0.12549019607843137,\"rgb(47,23,57)\"],[0.18823529411764706,\"rgb(71,28,72)\"],[0.25098039215686274,\"rgb(97,30,82)\"],[0.3137254901960784,\"rgb(123,30,89)\"],[0.3764705882352941,\"rgb(150,27,91)\"],[0.4392156862745098,\"rgb(177,22,88)\"],[0.5019607843137255,\"rgb(203,26,79)\"],[0.5647058823529412,\"rgb(223,47,67)\"],[0.6274509803921569,\"rgb(236,76,61)\"],[0.6901960784313725,\"rgb(242,107,73)\"],[0.7529411764705882,\"rgb(244,135,95)\"],[0.8156862745098039,\"rgb(245,162,122)\"],[0.8784313725490196,\"rgb(246,188,153)\"],[0.9411764705882353,\"rgb(247,212,187)\"],[1.0,\"rgb(250,234,220)\"]],\"type\":\"heatmapgl\"}],\"heatmap\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"colorscale\":[[0.0,\"rgb(2,4,25)\"],[0.06274509803921569,\"rgb(24,15,41)\"],[0.12549019607843137,\"rgb(47,23,57)\"],[0.18823529411764706,\"rgb(71,28,72)\"],[0.25098039215686274,\"rgb(97,30,82)\"],[0.3137254901960784,\"rgb(123,30,89)\"],[0.3764705882352941,\"rgb(150,27,91)\"],[0.4392156862745098,\"rgb(177,22,88)\"],[0.5019607843137255,\"rgb(203,26,79)\"],[0.5647058823529412,\"rgb(223,47,67)\"],[0.6274509803921569,\"rgb(236,76,61)\"],[0.6901960784313725,\"rgb(242,107,73)\"],[0.7529411764705882,\"rgb(244,135,95)\"],[0.8156862745098039,\"rgb(245,162,122)\"],[0.8784313725490196,\"rgb(246,188,153)\"],[0.9411764705882353,\"rgb(247,212,187)\"],[1.0,\"rgb(250,234,220)\"]],\"type\":\"heatmap\"}],\"histogram2dcontour\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"colorscale\":[[0.0,\"rgb(2,4,25)\"],[0.06274509803921569,\"rgb(24,15,41)\"],[0.12549019607843137,\"rgb(47,23,57)\"],[0.18823529411764706,\"rgb(71,28,72)\"],[0.25098039215686274,\"rgb(97,30,82)\"],[0.3137254901960784,\"rgb(123,30,89)\"],[0.3764705882352941,\"rgb(150,27,91)\"],[0.4392156862745098,\"rgb(177,22,88)\"],[0.5019607843137255,\"rgb(203,26,79)\"],[0.5647058823529412,\"rgb(223,47,67)\"],[0.6274509803921569,\"rgb(236,76,61)\"],[0.6901960784313725,\"rgb(242,107,73)\"],[0.7529411764705882,\"rgb(244,135,95)\"],[0.8156862745098039,\"rgb(245,162,122)\"],[0.8784313725490196,\"rgb(246,188,153)\"],[0.9411764705882353,\"rgb(247,212,187)\"],[1.0,\"rgb(250,234,220)\"]],\"type\":\"histogram2dcontour\"}],\"histogram2d\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"colorscale\":[[0.0,\"rgb(2,4,25)\"],[0.06274509803921569,\"rgb(24,15,41)\"],[0.12549019607843137,\"rgb(47,23,57)\"],[0.18823529411764706,\"rgb(71,28,72)\"],[0.25098039215686274,\"rgb(97,30,82)\"],[0.3137254901960784,\"rgb(123,30,89)\"],[0.3764705882352941,\"rgb(150,27,91)\"],[0.4392156862745098,\"rgb(177,22,88)\"],[0.5019607843137255,\"rgb(203,26,79)\"],[0.5647058823529412,\"rgb(223,47,67)\"],[0.6274509803921569,\"rgb(236,76,61)\"],[0.6901960784313725,\"rgb(242,107,73)\"],[0.7529411764705882,\"rgb(244,135,95)\"],[0.8156862745098039,\"rgb(245,162,122)\"],[0.8784313725490196,\"rgb(246,188,153)\"],[0.9411764705882353,\"rgb(247,212,187)\"],[1.0,\"rgb(250,234,220)\"]],\"type\":\"histogram2d\"}],\"histogram\":[{\"marker\":{\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"histogram\"}],\"mesh3d\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"type\":\"mesh3d\"}],\"parcoords\":[{\"line\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"parcoords\"}],\"pie\":[{\"automargin\":true,\"type\":\"pie\"}],\"scatter3d\":[{\"line\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"scatter3d\"}],\"scattercarpet\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"scattercarpet\"}],\"scattergeo\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"scattergeo\"}],\"scattergl\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"scattergl\"}],\"scattermapbox\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"scattermapbox\"}],\"scatterpolargl\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"scatterpolargl\"}],\"scatterpolar\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"scatterpolar\"}],\"scatter\":[{\"fillpattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2},\"type\":\"scatter\"}],\"scatterternary\":[{\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"type\":\"scatterternary\"}],\"surface\":[{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2},\"colorscale\":[[0.0,\"rgb(2,4,25)\"],[0.06274509803921569,\"rgb(24,15,41)\"],[0.12549019607843137,\"rgb(47,23,57)\"],[0.18823529411764706,\"rgb(71,28,72)\"],[0.25098039215686274,\"rgb(97,30,82)\"],[0.3137254901960784,\"rgb(123,30,89)\"],[0.3764705882352941,\"rgb(150,27,91)\"],[0.4392156862745098,\"rgb(177,22,88)\"],[0.5019607843137255,\"rgb(203,26,79)\"],[0.5647058823529412,\"rgb(223,47,67)\"],[0.6274509803921569,\"rgb(236,76,61)\"],[0.6901960784313725,\"rgb(242,107,73)\"],[0.7529411764705882,\"rgb(244,135,95)\"],[0.8156862745098039,\"rgb(245,162,122)\"],[0.8784313725490196,\"rgb(246,188,153)\"],[0.9411764705882353,\"rgb(247,212,187)\"],[1.0,\"rgb(250,234,220)\"]],\"type\":\"surface\"}],\"table\":[{\"cells\":{\"fill\":{\"color\":\"rgb(231,231,240)\"},\"line\":{\"color\":\"white\"}},\"header\":{\"fill\":{\"color\":\"rgb(183,183,191)\"},\"line\":{\"color\":\"white\"}},\"type\":\"table\"}]},\"layout\":{\"annotationdefaults\":{\"arrowcolor\":\"rgb(67,103,167)\"},\"autotypenumbers\":\"strict\",\"coloraxis\":{\"colorbar\":{\"outlinewidth\":0,\"tickcolor\":\"rgb(36,36,36)\",\"ticklen\":8,\"ticks\":\"outside\",\"tickwidth\":2}},\"colorscale\":{\"sequential\":[[0.0,\"rgb(2,4,25)\"],[0.06274509803921569,\"rgb(24,15,41)\"],[0.12549019607843137,\"rgb(47,23,57)\"],[0.18823529411764706,\"rgb(71,28,72)\"],[0.25098039215686274,\"rgb(97,30,82)\"],[0.3137254901960784,\"rgb(123,30,89)\"],[0.3764705882352941,\"rgb(150,27,91)\"],[0.4392156862745098,\"rgb(177,22,88)\"],[0.5019607843137255,\"rgb(203,26,79)\"],[0.5647058823529412,\"rgb(223,47,67)\"],[0.6274509803921569,\"rgb(236,76,61)\"],[0.6901960784313725,\"rgb(242,107,73)\"],[0.7529411764705882,\"rgb(244,135,95)\"],[0.8156862745098039,\"rgb(245,162,122)\"],[0.8784313725490196,\"rgb(246,188,153)\"],[0.9411764705882353,\"rgb(247,212,187)\"],[1.0,\"rgb(250,234,220)\"]],\"sequentialminus\":[[0.0,\"rgb(2,4,25)\"],[0.06274509803921569,\"rgb(24,15,41)\"],[0.12549019607843137,\"rgb(47,23,57)\"],[0.18823529411764706,\"rgb(71,28,72)\"],[0.25098039215686274,\"rgb(97,30,82)\"],[0.3137254901960784,\"rgb(123,30,89)\"],[0.3764705882352941,\"rgb(150,27,91)\"],[0.4392156862745098,\"rgb(177,22,88)\"],[0.5019607843137255,\"rgb(203,26,79)\"],[0.5647058823529412,\"rgb(223,47,67)\"],[0.6274509803921569,\"rgb(236,76,61)\"],[0.6901960784313725,\"rgb(242,107,73)\"],[0.7529411764705882,\"rgb(244,135,95)\"],[0.8156862745098039,\"rgb(245,162,122)\"],[0.8784313725490196,\"rgb(246,188,153)\"],[0.9411764705882353,\"rgb(247,212,187)\"],[1.0,\"rgb(250,234,220)\"]]},\"colorway\":[\"rgb(76,114,176)\",\"rgb(221,132,82)\",\"rgb(85,168,104)\",\"rgb(196,78,82)\",\"rgb(129,114,179)\",\"rgb(147,120,96)\",\"rgb(218,139,195)\",\"rgb(140,140,140)\",\"rgb(204,185,116)\",\"rgb(100,181,205)\"],\"font\":{\"color\":\"rgb(36,36,36)\"},\"geo\":{\"bgcolor\":\"white\",\"lakecolor\":\"white\",\"landcolor\":\"rgb(234,234,242)\",\"showlakes\":true,\"showland\":true,\"subunitcolor\":\"white\"},\"hoverlabel\":{\"align\":\"left\"},\"hovermode\":\"closest\",\"paper_bgcolor\":\"white\",\"plot_bgcolor\":\"rgb(234,234,242)\",\"polar\":{\"angularaxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showgrid\":true,\"ticks\":\"\"},\"bgcolor\":\"rgb(234,234,242)\",\"radialaxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showgrid\":true,\"ticks\":\"\"}},\"scene\":{\"xaxis\":{\"backgroundcolor\":\"rgb(234,234,242)\",\"gridcolor\":\"white\",\"gridwidth\":2,\"linecolor\":\"white\",\"showbackground\":true,\"showgrid\":true,\"ticks\":\"\",\"zerolinecolor\":\"white\"},\"yaxis\":{\"backgroundcolor\":\"rgb(234,234,242)\",\"gridcolor\":\"white\",\"gridwidth\":2,\"linecolor\":\"white\",\"showbackground\":true,\"showgrid\":true,\"ticks\":\"\",\"zerolinecolor\":\"white\"},\"zaxis\":{\"backgroundcolor\":\"rgb(234,234,242)\",\"gridcolor\":\"white\",\"gridwidth\":2,\"linecolor\":\"white\",\"showbackground\":true,\"showgrid\":true,\"ticks\":\"\",\"zerolinecolor\":\"white\"}},\"shapedefaults\":{\"fillcolor\":\"rgb(67,103,167)\",\"line\":{\"width\":0},\"opacity\":0.5},\"ternary\":{\"aaxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showgrid\":true,\"ticks\":\"\"},\"baxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showgrid\":true,\"ticks\":\"\"},\"bgcolor\":\"rgb(234,234,242)\",\"caxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showgrid\":true,\"ticks\":\"\"}},\"xaxis\":{\"automargin\":true,\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showgrid\":true,\"ticks\":\"\",\"title\":{\"standoff\":15},\"zerolinecolor\":\"white\"},\"yaxis\":{\"automargin\":true,\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showgrid\":true,\"ticks\":\"\",\"title\":{\"standoff\":15},\"zerolinecolor\":\"white\"}}},\"xaxis\":{\"anchor\":\"y\",\"domain\":[0.0,1.0],\"title\":{\"text\":\"iteration (mean over 10 samples)\"},\"range\":[0,100]},\"yaxis\":{\"anchor\":\"x\",\"domain\":[0.0,1.0],\"title\":{\"text\":\"duration in seconds\"},\"range\":[0,10]},\"legend\":{\"title\":{\"text\":\"query\"},\"tracegroupgap\":0},\"title\":{\"text\":\"Queries for Adaptive Compiler on gpu-pvc\"},\"width\":500,\"paper_bgcolor\":\"rgba(0,0,0,0)\",\"plot_bgcolor\":\"rgba(0,0,0,0)\",\"showlegend\":false}, {\"responsive\": true} ).then(function(){\n",
"var gd = document.getElementById('2df465b8-ed3d-40f4-98b4-ffc07fb77698');\n",
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "query=q1-2<br>iteration (mean over 10 samples)=%{x}<br>duration in seconds=%{y}<extra></extra>",
"legendgroup": "q1-2",
"marker": {
"color": "red",
"symbol": "circle"
},
"mode": "markers",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
50,
60,
70,
80,
90
1.18890508,
1.189074073,
1.189398074,
1.188855738,
1.190761063,
1.18957864,
1.18999065,
1.189968713,
1.18898128,
1.188610797
"hovertemplate": "query=q2-2<br>iteration (mean over 10 samples)=%{x}<br>duration in seconds=%{y}<extra></extra>",
"legendgroup": "q2-2",
"marker": {
"color": "blue",
"symbol": "circle"
},
"mode": "markers",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
10,
20,
30,
1.851910958,
1.870469519,
1.862018967,
1.861029331,
1.873818762,
1.868280692,
1.877702099,
1.880748454,
1.866393031,
1.863254618
"hovertemplate": "query=q2-1<br>iteration (mean over 10 samples)=%{x}<br>duration in seconds=%{y}<extra></extra>",
"legendgroup": "q2-1",
"marker": {
"color": "yellow",
"symbol": "circle"
},
"mode": "markers",
"name": "q2-1",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
10,
20,
30,
1.909676239,
1.921089981,
1.911509243,
1.902347729,
1.906537421,
1.909756704,
1.919486911,
1.914232117,
1.909912524,
1.912589158
"hovertemplate": "query=q1-1<br>iteration (mean over 10 samples)=%{x}<br>duration in seconds=%{y}<extra></extra>",
"legendgroup": "q1-1",
"marker": {
"color": "purple",
"symbol": "circle"
},
"mode": "markers",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
30,
40,
50,
60,
70,
80,
90
1.19915813,
1.199716181,
1.198604725,
1.198092355,
1.198375769,
1.197806509,
1.197753913,
1.198753838,
1.199440493,
1.198455453
],
"yaxis": "y"
}
],
"layout": {
"height": 360,
"legend": {
"title": {
"text": "query"
},
"tracegroupgap": 0
},
"paper_bgcolor": "rgba(0, 0, 0, 0)",
"plot_bgcolor": "rgba(0, 0, 0, 0)",
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "rgb(36,36,36)"
},
"error_y": {
"color": "rgb(36,36,36)"
},
"marker": {
"line": {
"color": "rgb(234,234,242)",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "rgb(234,234,242)",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "rgb(36,36,36)",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "rgb(36,36,36)"
},
"baxis": {
"endlinecolor": "rgb(36,36,36)",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "rgb(36,36,36)"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"colorscale": [
[
0,
"rgb(2,4,25)"
],
[
0.06274509803921569,
"rgb(24,15,41)"
],
[
0.12549019607843137,
"rgb(47,23,57)"
],
[
0.18823529411764706,
"rgb(71,28,72)"
],
[
0.25098039215686274,
"rgb(97,30,82)"
],
[
0.3137254901960784,
"rgb(123,30,89)"
],
[
0.3764705882352941,
"rgb(150,27,91)"
],
[
0.4392156862745098,
"rgb(177,22,88)"
],
[
0.5019607843137255,
"rgb(203,26,79)"
],
[
0.5647058823529412,
"rgb(223,47,67)"
],
[
0.6274509803921569,
"rgb(236,76,61)"
],
[
0.6901960784313725,
"rgb(242,107,73)"
],
[
0.7529411764705882,
"rgb(244,135,95)"
],
[
0.8156862745098039,
"rgb(245,162,122)"
],
[
0.8784313725490196,
"rgb(246,188,153)"
],
[
0.9411764705882353,
"rgb(247,212,187)"
],
[
1,
"rgb(250,234,220)"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
"ticks": "outside",
"tickwidth": 2
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"tickcolor": "rgb(36,36,36)",
"ticklen": 8,
Loading
Loading full blame...