Created
October 12, 2025 04:56
-
-
Save LunNova/ab81b22acf32ce67b6ab3eed282484d0 to your computer and use it in GitHub Desktop.
my god, it's full of deepcopy
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg version="1.1" width="1200" height="474" onload="init(evt)" viewBox="0 0 1200 474" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:fg="http://github.com/jonhoo/inferno"><!--Flame graph stack visualization. See https://github.com/brendangregg/FlameGraph for latest version, and http://www.brendangregg.com/flamegraphs.html for examples.--><!--NOTES: --><defs><linearGradient id="background" y1="0" y2="1" x1="0" x2="0"><stop stop-color="#eeeeee" offset="5%"/><stop stop-color="#eeeeb0" offset="95%"/></linearGradient></defs><style type="text/css"> | |
| text { font-family:monospace; font-size:12px } | |
| #title { text-anchor:middle; font-size:17px; } | |
| #matched { text-anchor:end; } | |
| #search { text-anchor:end; opacity:0.1; cursor:pointer; } | |
| #search:hover, #search.show { opacity:1; } | |
| #subtitle { text-anchor:middle; font-color:rgb(160,160,160); } | |
| #unzoom { cursor:pointer; } | |
| #frames > *:hover { stroke:black; stroke-width:0.5; cursor:pointer; } | |
| .hide { display:none; } | |
| .parent { opacity:0.5; } | |
| </style><script type="text/ecmascript"><![CDATA[ | |
| var nametype = 'Function:'; | |
| var fontsize = 12; | |
| var fontwidth = 0.59; | |
| var xpad = 10; | |
| var inverted = true; | |
| var searchcolor = 'rgb(230,0,230)'; | |
| var fluiddrawing = true; | |
| var truncate_text_right = false; | |
| ]]><![CDATA["use strict"; | |
| var details, searchbtn, unzoombtn, matchedtxt, svg, searching, frames, known_font_width; | |
| function init(evt) { | |
| details = document.getElementById("details").firstChild; | |
| searchbtn = document.getElementById("search"); | |
| unzoombtn = document.getElementById("unzoom"); | |
| matchedtxt = document.getElementById("matched"); | |
| svg = document.getElementsByTagName("svg")[0]; | |
| frames = document.getElementById("frames"); | |
| known_font_width = get_monospace_width(frames); | |
| total_samples = parseInt(frames.attributes.total_samples.value); | |
| searching = 0; | |
| // Use GET parameters to restore a flamegraph's state. | |
| var restore_state = function() { | |
| var params = get_params(); | |
| if (params.x && params.y) | |
| zoom(find_group(document.querySelector('[*|x="' + params.x + '"][y="' + params.y + '"]'))); | |
| if (params.s) | |
| search(params.s); | |
| }; | |
| if (fluiddrawing) { | |
| // Make width dynamic so the SVG fits its parent's width. | |
| svg.removeAttribute("width"); | |
| // Edge requires us to have a viewBox that gets updated with size changes. | |
| var isEdge = /Edge\/\d./i.test(navigator.userAgent); | |
| if (!isEdge) { | |
| svg.removeAttribute("viewBox"); | |
| } | |
| var update_for_width_change = function() { | |
| if (isEdge) { | |
| svg.attributes.viewBox.value = "0 0 " + svg.width.baseVal.value + " " + svg.height.baseVal.value; | |
| } | |
| // Keep consistent padding on left and right of frames container. | |
| frames.attributes.width.value = svg.width.baseVal.value - xpad * 2; | |
| // Text truncation needs to be adjusted for the current width. | |
| update_text_for_elements(frames.children); | |
| // Keep search elements at a fixed distance from right edge. | |
| var svgWidth = svg.width.baseVal.value; | |
| searchbtn.attributes.x.value = svgWidth - xpad; | |
| matchedtxt.attributes.x.value = svgWidth - xpad; | |
| }; | |
| window.addEventListener('resize', function() { | |
| update_for_width_change(); | |
| }); | |
| // This needs to be done asynchronously for Safari to work. | |
| setTimeout(function() { | |
| unzoom(); | |
| update_for_width_change(); | |
| restore_state(); | |
| }, 0); | |
| } else { | |
| restore_state(); | |
| } | |
| } | |
| // event listeners | |
| window.addEventListener("click", function(e) { | |
| var target = find_group(e.target); | |
| if (target) { | |
| if (target.nodeName == "a") { | |
| if (e.ctrlKey === false) return; | |
| e.preventDefault(); | |
| } | |
| if (target.classList.contains("parent")) unzoom(); | |
| zoom(target); | |
| // set parameters for zoom state | |
| var el = target.querySelector("rect"); | |
| if (el && el.attributes && el.attributes.y && el.attributes["fg:x"]) { | |
| var params = get_params() | |
| params.x = el.attributes["fg:x"].value; | |
| params.y = el.attributes.y.value; | |
| history.replaceState(null, null, parse_params(params)); | |
| } | |
| } | |
| else if (e.target.id == "unzoom") { | |
| unzoom(); | |
| // remove zoom state | |
| var params = get_params(); | |
| if (params.x) delete params.x; | |
| if (params.y) delete params.y; | |
| history.replaceState(null, null, parse_params(params)); | |
| } | |
| else if (e.target.id == "search") search_prompt(); | |
| }, false) | |
| // mouse-over for info | |
| // show | |
| window.addEventListener("mouseover", function(e) { | |
| var target = find_group(e.target); | |
| if (target) details.nodeValue = nametype + " " + g_to_text(target); | |
| }, false) | |
| // clear | |
| window.addEventListener("mouseout", function(e) { | |
| var target = find_group(e.target); | |
| if (target) details.nodeValue = ' '; | |
| }, false) | |
| // ctrl-F for search | |
| window.addEventListener("keydown",function (e) { | |
| if (e.keyCode === 114 || (e.ctrlKey && e.keyCode === 70)) { | |
| e.preventDefault(); | |
| search_prompt(); | |
| } | |
| }, false) | |
| // functions | |
| function get_params() { | |
| var params = {}; | |
| var paramsarr = window.location.search.substr(1).split('&'); | |
| for (var i = 0; i < paramsarr.length; ++i) { | |
| var tmp = paramsarr[i].split("="); | |
| if (!tmp[0] || !tmp[1]) continue; | |
| params[tmp[0]] = decodeURIComponent(tmp[1]); | |
| } | |
| return params; | |
| } | |
| function parse_params(params) { | |
| var uri = "?"; | |
| for (var key in params) { | |
| uri += key + '=' + encodeURIComponent(params[key]) + '&'; | |
| } | |
| if (uri.slice(-1) == "&") | |
| uri = uri.substring(0, uri.length - 1); | |
| if (uri == '?') | |
| uri = window.location.href.split('?')[0]; | |
| return uri; | |
| } | |
| function find_child(node, selector) { | |
| var children = node.querySelectorAll(selector); | |
| if (children.length) return children[0]; | |
| return; | |
| } | |
| function find_group(node) { | |
| var parent = node.parentElement; | |
| if (!parent) return; | |
| if (parent.id == "frames") return node; | |
| return find_group(parent); | |
| } | |
| function orig_save(e, attr, val) { | |
| if (e.attributes["fg:orig_" + attr] != undefined) return; | |
| if (e.attributes[attr] == undefined) return; | |
| if (val == undefined) val = e.attributes[attr].value; | |
| e.setAttribute("fg:orig_" + attr, val); | |
| } | |
| function orig_load(e, attr) { | |
| if (e.attributes["fg:orig_"+attr] == undefined) return; | |
| e.attributes[attr].value = e.attributes["fg:orig_" + attr].value; | |
| e.removeAttribute("fg:orig_" + attr); | |
| } | |
| function g_to_text(e) { | |
| var text = find_child(e, "title").firstChild.nodeValue; | |
| return (text) | |
| } | |
| function g_to_func(e) { | |
| var func = g_to_text(e); | |
| // if there's any manipulation we want to do to the function | |
| // name before it's searched, do it here before returning. | |
| return (func); | |
| } | |
| function get_monospace_width(frames) { | |
| // Given the id="frames" element, return the width of text characters if | |
| // this is a monospace font, otherwise return 0. | |
| text = find_child(frames.children[0], "text"); | |
| originalContent = text.textContent; | |
| text.textContent = "!"; | |
| bangWidth = text.getComputedTextLength(); | |
| text.textContent = "W"; | |
| wWidth = text.getComputedTextLength(); | |
| text.textContent = originalContent; | |
| if (bangWidth === wWidth) { | |
| return bangWidth; | |
| } else { | |
| return 0; | |
| } | |
| } | |
| function update_text_for_elements(elements) { | |
| // In order to render quickly in the browser, you want to do one pass of | |
| // reading attributes, and one pass of mutating attributes. See | |
| // https://web.dev/avoid-large-complex-layouts-and-layout-thrashing/ for details. | |
| // Fall back to inefficient calculation, if we're variable-width font. | |
| // TODO This should be optimized somehow too. | |
| if (known_font_width === 0) { | |
| for (var i = 0; i < elements.length; i++) { | |
| update_text(elements[i]); | |
| } | |
| return; | |
| } | |
| var textElemNewAttributes = []; | |
| for (var i = 0; i < elements.length; i++) { | |
| var e = elements[i]; | |
| var r = find_child(e, "rect"); | |
| var t = find_child(e, "text"); | |
| var w = parseFloat(r.attributes.width.value) * frames.attributes.width.value / 100 - 3; | |
| var txt = find_child(e, "title").textContent.replace(/\([^(]*\)$/,""); | |
| var newX = format_percent((parseFloat(r.attributes.x.value) + (100 * 3 / frames.attributes.width.value))); | |
| // Smaller than this size won't fit anything | |
| if (w < 2 * known_font_width) { | |
| textElemNewAttributes.push([newX, ""]); | |
| continue; | |
| } | |
| // Fit in full text width | |
| if (txt.length * known_font_width < w) { | |
| textElemNewAttributes.push([newX, txt]); | |
| continue; | |
| } | |
| var substringLength = Math.floor(w / known_font_width) - 2; | |
| if (truncate_text_right) { | |
| // Truncate the right side of the text. | |
| textElemNewAttributes.push([newX, txt.substring(0, substringLength) + ".."]); | |
| continue; | |
| } else { | |
| // Truncate the left side of the text. | |
| textElemNewAttributes.push([newX, ".." + txt.substring(txt.length - substringLength, txt.length)]); | |
| continue; | |
| } | |
| } | |
| console.assert(textElemNewAttributes.length === elements.length, "Resize failed, please file a bug at https://github.com/jonhoo/inferno/"); | |
| // Now that we know new textContent, set it all in one go so we don't refresh a bazillion times. | |
| for (var i = 0; i < elements.length; i++) { | |
| var e = elements[i]; | |
| var values = textElemNewAttributes[i]; | |
| var t = find_child(e, "text"); | |
| t.attributes.x.value = values[0]; | |
| t.textContent = values[1]; | |
| } | |
| } | |
| function update_text(e) { | |
| var r = find_child(e, "rect"); | |
| var t = find_child(e, "text"); | |
| var w = parseFloat(r.attributes.width.value) * frames.attributes.width.value / 100 - 3; | |
| var txt = find_child(e, "title").textContent.replace(/\([^(]*\)$/,""); | |
| t.attributes.x.value = format_percent((parseFloat(r.attributes.x.value) + (100 * 3 / frames.attributes.width.value))); | |
| // Smaller than this size won't fit anything | |
| if (w < 2 * fontsize * fontwidth) { | |
| t.textContent = ""; | |
| return; | |
| } | |
| t.textContent = txt; | |
| // Fit in full text width | |
| if (t.getComputedTextLength() < w) | |
| return; | |
| if (truncate_text_right) { | |
| // Truncate the right side of the text. | |
| for (var x = txt.length - 2; x > 0; x--) { | |
| if (t.getSubStringLength(0, x + 2) <= w) { | |
| t.textContent = txt.substring(0, x) + ".."; | |
| return; | |
| } | |
| } | |
| } else { | |
| // Truncate the left side of the text. | |
| for (var x = 2; x < txt.length; x++) { | |
| if (t.getSubStringLength(x - 2, txt.length) <= w) { | |
| t.textContent = ".." + txt.substring(x, txt.length); | |
| return; | |
| } | |
| } | |
| } | |
| t.textContent = ""; | |
| } | |
| // zoom | |
| function zoom_reset(e) { | |
| if (e.tagName == "rect") { | |
| e.attributes.x.value = format_percent(100 * parseInt(e.attributes["fg:x"].value) / total_samples); | |
| e.attributes.width.value = format_percent(100 * parseInt(e.attributes["fg:w"].value) / total_samples); | |
| } | |
| if (e.childNodes == undefined) return; | |
| for(var i = 0, c = e.childNodes; i < c.length; i++) { | |
| zoom_reset(c[i]); | |
| } | |
| } | |
| function zoom_child(e, x, zoomed_width_samples) { | |
| if (e.tagName == "text") { | |
| var parent_x = parseFloat(find_child(e.parentNode, "rect[x]").attributes.x.value); | |
| e.attributes.x.value = format_percent(parent_x + (100 * 3 / frames.attributes.width.value)); | |
| } else if (e.tagName == "rect") { | |
| e.attributes.x.value = format_percent(100 * (parseInt(e.attributes["fg:x"].value) - x) / zoomed_width_samples); | |
| e.attributes.width.value = format_percent(100 * parseInt(e.attributes["fg:w"].value) / zoomed_width_samples); | |
| } | |
| if (e.childNodes == undefined) return; | |
| for(var i = 0, c = e.childNodes; i < c.length; i++) { | |
| zoom_child(c[i], x, zoomed_width_samples); | |
| } | |
| } | |
| function zoom_parent(e) { | |
| if (e.attributes) { | |
| if (e.attributes.x != undefined) { | |
| e.attributes.x.value = "0.0%"; | |
| } | |
| if (e.attributes.width != undefined) { | |
| e.attributes.width.value = "100.0%"; | |
| } | |
| } | |
| if (e.childNodes == undefined) return; | |
| for(var i = 0, c = e.childNodes; i < c.length; i++) { | |
| zoom_parent(c[i]); | |
| } | |
| } | |
| function zoom(node) { | |
| var attr = find_child(node, "rect").attributes; | |
| var width = parseInt(attr["fg:w"].value); | |
| var xmin = parseInt(attr["fg:x"].value); | |
| var xmax = xmin + width; | |
| var ymin = parseFloat(attr.y.value); | |
| unzoombtn.classList.remove("hide"); | |
| var el = frames.children; | |
| var to_update_text = []; | |
| for (var i = 0; i < el.length; i++) { | |
| var e = el[i]; | |
| var a = find_child(e, "rect").attributes; | |
| var ex = parseInt(a["fg:x"].value); | |
| var ew = parseInt(a["fg:w"].value); | |
| // Is it an ancestor | |
| if (!inverted) { | |
| var upstack = parseFloat(a.y.value) > ymin; | |
| } else { | |
| var upstack = parseFloat(a.y.value) < ymin; | |
| } | |
| if (upstack) { | |
| // Direct ancestor | |
| if (ex <= xmin && (ex+ew) >= xmax) { | |
| e.classList.add("parent"); | |
| zoom_parent(e); | |
| to_update_text.push(e); | |
| } | |
| // not in current path | |
| else | |
| e.classList.add("hide"); | |
| } | |
| // Children maybe | |
| else { | |
| // no common path | |
| if (ex < xmin || ex >= xmax) { | |
| e.classList.add("hide"); | |
| } | |
| else { | |
| zoom_child(e, xmin, width); | |
| to_update_text.push(e); | |
| } | |
| } | |
| } | |
| update_text_for_elements(to_update_text); | |
| } | |
| function unzoom() { | |
| unzoombtn.classList.add("hide"); | |
| var el = frames.children; | |
| for(var i = 0; i < el.length; i++) { | |
| el[i].classList.remove("parent"); | |
| el[i].classList.remove("hide"); | |
| zoom_reset(el[i]); | |
| } | |
| update_text_for_elements(el); | |
| } | |
| // search | |
| function reset_search() { | |
| var el = document.querySelectorAll("#frames rect"); | |
| for (var i = 0; i < el.length; i++) { | |
| orig_load(el[i], "fill") | |
| } | |
| var params = get_params(); | |
| delete params.s; | |
| history.replaceState(null, null, parse_params(params)); | |
| } | |
| function search_prompt() { | |
| if (!searching) { | |
| var term = prompt("Enter a search term (regexp " + | |
| "allowed, eg: ^ext4_)", ""); | |
| if (term != null) { | |
| search(term) | |
| } | |
| } else { | |
| reset_search(); | |
| searching = 0; | |
| searchbtn.classList.remove("show"); | |
| searchbtn.firstChild.nodeValue = "Search" | |
| matchedtxt.classList.add("hide"); | |
| matchedtxt.firstChild.nodeValue = "" | |
| } | |
| } | |
| function search(term) { | |
| var re = new RegExp(term); | |
| var el = frames.children; | |
| var matches = new Object(); | |
| var maxwidth = 0; | |
| for (var i = 0; i < el.length; i++) { | |
| var e = el[i]; | |
| // Skip over frames which are either not visible, or below the zoomed-to frame | |
| if (e.classList.contains("hide") || e.classList.contains("parent")) { | |
| continue; | |
| } | |
| var func = g_to_func(e); | |
| var rect = find_child(e, "rect"); | |
| if (func == null || rect == null) | |
| continue; | |
| // Save max width. Only works as we have a root frame | |
| var w = parseInt(rect.attributes["fg:w"].value); | |
| if (w > maxwidth) | |
| maxwidth = w; | |
| if (func.match(re)) { | |
| // highlight | |
| var x = parseInt(rect.attributes["fg:x"].value); | |
| orig_save(rect, "fill"); | |
| rect.attributes.fill.value = searchcolor; | |
| // remember matches | |
| if (matches[x] == undefined) { | |
| matches[x] = w; | |
| } else { | |
| if (w > matches[x]) { | |
| // overwrite with parent | |
| matches[x] = w; | |
| } | |
| } | |
| searching = 1; | |
| } | |
| } | |
| if (!searching) | |
| return; | |
| var params = get_params(); | |
| params.s = term; | |
| history.replaceState(null, null, parse_params(params)); | |
| searchbtn.classList.add("show"); | |
| searchbtn.firstChild.nodeValue = "Reset Search"; | |
| // calculate percent matched, excluding vertical overlap | |
| var count = 0; | |
| var lastx = -1; | |
| var lastw = 0; | |
| var keys = Array(); | |
| for (k in matches) { | |
| if (matches.hasOwnProperty(k)) | |
| keys.push(k); | |
| } | |
| // sort the matched frames by their x location | |
| // ascending, then width descending | |
| keys.sort(function(a, b){ | |
| return a - b; | |
| }); | |
| // Step through frames saving only the biggest bottom-up frames | |
| // thanks to the sort order. This relies on the tree property | |
| // where children are always smaller than their parents. | |
| for (var k in keys) { | |
| var x = parseInt(keys[k]); | |
| var w = matches[keys[k]]; | |
| if (x >= lastx + lastw) { | |
| count += w; | |
| lastx = x; | |
| lastw = w; | |
| } | |
| } | |
| // display matched percent | |
| matchedtxt.classList.remove("hide"); | |
| var pct = 100 * count / maxwidth; | |
| if (pct != 100) pct = pct.toFixed(1); | |
| matchedtxt.firstChild.nodeValue = "Matched: " + pct + "%"; | |
| } | |
| function format_percent(n) { | |
| return n.toFixed(4) + "%"; | |
| } | |
| ]]></script><rect x="0" y="0" width="100%" height="474" fill="url(#background)"/><text id="title" fill="rgb(0,0,0)" x="50.0000%" y="24.00">/nix/store/1z4z40002k0bwrsdvib2qmk1gi8855q8-py-spy-0.4.0/bin/py-spy record -p 2739603 -g -o ../hipblaslt-tcl-flamegraph.svg</text><text id="details" fill="rgb(0,0,0)" x="10" y="40.00"> </text><text id="unzoom" class="hide" fill="rgb(0,0,0)" x="10" y="24.00">Reset Zoom</text><text id="search" fill="rgb(0,0,0)" x="1190" y="24.00">Search</text><text id="matched" fill="rgb(0,0,0)" x="1190" y="463.00"> </text><svg id="frames" x="10" width="1180" total_samples="100356"><g><title>recv (multiprocessing/connection.py:250) (195 samples, 0.19%)</title><rect x="0.0120%" y="132" width="0.1943%" height="15" fill="rgb(227,0,7)" fg:x="12" fg:w="195"/><text x="0.2620%" y="142.50"></text></g><g><title>_recv_bytes (multiprocessing/connection.py:437) (189 samples, 0.19%)</title><rect x="0.0179%" y="148" width="0.1883%" height="15" fill="rgb(217,0,24)" fg:x="18" fg:w="189"/><text x="0.2679%" y="158.50"></text></g><g><title>_recv (multiprocessing/connection.py:402) (109 samples, 0.11%)</title><rect x="0.0977%" y="164" width="0.1086%" height="15" fill="rgb(221,193,54)" fg:x="98" fg:w="109"/><text x="0.3477%" y="174.50"></text></g><g><title>_handle_results (multiprocessing/pool.py:579) (24,802 samples, 24.71%)</title><rect x="0.0000%" y="116" width="24.7140%" height="15" fill="rgb(248,212,6)" fg:x="0" fg:w="24802"/><text x="0.2500%" y="126.50">_handle_results (multiprocessing/pool.p..</text></g><g><title>recv (multiprocessing/connection.py:251) (24,595 samples, 24.51%)</title><rect x="0.2063%" y="132" width="24.5078%" height="15" fill="rgb(208,68,35)" fg:x="207" fg:w="24595"/><text x="0.4563%" y="142.50">recv (multiprocessing/connection.py:251)</text></g><g><title><lambda> (<string>:1) (20,163 samples, 20.09%)</title><rect x="4.6225%" y="148" width="20.0915%" height="15" fill="rgb(232,128,0)" fg:x="4639" fg:w="20163"/><text x="4.8725%" y="158.50"><lambda> (<string>:1)</text></g><g><title>dumps (multiprocessing/reduction.py:51) (7,492 samples, 7.47%)</title><rect x="24.7379%" y="148" width="7.4654%" height="15" fill="rgb(207,160,47)" fg:x="24826" fg:w="7492"/><text x="24.9879%" y="158.50">dumps (mul..</text></g><g><title>_handle_tasks (multiprocessing/pool.py:540) (7,508 samples, 7.48%)</title><rect x="24.7230%" y="116" width="7.4814%" height="15" fill="rgb(228,23,34)" fg:x="24811" fg:w="7508"/><text x="24.9730%" y="126.50">_handle_ta..</text></g><g><title>send (multiprocessing/connection.py:206) (7,507 samples, 7.48%)</title><rect x="24.7240%" y="132" width="7.4804%" height="15" fill="rgb(218,30,26)" fg:x="24812" fg:w="7507"/><text x="24.9740%" y="142.50">send (mult..</text></g><g><title>wait (multiprocessing/connection.py:1140) (103 samples, 0.10%)</title><rect x="32.3010%" y="196" width="0.1026%" height="15" fill="rgb(220,122,19)" fg:x="32416" fg:w="103"/><text x="32.5510%" y="206.50"></text></g><g><title>_handle_workers (multiprocessing/pool.py:518) (305 samples, 0.30%)</title><rect x="32.2053%" y="116" width="0.3039%" height="15" fill="rgb(250,228,42)" fg:x="32320" fg:w="305"/><text x="32.4553%" y="126.50"></text></g><g><title>_maintain_pool (multiprocessing/pool.py:339) (304 samples, 0.30%)</title><rect x="32.2063%" y="132" width="0.3029%" height="15" fill="rgb(240,193,28)" fg:x="32321" fg:w="304"/><text x="32.4563%" y="142.50"></text></g><g><title>_join_exited_workers (multiprocessing/pool.py:297) (293 samples, 0.29%)</title><rect x="32.2173%" y="148" width="0.2920%" height="15" fill="rgb(216,20,37)" fg:x="32332" fg:w="293"/><text x="32.4673%" y="158.50"></text></g><g><title>exitcode (multiprocessing/process.py:232) (283 samples, 0.28%)</title><rect x="32.2273%" y="164" width="0.2820%" height="15" fill="rgb(206,188,39)" fg:x="32342" fg:w="283"/><text x="32.4773%" y="174.50"></text></g><g><title>poll (multiprocessing/popen_forkserver.py:65) (232 samples, 0.23%)</title><rect x="32.2781%" y="180" width="0.2312%" height="15" fill="rgb(217,207,13)" fg:x="32393" fg:w="232"/><text x="32.5281%" y="190.50"></text></g><g><title>_wait_for_updates (multiprocessing/pool.py:502) (114 samples, 0.11%)</title><rect x="32.5342%" y="132" width="0.1136%" height="15" fill="rgb(231,73,38)" fg:x="32650" fg:w="114"/><text x="32.7842%" y="142.50"></text></g><g><title>_bootstrap (threading.py:1014) (32,781 samples, 32.66%)</title><rect x="0.0000%" y="68" width="32.6647%" height="15" fill="rgb(225,20,46)" fg:x="0" fg:w="32781"/><text x="0.2500%" y="78.50">_bootstrap (threading.py:1014)</text></g><g><title>_bootstrap_inner (threading.py:1043) (32,781 samples, 32.66%)</title><rect x="0.0000%" y="84" width="32.6647%" height="15" fill="rgb(210,31,41)" fg:x="0" fg:w="32781"/><text x="0.2500%" y="94.50">_bootstrap_inner (threading.py:1043)</text></g><g><title>run (threading.py:994) (32,781 samples, 32.66%)</title><rect x="0.0000%" y="100" width="32.6647%" height="15" fill="rgb(221,200,47)" fg:x="0" fg:w="32781"/><text x="0.2500%" y="110.50">run (threading.py:994)</text></g><g><title>_handle_workers (multiprocessing/pool.py:522) (131 samples, 0.13%)</title><rect x="32.5342%" y="116" width="0.1305%" height="15" fill="rgb(226,26,5)" fg:x="32650" fg:w="131"/><text x="32.7842%" y="126.50"></text></g><g><title>generateLogicDataAndSolutions (Tensile/TensileCreateLibrary/Run.py:571) (341 samples, 0.34%)</title><rect x="33.6612%" y="132" width="0.3398%" height="15" fill="rgb(249,33,26)" fg:x="33781" fg:w="341"/><text x="33.9112%" y="142.50"></text></g><g><title>_ParallelMap_generator (Tensile/Common/Parallel.py:160) (335 samples, 0.33%)</title><rect x="33.6671%" y="148" width="0.3338%" height="15" fill="rgb(235,183,28)" fg:x="33787" fg:w="335"/><text x="33.9171%" y="158.50"></text></g><g><title>progress_logger (Tensile/Common/Parallel.py:132) (335 samples, 0.33%)</title><rect x="33.6671%" y="164" width="0.3338%" height="15" fill="rgb(221,5,38)" fg:x="33787" fg:w="335"/><text x="33.9171%" y="174.50"></text></g><g><title><genexpr> (multiprocessing/pool.py:451) (259 samples, 0.26%)</title><rect x="33.7429%" y="180" width="0.2581%" height="15" fill="rgb(247,18,42)" fg:x="33863" fg:w="259"/><text x="33.9929%" y="190.50"></text></g><g><title>merge (Tensile/SolutionLibrary.py:607) (331 samples, 0.33%)</title><rect x="34.0069%" y="148" width="0.3298%" height="15" fill="rgb(241,131,45)" fg:x="34128" fg:w="331"/><text x="34.2569%" y="158.50"></text></g><g><title><genexpr> (Tensile/SolutionLibrary.py:607) (331 samples, 0.33%)</title><rect x="34.0069%" y="164" width="0.3298%" height="15" fill="rgb(249,31,29)" fg:x="34128" fg:w="331"/><text x="34.2569%" y="174.50"></text></g><g><title>generateLogicDataAndSolutions (Tensile/TensileCreateLibrary/Run.py:581) (394 samples, 0.39%)</title><rect x="34.0069%" y="132" width="0.3926%" height="15" fill="rgb(225,111,53)" fg:x="34128" fg:w="394"/><text x="34.2569%" y="142.50"></text></g><g><title>generateLogicDataAndSolutions (Tensile/TensileCreateLibrary/Run.py:610) (2,931 samples, 2.92%)</title><rect x="34.4264%" y="132" width="2.9206%" height="15" fill="rgb(238,160,17)" fg:x="34549" fg:w="2931"/><text x="34.6764%" y="142.50">ge..</text></g><g><title>represent_mapping (yaml/representer.py:118) (109 samples, 0.11%)</title><rect x="37.4168%" y="260" width="0.1086%" height="15" fill="rgb(214,148,48)" fg:x="37550" fg:w="109"/><text x="37.6668%" y="270.50"></text></g><g><title>represent (yaml/representer.py:27) (171 samples, 0.17%)</title><rect x="37.3570%" y="212" width="0.1704%" height="15" fill="rgb(232,36,49)" fg:x="37490" fg:w="171"/><text x="37.6070%" y="222.50"></text></g><g><title>represent_data (yaml/representer.py:48) (171 samples, 0.17%)</title><rect x="37.3570%" y="228" width="0.1704%" height="15" fill="rgb(209,103,24)" fg:x="37490" fg:w="171"/><text x="37.6070%" y="238.50"></text></g><g><title>represent_dict (yaml/representer.py:207) (171 samples, 0.17%)</title><rect x="37.3570%" y="244" width="0.1704%" height="15" fill="rgb(229,88,8)" fg:x="37490" fg:w="171"/><text x="37.6070%" y="254.50"></text></g><g><title>expect_block_mapping_key (yaml/emitter.py:401) (111 samples, 0.11%)</title><rect x="37.6679%" y="292" width="0.1106%" height="15" fill="rgb(213,181,19)" fg:x="37802" fg:w="111"/><text x="37.9179%" y="302.50"></text></g><g><title>serialize_node (yaml/serializer.py:89) (205 samples, 0.20%)</title><rect x="37.6350%" y="260" width="0.2043%" height="15" fill="rgb(254,191,54)" fg:x="37769" fg:w="205"/><text x="37.8850%" y="270.50"></text></g><g><title>emit (yaml/emitter.py:115) (183 samples, 0.18%)</title><rect x="37.6569%" y="276" width="0.1824%" height="15" fill="rgb(241,83,37)" fg:x="37791" fg:w="183"/><text x="37.9069%" y="286.50"></text></g><g><title>serialize_node (yaml/serializer.py:107) (276 samples, 0.28%)</title><rect x="37.5653%" y="244" width="0.2750%" height="15" fill="rgb(233,36,39)" fg:x="37699" fg:w="276"/><text x="37.8153%" y="254.50"></text></g><g><title>analyze_scalar (yaml/emitter.py:668) (105 samples, 0.10%)</title><rect x="38.1263%" y="372" width="0.1046%" height="15" fill="rgb(226,3,54)" fg:x="38262" fg:w="105"/><text x="38.3763%" y="382.50"></text></g><g><title>analyze_scalar (yaml/emitter.py:699) (257 samples, 0.26%)</title><rect x="38.5797%" y="372" width="0.2561%" height="15" fill="rgb(245,192,40)" fg:x="38717" fg:w="257"/><text x="38.8297%" y="382.50"></text></g><g><title>analyze_scalar (yaml/emitter.py:735) (136 samples, 0.14%)</title><rect x="39.1157%" y="372" width="0.1355%" height="15" fill="rgb(238,167,29)" fg:x="39255" fg:w="136"/><text x="39.3657%" y="382.50"></text></g><g><title>analyze_scalar (yaml/emitter.py:736) (156 samples, 0.16%)</title><rect x="39.2513%" y="372" width="0.1554%" height="15" fill="rgb(232,182,51)" fg:x="39391" fg:w="156"/><text x="39.5013%" y="382.50"></text></g><g><title>choose_scalar_style (yaml/emitter.py:496) (1,308 samples, 1.30%)</title><rect x="38.1203%" y="356" width="1.3034%" height="15" fill="rgb(231,60,39)" fg:x="38256" fg:w="1308"/><text x="38.3703%" y="366.50"></text></g><g><title>process_tag (yaml/emitter.py:473) (1,313 samples, 1.31%)</title><rect x="38.1183%" y="340" width="1.3083%" height="15" fill="rgb(208,69,12)" fg:x="38254" fg:w="1313"/><text x="38.3683%" y="350.50"></text></g><g><title>expect_node (yaml/emitter.py:242) (1,320 samples, 1.32%)</title><rect x="38.1153%" y="324" width="1.3153%" height="15" fill="rgb(235,93,37)" fg:x="38251" fg:w="1320"/><text x="38.3653%" y="334.50"></text></g><g><title>write_plain (yaml/emitter.py:1098) (145 samples, 0.14%)</title><rect x="39.5363%" y="372" width="0.1445%" height="15" fill="rgb(213,116,39)" fg:x="39677" fg:w="145"/><text x="39.7863%" y="382.50"></text></g><g><title>process_scalar (yaml/emitter.py:533) (566 samples, 0.56%)</title><rect x="39.4356%" y="356" width="0.5640%" height="15" fill="rgb(222,207,29)" fg:x="39576" fg:w="566"/><text x="39.6856%" y="366.50"></text></g><g><title>expect_first_flow_sequence_item (yaml/emitter.py:290) (1,903 samples, 1.90%)</title><rect x="38.1053%" y="308" width="1.8962%" height="15" fill="rgb(206,96,30)" fg:x="38241" fg:w="1903"/><text x="38.3553%" y="318.50">e..</text></g><g><title>expect_node (yaml/emitter.py:244) (572 samples, 0.57%)</title><rect x="39.4316%" y="324" width="0.5700%" height="15" fill="rgb(218,138,4)" fg:x="39572" fg:w="572"/><text x="39.6816%" y="334.50"></text></g><g><title>expect_scalar (yaml/emitter.py:268) (571 samples, 0.57%)</title><rect x="39.4326%" y="340" width="0.5690%" height="15" fill="rgb(250,191,14)" fg:x="39573" fg:w="571"/><text x="39.6826%" y="350.50"></text></g><g><title>emit (yaml/emitter.py:115) (2,079 samples, 2.07%)</title><rect x="38.0675%" y="292" width="2.0716%" height="15" fill="rgb(239,60,40)" fg:x="38203" fg:w="2079"/><text x="38.3175%" y="302.50">e..</text></g><g><title>expect_flow_sequence_item (yaml/emitter.py:306) (113 samples, 0.11%)</title><rect x="40.0265%" y="308" width="0.1126%" height="15" fill="rgb(206,27,48)" fg:x="40169" fg:w="113"/><text x="40.2765%" y="318.50"></text></g><g><title>represent (yaml/representer.py:28) (2,625 samples, 2.62%)</title><rect x="37.5274%" y="212" width="2.6157%" height="15" fill="rgb(225,35,8)" fg:x="37661" fg:w="2625"/><text x="37.7774%" y="222.50">re..</text></g><g><title>serialize (yaml/serializer.py:54) (2,588 samples, 2.58%)</title><rect x="37.5643%" y="228" width="2.5788%" height="15" fill="rgb(250,213,24)" fg:x="37698" fg:w="2588"/><text x="37.8143%" y="238.50">se..</text></g><g><title>serialize_node (yaml/serializer.py:108) (2,311 samples, 2.30%)</title><rect x="37.8403%" y="244" width="2.3028%" height="15" fill="rgb(247,123,22)" fg:x="37975" fg:w="2311"/><text x="38.0903%" y="254.50">s..</text></g><g><title>serialize_node (yaml/serializer.py:98) (2,240 samples, 2.23%)</title><rect x="37.9110%" y="260" width="2.2321%" height="15" fill="rgb(231,138,38)" fg:x="38046" fg:w="2240"/><text x="38.1610%" y="270.50">s..</text></g><g><title>serialize_node (yaml/serializer.py:89) (2,169 samples, 2.16%)</title><rect x="37.9818%" y="276" width="2.1613%" height="15" fill="rgb(231,145,46)" fg:x="38117" fg:w="2169"/><text x="38.2318%" y="286.50">s..</text></g><g><title>generateLogicDataAndSolutions (Tensile/TensileCreateLibrary/Run.py:611) (2,807 samples, 2.80%)</title><rect x="37.3470%" y="132" width="2.7970%" height="15" fill="rgb(251,118,11)" fg:x="37480" fg:w="2807"/><text x="37.5970%" y="142.50">ge..</text></g><g><title>write (Tensile/LibraryIO.py:80) (2,807 samples, 2.80%)</title><rect x="37.3470%" y="148" width="2.7970%" height="15" fill="rgb(217,147,25)" fg:x="37480" fg:w="2807"/><text x="37.5970%" y="158.50">wr..</text></g><g><title>writeYAML (Tensile/LibraryIO.py:100) (2,807 samples, 2.80%)</title><rect x="37.3470%" y="164" width="2.7970%" height="15" fill="rgb(247,81,37)" fg:x="37480" fg:w="2807"/><text x="37.5970%" y="174.50">wr..</text></g><g><title>dump (yaml/__init__.py:253) (2,807 samples, 2.80%)</title><rect x="37.3470%" y="180" width="2.7970%" height="15" fill="rgb(209,12,38)" fg:x="37480" fg:w="2807"/><text x="37.5970%" y="190.50">du..</text></g><g><title>dump_all (yaml/__init__.py:241) (2,807 samples, 2.80%)</title><rect x="37.3470%" y="196" width="2.7970%" height="15" fill="rgb(227,1,9)" fg:x="37480" fg:w="2807"/><text x="37.5970%" y="206.50">du..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:322) (174 samples, 0.17%)</title><rect x="40.4540%" y="228" width="0.1734%" height="15" fill="rgb(248,47,43)" fg:x="40598" fg:w="174"/><text x="40.7040%" y="238.50"></text></g><g><title>deepcopy (copy.py:137) (120 samples, 0.12%)</title><rect x="40.9492%" y="244" width="0.1196%" height="15" fill="rgb(221,10,30)" fg:x="41095" fg:w="120"/><text x="41.1992%" y="254.50"></text></g><g><title>_reconstruct (copy.py:254) (126 samples, 0.13%)</title><rect x="41.3358%" y="260" width="0.1256%" height="15" fill="rgb(210,229,1)" fg:x="41483" fg:w="126"/><text x="41.5858%" y="270.50"></text></g><g><title>deepcopy (copy.py:137) (638 samples, 0.64%)</title><rect x="41.7255%" y="308" width="0.6357%" height="15" fill="rgb(222,148,37)" fg:x="41874" fg:w="638"/><text x="41.9755%" y="318.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (554 samples, 0.55%)</title><rect x="41.8092%" y="324" width="0.5520%" height="15" fill="rgb(234,67,33)" fg:x="41958" fg:w="554"/><text x="42.0592%" y="334.50"></text></g><g><title>deepcopy (copy.py:137) (958 samples, 0.95%)</title><rect x="41.5262%" y="276" width="0.9546%" height="15" fill="rgb(247,98,35)" fg:x="41674" fg:w="958"/><text x="41.7762%" y="286.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (899 samples, 0.90%)</title><rect x="41.5850%" y="292" width="0.8958%" height="15" fill="rgb(247,138,52)" fg:x="41733" fg:w="899"/><text x="41.8350%" y="302.50"></text></g><g><title>_reconstruct (copy.py:260) (1,046 samples, 1.04%)</title><rect x="41.4793%" y="260" width="1.0423%" height="15" fill="rgb(213,79,30)" fg:x="41627" fg:w="1046"/><text x="41.7293%" y="270.50"></text></g><g><title>deepcopy (copy.py:163) (1,385 samples, 1.38%)</title><rect x="41.2173%" y="244" width="1.3801%" height="15" fill="rgb(246,177,23)" fg:x="41364" fg:w="1385"/><text x="41.4673%" y="254.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:636) (2,325 samples, 2.32%)</title><rect x="40.4072%" y="212" width="2.3168%" height="15" fill="rgb(230,62,27)" fg:x="40551" fg:w="2325"/><text x="40.6572%" y="222.50">_..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:323) (2,104 samples, 2.10%)</title><rect x="40.6274%" y="228" width="2.0965%" height="15" fill="rgb(216,154,8)" fg:x="40772" fg:w="2104"/><text x="40.8774%" y="238.50">a..</text></g><g><title>deepcopy (copy.py:168) (103 samples, 0.10%)</title><rect x="42.6213%" y="244" width="0.1026%" height="15" fill="rgb(244,35,45)" fg:x="42773" fg:w="103"/><text x="42.8713%" y="254.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:716) (108 samples, 0.11%)</title><rect x="42.9979%" y="212" width="0.1076%" height="15" fill="rgb(251,115,12)" fg:x="43151" fg:w="108"/><text x="43.2479%" y="222.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:123) (3,211 samples, 3.20%)</title><rect x="40.3344%" y="196" width="3.1996%" height="15" fill="rgb(240,54,50)" fg:x="40478" fg:w="3211"/><text x="40.5844%" y="206.50">_ge..</text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:137) (254 samples, 0.25%)</title><rect x="43.5898%" y="196" width="0.2531%" height="15" fill="rgb(233,84,52)" fg:x="43745" fg:w="254"/><text x="43.8398%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:138) (236 samples, 0.24%)</title><rect x="43.8429%" y="196" width="0.2352%" height="15" fill="rgb(207,117,47)" fg:x="43999" fg:w="236"/><text x="44.0929%" y="206.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:83) (212 samples, 0.21%)</title><rect x="44.6809%" y="212" width="0.2112%" height="15" fill="rgb(249,43,39)" fg:x="44840" fg:w="212"/><text x="44.9309%" y="222.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:84) (180 samples, 0.18%)</title><rect x="44.8922%" y="212" width="0.1794%" height="15" fill="rgb(209,38,44)" fg:x="45052" fg:w="180"/><text x="45.1422%" y="222.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:139) (1,138 samples, 1.13%)</title><rect x="44.0781%" y="196" width="1.1340%" height="15" fill="rgb(236,212,23)" fg:x="44235" fg:w="1138"/><text x="44.3281%" y="206.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:88) (130 samples, 0.13%)</title><rect x="45.0825%" y="212" width="0.1295%" height="15" fill="rgb(242,79,21)" fg:x="45243" fg:w="130"/><text x="45.3325%" y="222.50"></text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:754) (11,635 samples, 11.59%)</title><rect x="33.6542%" y="116" width="11.5937%" height="15" fill="rgb(211,96,35)" fg:x="33774" fg:w="11635"/><text x="33.9042%" y="126.50">run (Tensile/Tens..</text></g><g><title>generateLogicDataAndSolutions (Tensile/TensileCreateLibrary/Run.py:645) (5,088 samples, 5.07%)</title><rect x="40.1780%" y="132" width="5.0700%" height="15" fill="rgb(253,215,40)" fg:x="40321" fg:w="5088"/><text x="40.4280%" y="142.50">genera..</text></g><g><title>__hash__ (Tensile/SolutionStructs/Solution.py:3291) (5,071 samples, 5.05%)</title><rect x="40.1949%" y="148" width="5.0530%" height="15" fill="rgb(211,81,21)" fg:x="40338" fg:w="5071"/><text x="40.4449%" y="158.50">__hash..</text></g><g><title>__str__ (Tensile/SolutionStructs/Solution.py:3281) (5,061 samples, 5.04%)</title><rect x="40.2049%" y="164" width="5.0430%" height="15" fill="rgb(208,190,38)" fg:x="40348" fg:w="5061"/><text x="40.4549%" y="174.50">__str_..</text></g><g><title>getSolutionNameFull (Tensile/SolutionStructs/Naming.py:178) (5,054 samples, 5.04%)</title><rect x="40.2118%" y="180" width="5.0361%" height="15" fill="rgb(235,213,38)" fg:x="40355" fg:w="5054"/><text x="40.4618%" y="190.50">getSol..</text></g><g><title>_deepcopy_dict (copy.py:221) (216 samples, 0.22%)</title><rect x="45.6585%" y="244" width="0.2152%" height="15" fill="rgb(237,122,38)" fg:x="45821" fg:w="216"/><text x="45.9085%" y="254.50"></text></g><g><title>deepcopy (copy.py:125) (227 samples, 0.23%)</title><rect x="46.4726%" y="260" width="0.2262%" height="15" fill="rgb(244,218,35)" fg:x="46638" fg:w="227"/><text x="46.7226%" y="270.50"></text></g><g><title>deepcopy (copy.py:129) (292 samples, 0.29%)</title><rect x="46.8014%" y="260" width="0.2910%" height="15" fill="rgb(240,68,47)" fg:x="46968" fg:w="292"/><text x="47.0514%" y="270.50"></text></g><g><title>deepcopy (copy.py:135) (167 samples, 0.17%)</title><rect x="47.2627%" y="260" width="0.1664%" height="15" fill="rgb(210,16,53)" fg:x="47431" fg:w="167"/><text x="47.5127%" y="270.50"></text></g><g><title>deepcopy (copy.py:136) (118 samples, 0.12%)</title><rect x="47.4292%" y="260" width="0.1176%" height="15" fill="rgb(235,124,12)" fg:x="47598" fg:w="118"/><text x="47.6792%" y="270.50"></text></g><g><title>deepcopy (copy.py:137) (442 samples, 0.44%)</title><rect x="47.5467%" y="260" width="0.4404%" height="15" fill="rgb(224,169,11)" fg:x="47716" fg:w="442"/><text x="47.7967%" y="270.50"></text></g><g><title>_deepcopy_list (copy.py:197) (110 samples, 0.11%)</title><rect x="47.8776%" y="276" width="0.1096%" height="15" fill="rgb(250,166,2)" fg:x="48048" fg:w="110"/><text x="48.1276%" y="286.50"></text></g><g><title>_reconstruct (copy.py:254) (112 samples, 0.11%)</title><rect x="48.1506%" y="276" width="0.1116%" height="15" fill="rgb(242,216,29)" fg:x="48322" fg:w="112"/><text x="48.4006%" y="286.50"></text></g><g><title>_deepcopy_dict (copy.py:221) (144 samples, 0.14%)</title><rect x="48.3539%" y="340" width="0.1435%" height="15" fill="rgb(230,116,27)" fg:x="48526" fg:w="144"/><text x="48.6039%" y="350.50"></text></g><g><title>deepcopy (copy.py:125) (164 samples, 0.16%)</title><rect x="48.9149%" y="356" width="0.1634%" height="15" fill="rgb(228,99,48)" fg:x="49089" fg:w="164"/><text x="49.1649%" y="366.50"></text></g><g><title>deepcopy (copy.py:129) (198 samples, 0.20%)</title><rect x="49.1520%" y="356" width="0.1973%" height="15" fill="rgb(253,11,6)" fg:x="49327" fg:w="198"/><text x="49.4020%" y="366.50"></text></g><g><title>deepcopy (copy.py:135) (141 samples, 0.14%)</title><rect x="49.4779%" y="356" width="0.1405%" height="15" fill="rgb(247,143,39)" fg:x="49654" fg:w="141"/><text x="49.7279%" y="366.50"></text></g><g><title>deepcopy (copy.py:163) (137 samples, 0.14%)</title><rect x="50.0538%" y="388" width="0.1365%" height="15" fill="rgb(236,97,10)" fg:x="50232" fg:w="137"/><text x="50.3038%" y="398.50"></text></g><g><title>deepcopy (copy.py:137) (509 samples, 0.51%)</title><rect x="49.6941%" y="356" width="0.5072%" height="15" fill="rgb(233,208,19)" fg:x="49871" fg:w="509"/><text x="49.9441%" y="366.50"></text></g><g><title>_deepcopy_list (copy.py:197) (243 samples, 0.24%)</title><rect x="49.9591%" y="372" width="0.2421%" height="15" fill="rgb(216,164,2)" fg:x="50137" fg:w="243"/><text x="50.2091%" y="382.50"></text></g><g><title>deepcopy (copy.py:152) (102 samples, 0.10%)</title><rect x="50.2501%" y="356" width="0.1016%" height="15" fill="rgb(220,129,5)" fg:x="50429" fg:w="102"/><text x="50.5001%" y="366.50"></text></g><g><title>_reconstruct (copy.py:254) (165 samples, 0.16%)</title><rect x="50.4972%" y="372" width="0.1644%" height="15" fill="rgb(242,17,10)" fg:x="50677" fg:w="165"/><text x="50.7472%" y="382.50"></text></g><g><title>deepcopy (copy.py:137) (210 samples, 0.21%)</title><rect x="50.9646%" y="420" width="0.2093%" height="15" fill="rgb(242,107,0)" fg:x="51146" fg:w="210"/><text x="51.2146%" y="430.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (164 samples, 0.16%)</title><rect x="51.0104%" y="436" width="0.1634%" height="15" fill="rgb(251,28,31)" fg:x="51192" fg:w="164"/><text x="51.2604%" y="446.50"></text></g><g><title>deepcopy (copy.py:137) (477 samples, 0.48%)</title><rect x="50.7155%" y="388" width="0.4753%" height="15" fill="rgb(233,223,10)" fg:x="50896" fg:w="477"/><text x="50.9655%" y="398.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (394 samples, 0.39%)</title><rect x="50.7982%" y="404" width="0.3926%" height="15" fill="rgb(215,21,27)" fg:x="50979" fg:w="394"/><text x="51.0482%" y="414.50"></text></g><g><title>_reconstruct (copy.py:260) (557 samples, 0.56%)</title><rect x="50.6806%" y="372" width="0.5550%" height="15" fill="rgb(232,23,21)" fg:x="50861" fg:w="557"/><text x="50.9306%" y="382.50"></text></g><g><title>deepcopy (copy.py:163) (952 samples, 0.95%)</title><rect x="50.3647%" y="356" width="0.9486%" height="15" fill="rgb(244,5,23)" fg:x="50544" fg:w="952"/><text x="50.6147%" y="366.50"></text></g><g><title>deepcopy (copy.py:137) (3,122 samples, 3.11%)</title><rect x="48.3349%" y="324" width="3.1109%" height="15" fill="rgb(226,81,46)" fg:x="48507" fg:w="3122"/><text x="48.5849%" y="334.50">dee..</text></g><g><title>_deepcopy_dict (copy.py:222) (2,959 samples, 2.95%)</title><rect x="48.4973%" y="340" width="2.9485%" height="15" fill="rgb(247,70,30)" fg:x="48670" fg:w="2959"/><text x="48.7473%" y="350.50">_d..</text></g><g><title>deepcopy (copy.py:137) (3,208 samples, 3.20%)</title><rect x="48.2722%" y="292" width="3.1966%" height="15" fill="rgb(212,68,19)" fg:x="48444" fg:w="3208"/><text x="48.5222%" y="302.50">dee..</text></g><g><title>_deepcopy_dict (copy.py:222) (3,193 samples, 3.18%)</title><rect x="48.2871%" y="308" width="3.1817%" height="15" fill="rgb(240,187,13)" fg:x="48459" fg:w="3193"/><text x="48.5371%" y="318.50">_de..</text></g><g><title>_reconstruct (copy.py:260) (3,222 samples, 3.21%)</title><rect x="48.2692%" y="276" width="3.2106%" height="15" fill="rgb(223,113,26)" fg:x="48441" fg:w="3222"/><text x="48.5192%" y="286.50">_re..</text></g><g><title>deepcopy (copy.py:163) (3,442 samples, 3.43%)</title><rect x="48.0619%" y="260" width="3.4298%" height="15" fill="rgb(206,192,2)" fg:x="48233" fg:w="3442"/><text x="48.3119%" y="270.50">dee..</text></g><g><title>deepcopy (copy.py:137) (6,021 samples, 6.00%)</title><rect x="45.6465%" y="228" width="5.9996%" height="15" fill="rgb(241,108,4)" fg:x="45809" fg:w="6021"/><text x="45.8965%" y="238.50">deepcopy..</text></g><g><title>_deepcopy_dict (copy.py:222) (5,793 samples, 5.77%)</title><rect x="45.8737%" y="244" width="5.7725%" height="15" fill="rgb(247,173,49)" fg:x="46037" fg:w="5793"/><text x="46.1237%" y="254.50">_deepco..</text></g><g><title>deepcopy (copy.py:137) (202 samples, 0.20%)</title><rect x="51.7089%" y="260" width="0.2013%" height="15" fill="rgb(224,114,35)" fg:x="51893" fg:w="202"/><text x="51.9589%" y="270.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (191 samples, 0.19%)</title><rect x="51.7199%" y="276" width="0.1903%" height="15" fill="rgb(245,159,27)" fg:x="51904" fg:w="191"/><text x="51.9699%" y="286.50"></text></g><g><title>_reconstruct (copy.py:260) (211 samples, 0.21%)</title><rect x="51.7039%" y="244" width="0.2103%" height="15" fill="rgb(245,172,44)" fg:x="51888" fg:w="211"/><text x="51.9539%" y="254.50"></text></g><g><title>deepcopy (copy.py:163) (266 samples, 0.27%)</title><rect x="51.6601%" y="228" width="0.2651%" height="15" fill="rgb(236,23,11)" fg:x="51844" fg:w="266"/><text x="51.9101%" y="238.50"></text></g><g><title>deepcopy (copy.py:137) (6,380 samples, 6.36%)</title><rect x="45.5767%" y="196" width="6.3574%" height="15" fill="rgb(205,117,38)" fg:x="45739" fg:w="6380"/><text x="45.8267%" y="206.50">deepcopy..</text></g><g><title>_deepcopy_dict (copy.py:222) (6,370 samples, 6.35%)</title><rect x="45.5867%" y="212" width="6.3474%" height="15" fill="rgb(237,72,25)" fg:x="45749" fg:w="6370"/><text x="45.8367%" y="222.50">_deepcop..</text></g><g><title>_reconstruct (copy.py:260) (6,387 samples, 6.36%)</title><rect x="45.5748%" y="180" width="6.3643%" height="15" fill="rgb(244,70,9)" fg:x="45737" fg:w="6387"/><text x="45.8248%" y="190.50">_reconst..</text></g><g><title>deepcopy (copy.py:163) (6,433 samples, 6.41%)</title><rect x="45.5449%" y="164" width="6.4102%" height="15" fill="rgb(217,125,39)" fg:x="45707" fg:w="6433"/><text x="45.7949%" y="174.50">deepcopy..</text></g><g><title>getKeyNoInternalArgs (Tensile/SolutionStructs/Naming.py:34) (6,500 samples, 6.48%)</title><rect x="45.4811%" y="148" width="6.4769%" height="15" fill="rgb(235,36,10)" fg:x="45643" fg:w="6500"/><text x="45.7311%" y="158.50">getKeyNo..</text></g><g><title>generateKernelObjectsFromSolutions (Tensile/TensileCreateLibrary/Run.py:488) (6,575 samples, 6.55%)</title><rect x="45.4472%" y="132" width="6.5517%" height="15" fill="rgb(251,123,47)" fg:x="45609" fg:w="6575"/><text x="45.6972%" y="142.50">generateK..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:322) (149 samples, 0.15%)</title><rect x="52.2550%" y="228" width="0.1485%" height="15" fill="rgb(221,13,13)" fg:x="52441" fg:w="149"/><text x="52.5050%" y="238.50"></text></g><g><title>_reconstruct (copy.py:254) (114 samples, 0.11%)</title><rect x="53.0113%" y="260" width="0.1136%" height="15" fill="rgb(238,131,9)" fg:x="53200" fg:w="114"/><text x="53.2613%" y="270.50"></text></g><g><title>deepcopy (copy.py:137) (576 samples, 0.57%)</title><rect x="53.3501%" y="308" width="0.5740%" height="15" fill="rgb(211,50,8)" fg:x="53540" fg:w="576"/><text x="53.6001%" y="318.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (499 samples, 0.50%)</title><rect x="53.4268%" y="324" width="0.4972%" height="15" fill="rgb(245,182,24)" fg:x="53617" fg:w="499"/><text x="53.6768%" y="334.50"></text></g><g><title>deepcopy (copy.py:137) (866 samples, 0.86%)</title><rect x="53.1697%" y="276" width="0.8629%" height="15" fill="rgb(242,14,37)" fg:x="53359" fg:w="866"/><text x="53.4197%" y="286.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (815 samples, 0.81%)</title><rect x="53.2205%" y="292" width="0.8121%" height="15" fill="rgb(246,228,12)" fg:x="53410" fg:w="815"/><text x="53.4705%" y="302.50"></text></g><g><title>_reconstruct (copy.py:260) (919 samples, 0.92%)</title><rect x="53.1438%" y="260" width="0.9157%" height="15" fill="rgb(213,55,15)" fg:x="53333" fg:w="919"/><text x="53.3938%" y="270.50"></text></g><g><title>deepcopy (copy.py:163) (1,185 samples, 1.18%)</title><rect x="52.9256%" y="244" width="1.1808%" height="15" fill="rgb(209,9,3)" fg:x="53114" fg:w="1185"/><text x="53.1756%" y="254.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:636) (2,030 samples, 2.02%)</title><rect x="52.2201%" y="212" width="2.0228%" height="15" fill="rgb(230,59,30)" fg:x="52406" fg:w="2030"/><text x="52.4701%" y="222.50">_..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:323) (1,846 samples, 1.84%)</title><rect x="52.4034%" y="228" width="1.8395%" height="15" fill="rgb(209,121,21)" fg:x="52590" fg:w="1846"/><text x="52.6534%" y="238.50">a..</text></g><g><title>deepcopy (copy.py:168) (112 samples, 0.11%)</title><rect x="54.1313%" y="244" width="0.1116%" height="15" fill="rgb(220,109,13)" fg:x="54324" fg:w="112"/><text x="54.3813%" y="254.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:716) (140 samples, 0.14%)</title><rect x="54.4880%" y="212" width="0.1395%" height="15" fill="rgb(232,18,1)" fg:x="54682" fg:w="140"/><text x="54.7380%" y="222.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:733) (104 samples, 0.10%)</title><rect x="54.6684%" y="212" width="0.1036%" height="15" fill="rgb(215,41,42)" fg:x="54863" fg:w="104"/><text x="54.9184%" y="222.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:123) (3,009 samples, 3.00%)</title><rect x="52.1394%" y="196" width="2.9983%" height="15" fill="rgb(224,123,36)" fg:x="52325" fg:w="3009"/><text x="52.3894%" y="206.50">_ge..</text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:137) (201 samples, 0.20%)</title><rect x="55.1686%" y="196" width="0.2003%" height="15" fill="rgb(240,125,3)" fg:x="55365" fg:w="201"/><text x="55.4186%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:138) (280 samples, 0.28%)</title><rect x="55.3689%" y="196" width="0.2790%" height="15" fill="rgb(205,98,50)" fg:x="55566" fg:w="280"/><text x="55.6189%" y="206.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:83) (175 samples, 0.17%)</title><rect x="56.1621%" y="212" width="0.1744%" height="15" fill="rgb(205,185,37)" fg:x="56362" fg:w="175"/><text x="56.4121%" y="222.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:84) (184 samples, 0.18%)</title><rect x="56.3364%" y="212" width="0.1833%" height="15" fill="rgb(238,207,15)" fg:x="56537" fg:w="184"/><text x="56.5864%" y="222.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:139) (1,006 samples, 1.00%)</title><rect x="55.6479%" y="196" width="1.0024%" height="15" fill="rgb(213,199,42)" fg:x="55846" fg:w="1006"/><text x="55.8979%" y="206.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:88) (123 samples, 0.12%)</title><rect x="56.5278%" y="212" width="0.1226%" height="15" fill="rgb(235,201,11)" fg:x="56729" fg:w="123"/><text x="56.7778%" y="222.50"></text></g><g><title>generateKernelObjectsFromSolutions (Tensile/TensileCreateLibrary/Run.py:489) (4,694 samples, 4.68%)</title><rect x="51.9989%" y="132" width="4.6773%" height="15" fill="rgb(207,46,11)" fg:x="52184" fg:w="4694"/><text x="52.2489%" y="142.50">gener..</text></g><g><title>__hash__ (Tensile/SolutionStructs/Solution.py:3291) (4,685 samples, 4.67%)</title><rect x="52.0079%" y="148" width="4.6684%" height="15" fill="rgb(241,35,35)" fg:x="52193" fg:w="4685"/><text x="52.2579%" y="158.50">__has..</text></g><g><title>__str__ (Tensile/SolutionStructs/Solution.py:3281) (4,674 samples, 4.66%)</title><rect x="52.0188%" y="164" width="4.6574%" height="15" fill="rgb(243,32,47)" fg:x="52204" fg:w="4674"/><text x="52.2688%" y="174.50">__str..</text></g><g><title>getSolutionNameFull (Tensile/SolutionStructs/Naming.py:178) (4,667 samples, 4.65%)</title><rect x="52.0258%" y="180" width="4.6504%" height="15" fill="rgb(247,202,23)" fg:x="52211" fg:w="4667"/><text x="52.2758%" y="190.50">getSo..</text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:760) (11,478 samples, 11.44%)</title><rect x="45.2479%" y="116" width="11.4373%" height="15" fill="rgb(219,102,11)" fg:x="45409" fg:w="11478"/><text x="45.4979%" y="126.50">run (Tensile/Tens..</text></g><g><title>conversionKernelNames (Tensile/KernelHelperNaming.py:63) (198 samples, 0.20%)</title><rect x="56.7848%" y="148" width="0.1973%" height="15" fill="rgb(243,110,44)" fg:x="56987" fg:w="198"/><text x="57.0348%" y="158.50"></text></g><g><title>generateKernelHelperObjects (Tensile/TensileCreateLibrary/Run.py:518) (311 samples, 0.31%)</title><rect x="56.6932%" y="132" width="0.3099%" height="15" fill="rgb(222,74,54)" fg:x="56895" fg:w="311"/><text x="56.9432%" y="142.50"></text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:761) (420 samples, 0.42%)</title><rect x="56.6852%" y="116" width="0.4185%" height="15" fill="rgb(216,99,12)" fg:x="56887" fg:w="420"/><text x="56.9352%" y="126.50"></text></g><g><title>deepcopy (copy.py:137) (296 samples, 0.29%)</title><rect x="57.8102%" y="308" width="0.2949%" height="15" fill="rgb(226,22,26)" fg:x="58016" fg:w="296"/><text x="58.0602%" y="318.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (253 samples, 0.25%)</title><rect x="57.8530%" y="324" width="0.2521%" height="15" fill="rgb(217,163,10)" fg:x="58059" fg:w="253"/><text x="58.1030%" y="334.50"></text></g><g><title>deepcopy (copy.py:137) (442 samples, 0.44%)</title><rect x="57.7086%" y="276" width="0.4404%" height="15" fill="rgb(213,25,53)" fg:x="57914" fg:w="442"/><text x="57.9586%" y="286.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (411 samples, 0.41%)</title><rect x="57.7394%" y="292" width="0.4095%" height="15" fill="rgb(252,105,26)" fg:x="57945" fg:w="411"/><text x="57.9894%" y="302.50"></text></g><g><title>_reconstruct (copy.py:260) (470 samples, 0.47%)</title><rect x="57.6916%" y="260" width="0.4683%" height="15" fill="rgb(220,39,43)" fg:x="57897" fg:w="470"/><text x="57.9416%" y="270.50"></text></g><g><title>deepcopy (copy.py:163) (638 samples, 0.64%)</title><rect x="57.5531%" y="244" width="0.6357%" height="15" fill="rgb(229,68,48)" fg:x="57758" fg:w="638"/><text x="57.8031%" y="254.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:636) (1,080 samples, 1.08%)</title><rect x="57.1804%" y="212" width="1.0762%" height="15" fill="rgb(252,8,32)" fg:x="57384" fg:w="1080"/><text x="57.4304%" y="222.50"></text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:323) (982 samples, 0.98%)</title><rect x="57.2781%" y="228" width="0.9785%" height="15" fill="rgb(223,20,43)" fg:x="57482" fg:w="982"/><text x="57.5281%" y="238.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:123) (1,471 samples, 1.47%)</title><rect x="57.1515%" y="196" width="1.4658%" height="15" fill="rgb(229,81,49)" fg:x="57355" fg:w="1471"/><text x="57.4015%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:137) (123 samples, 0.12%)</title><rect x="58.6671%" y="196" width="0.1226%" height="15" fill="rgb(236,28,36)" fg:x="58876" fg:w="123"/><text x="58.9171%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:138) (107 samples, 0.11%)</title><rect x="58.7897%" y="196" width="0.1066%" height="15" fill="rgb(249,185,26)" fg:x="58999" fg:w="107"/><text x="59.0397%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:139) (357 samples, 0.36%)</title><rect x="58.8963%" y="196" width="0.3557%" height="15" fill="rgb(249,174,33)" fg:x="59106" fg:w="357"/><text x="59.1463%" y="206.50"></text></g><g><title>shortenFileBase (Tensile/SolutionStructs/Naming.py:148) (2,163 samples, 2.16%)</title><rect x="57.1226%" y="164" width="2.1553%" height="15" fill="rgb(233,201,37)" fg:x="57326" fg:w="2163"/><text x="57.3726%" y="174.50">s..</text></g><g><title>getKernelNameMin (Tensile/SolutionStructs/Naming.py:170) (2,162 samples, 2.15%)</title><rect x="57.1236%" y="180" width="2.1543%" height="15" fill="rgb(221,78,26)" fg:x="57327" fg:w="2162"/><text x="57.3736%" y="190.50">g..</text></g><g><title>writeSolutionsAndKernelsTCL (Tensile/TensileCreateLibrary/Run.py:405) (2,204 samples, 2.20%)</title><rect x="57.1167%" y="132" width="2.1962%" height="15" fill="rgb(250,127,30)" fg:x="57320" fg:w="2204"/><text x="57.3667%" y="142.50">w..</text></g><g><title>getKernelFileBase (Tensile/SolutionStructs/Naming.py:165) (2,200 samples, 2.19%)</title><rect x="57.1207%" y="148" width="2.1922%" height="15" fill="rgb(230,49,44)" fg:x="57324" fg:w="2200"/><text x="57.3707%" y="158.50">g..</text></g><g><title>writeSolutionsAndKernelsTCL (Tensile/TensileCreateLibrary/Run.py:432) (3,150 samples, 3.14%)</title><rect x="59.3258%" y="132" width="3.1388%" height="15" fill="rgb(229,67,23)" fg:x="59537" fg:w="3150"/><text x="59.5758%" y="142.50">wri..</text></g><g><title>_deepcopy_dict (copy.py:222) (194 samples, 0.19%)</title><rect x="63.0416%" y="308" width="0.1933%" height="15" fill="rgb(249,83,47)" fg:x="63266" fg:w="194"/><text x="63.2916%" y="318.50"></text></g><g><title>deepcopy (copy.py:137) (226 samples, 0.23%)</title><rect x="63.0107%" y="292" width="0.2252%" height="15" fill="rgb(215,43,3)" fg:x="63235" fg:w="226"/><text x="63.2607%" y="302.50"></text></g><g><title>deepcopy (copy.py:137) (322 samples, 0.32%)</title><rect x="62.9429%" y="260" width="0.3209%" height="15" fill="rgb(238,154,13)" fg:x="63167" fg:w="322"/><text x="63.1929%" y="270.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (305 samples, 0.30%)</title><rect x="62.9599%" y="276" width="0.3039%" height="15" fill="rgb(219,56,2)" fg:x="63184" fg:w="305"/><text x="63.2099%" y="286.50"></text></g><g><title>_reconstruct (copy.py:260) (357 samples, 0.36%)</title><rect x="62.9240%" y="244" width="0.3557%" height="15" fill="rgb(233,0,4)" fg:x="63148" fg:w="357"/><text x="63.1740%" y="254.50"></text></g><g><title>deepcopy (copy.py:163) (480 samples, 0.48%)</title><rect x="62.8184%" y="228" width="0.4783%" height="15" fill="rgb(235,30,7)" fg:x="63042" fg:w="480"/><text x="63.0684%" y="238.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:636) (814 samples, 0.81%)</title><rect x="62.5234%" y="196" width="0.8111%" height="15" fill="rgb(250,79,13)" fg:x="62746" fg:w="814"/><text x="62.7734%" y="206.50"></text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:323) (739 samples, 0.74%)</title><rect x="62.5982%" y="212" width="0.7364%" height="15" fill="rgb(211,146,34)" fg:x="62821" fg:w="739"/><text x="62.8482%" y="222.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:123) (1,105 samples, 1.10%)</title><rect x="62.4925%" y="180" width="1.1011%" height="15" fill="rgb(228,22,38)" fg:x="62715" fg:w="1105"/><text x="62.7425%" y="190.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:139) (272 samples, 0.27%)</title><rect x="63.8068%" y="180" width="0.2710%" height="15" fill="rgb(235,168,5)" fg:x="64034" fg:w="272"/><text x="64.0568%" y="190.50"></text></g><g><title>passPostKernelInfoToSolution (Tensile/TensileCreateLibrary/Run.py:192) (1,636 samples, 1.63%)</title><rect x="62.4676%" y="148" width="1.6302%" height="15" fill="rgb(221,155,16)" fg:x="62690" fg:w="1636"/><text x="62.7176%" y="158.50"></text></g><g><title>getKernelNameMin (Tensile/SolutionStructs/Naming.py:170) (1,632 samples, 1.63%)</title><rect x="62.4716%" y="164" width="1.6262%" height="15" fill="rgb(215,215,53)" fg:x="62694" fg:w="1632"/><text x="62.7216%" y="174.50"></text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:322) (132 samples, 0.13%)</title><rect x="64.2941%" y="212" width="0.1315%" height="15" fill="rgb(223,4,10)" fg:x="64523" fg:w="132"/><text x="64.5441%" y="222.50"></text></g><g><title>deepcopy (copy.py:137) (108 samples, 0.11%)</title><rect x="64.7196%" y="228" width="0.1076%" height="15" fill="rgb(234,103,6)" fg:x="64950" fg:w="108"/><text x="64.9696%" y="238.50"></text></g><g><title>_reconstruct (copy.py:254) (108 samples, 0.11%)</title><rect x="65.0395%" y="244" width="0.1076%" height="15" fill="rgb(227,97,0)" fg:x="65271" fg:w="108"/><text x="65.2895%" y="254.50"></text></g><g><title>deepcopy (copy.py:137) (565 samples, 0.56%)</title><rect x="65.3434%" y="292" width="0.5630%" height="15" fill="rgb(234,150,53)" fg:x="65576" fg:w="565"/><text x="65.5934%" y="302.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (480 samples, 0.48%)</title><rect x="65.4281%" y="308" width="0.4783%" height="15" fill="rgb(228,201,54)" fg:x="65661" fg:w="480"/><text x="65.6781%" y="318.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (767 samples, 0.76%)</title><rect x="65.2288%" y="276" width="0.7643%" height="15" fill="rgb(222,22,37)" fg:x="65461" fg:w="767"/><text x="65.4788%" y="286.50"></text></g><g><title>deepcopy (copy.py:137) (808 samples, 0.81%)</title><rect x="65.1889%" y="260" width="0.8051%" height="15" fill="rgb(237,53,32)" fg:x="65421" fg:w="808"/><text x="65.4389%" y="270.50"></text></g><g><title>_reconstruct (copy.py:260) (856 samples, 0.85%)</title><rect x="65.1650%" y="244" width="0.8530%" height="15" fill="rgb(233,25,53)" fg:x="65397" fg:w="856"/><text x="65.4150%" y="254.50"></text></g><g><title>deepcopy (copy.py:163) (1,126 samples, 1.12%)</title><rect x="64.9568%" y="228" width="1.1220%" height="15" fill="rgb(210,40,34)" fg:x="65188" fg:w="1126"/><text x="65.2068%" y="238.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:636) (1,941 samples, 1.93%)</title><rect x="64.2543%" y="196" width="1.9341%" height="15" fill="rgb(241,220,44)" fg:x="64483" fg:w="1941"/><text x="64.5043%" y="206.50">_..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:323) (1,769 samples, 1.76%)</title><rect x="64.4256%" y="212" width="1.7627%" height="15" fill="rgb(235,28,35)" fg:x="64655" fg:w="1769"/><text x="64.6756%" y="222.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:716) (109 samples, 0.11%)</title><rect x="66.4315%" y="196" width="0.1086%" height="15" fill="rgb(210,56,17)" fg:x="66668" fg:w="109"/><text x="66.6815%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:123) (2,718 samples, 2.71%)</title><rect x="64.2014%" y="180" width="2.7084%" height="15" fill="rgb(224,130,29)" fg:x="64430" fg:w="2718"/><text x="64.4514%" y="190.50">_g..</text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:137) (226 samples, 0.23%)</title><rect x="66.9746%" y="180" width="0.2252%" height="15" fill="rgb(235,212,8)" fg:x="67213" fg:w="226"/><text x="67.2246%" y="190.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:138) (188 samples, 0.19%)</title><rect x="67.1998%" y="180" width="0.1873%" height="15" fill="rgb(223,33,50)" fg:x="67439" fg:w="188"/><text x="67.4498%" y="190.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:83) (116 samples, 0.12%)</title><rect x="67.7687%" y="196" width="0.1156%" height="15" fill="rgb(219,149,13)" fg:x="68010" fg:w="116"/><text x="68.0187%" y="206.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:84) (144 samples, 0.14%)</title><rect x="67.8843%" y="196" width="0.1435%" height="15" fill="rgb(250,156,29)" fg:x="68126" fg:w="144"/><text x="68.1343%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:139) (696 samples, 0.69%)</title><rect x="67.3871%" y="180" width="0.6935%" height="15" fill="rgb(216,193,19)" fg:x="67627" fg:w="696"/><text x="67.6371%" y="190.50"></text></g><g><title>passPostKernelInfoToSolution (Tensile/TensileCreateLibrary/Run.py:197) (4,015 samples, 4.00%)</title><rect x="64.1237%" y="148" width="4.0008%" height="15" fill="rgb(216,135,14)" fg:x="64352" fg:w="4015"/><text x="64.3737%" y="158.50">pass..</text></g><g><title>getKernelNameMin (Tensile/SolutionStructs/Naming.py:170) (4,013 samples, 4.00%)</title><rect x="64.1257%" y="164" width="3.9988%" height="15" fill="rgb(241,47,5)" fg:x="64354" fg:w="4013"/><text x="64.3757%" y="174.50">getK..</text></g><g><title>writeSolutionsAndKernelsTCL (Tensile/TensileCreateLibrary/Run.py:435) (5,699 samples, 5.68%)</title><rect x="62.4656%" y="132" width="5.6788%" height="15" fill="rgb(233,42,35)" fg:x="62688" fg:w="5699"/><text x="62.7156%" y="142.50">writeSo..</text></g><g><title>writeSolutionsAndKernelsTCL (Tensile/TensileCreateLibrary/Run.py:438) (2,701 samples, 2.69%)</title><rect x="68.1444%" y="132" width="2.6914%" height="15" fill="rgb(231,13,6)" fg:x="68387" fg:w="2701"/><text x="68.3944%" y="142.50">wr..</text></g><g><title>buildAssemblyCodeObjectFiles (Tensile/Toolchain/Assembly.py:93) (160 samples, 0.16%)</title><rect x="71.3091%" y="148" width="0.1594%" height="15" fill="rgb(207,181,40)" fg:x="71563" fg:w="160"/><text x="71.5591%" y="158.50"></text></g><g><title>writeSolutionsAndKernelsTCL (Tensile/TensileCreateLibrary/Run.py:446) (637 samples, 0.63%)</title><rect x="70.8388%" y="132" width="0.6347%" height="15" fill="rgb(254,173,49)" fg:x="71091" fg:w="637"/><text x="71.0888%" y="142.50"></text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:767) (14,513 samples, 14.46%)</title><rect x="57.1037%" y="116" width="14.4615%" height="15" fill="rgb(221,1,38)" fg:x="57307" fg:w="14513"/><text x="57.3537%" y="126.50">run (Tensile/TensileCr..</text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:790) (138 samples, 0.14%)</title><rect x="71.5652%" y="116" width="0.1375%" height="15" fill="rgb(206,124,46)" fg:x="71820" fg:w="138"/><text x="71.8152%" y="126.50"></text></g><g><title>getKernels (Tensile/SolutionStructs/Solution.py:235) (1,082 samples, 1.08%)</title><rect x="71.7057%" y="132" width="1.0782%" height="15" fill="rgb(249,21,11)" fg:x="71961" fg:w="1082"/><text x="71.9557%" y="142.50"></text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:791) (1,088 samples, 1.08%)</title><rect x="71.7027%" y="116" width="1.0841%" height="15" fill="rgb(222,201,40)" fg:x="71958" fg:w="1088"/><text x="71.9527%" y="126.50"></text></g><g><title>deepcopy (copy.py:152) (174 samples, 0.17%)</title><rect x="72.9433%" y="148" width="0.1734%" height="15" fill="rgb(235,61,29)" fg:x="73203" fg:w="174"/><text x="73.1933%" y="158.50"></text></g><g><title>_deepcopy_dict (copy.py:221) (1,646 samples, 1.64%)</title><rect x="73.2472%" y="228" width="1.6402%" height="15" fill="rgb(219,207,3)" fg:x="73508" fg:w="1646"/><text x="73.4972%" y="238.50"></text></g><g><title>deepcopy (copy.py:125) (226 samples, 0.23%)</title><rect x="75.6258%" y="244" width="0.2252%" height="15" fill="rgb(222,56,46)" fg:x="75895" fg:w="226"/><text x="75.8758%" y="254.50"></text></g><g><title>deepcopy (copy.py:129) (264 samples, 0.26%)</title><rect x="75.9237%" y="244" width="0.2631%" height="15" fill="rgb(239,76,54)" fg:x="76194" fg:w="264"/><text x="76.1737%" y="254.50"></text></g><g><title>deepcopy (copy.py:135) (172 samples, 0.17%)</title><rect x="76.3313%" y="244" width="0.1714%" height="15" fill="rgb(231,124,27)" fg:x="76603" fg:w="172"/><text x="76.5813%" y="254.50"></text></g><g><title>deepcopy (copy.py:136) (105 samples, 0.10%)</title><rect x="76.5027%" y="244" width="0.1046%" height="15" fill="rgb(249,195,6)" fg:x="76775" fg:w="105"/><text x="76.7527%" y="254.50"></text></g><g><title>_deepcopy_dict (copy.py:221) (197 samples, 0.20%)</title><rect x="76.8265%" y="260" width="0.1963%" height="15" fill="rgb(237,174,47)" fg:x="77100" fg:w="197"/><text x="77.0765%" y="270.50"></text></g><g><title>_deepcopy_list (copy.py:196) (154 samples, 0.15%)</title><rect x="77.1155%" y="260" width="0.1535%" height="15" fill="rgb(206,201,31)" fg:x="77390" fg:w="154"/><text x="77.3655%" y="270.50"></text></g><g><title>deepcopy (copy.py:137) (768 samples, 0.77%)</title><rect x="76.6073%" y="244" width="0.7653%" height="15" fill="rgb(231,57,52)" fg:x="76880" fg:w="768"/><text x="76.8573%" y="254.50"></text></g><g><title>_deepcopy_list (copy.py:197) (104 samples, 0.10%)</title><rect x="77.2689%" y="260" width="0.1036%" height="15" fill="rgb(248,177,22)" fg:x="77544" fg:w="104"/><text x="77.5189%" y="270.50"></text></g><g><title>_reconstruct (copy.py:254) (111 samples, 0.11%)</title><rect x="77.5758%" y="260" width="0.1106%" height="15" fill="rgb(215,211,37)" fg:x="77852" fg:w="111"/><text x="77.8258%" y="270.50"></text></g><g><title>_deepcopy_dict (copy.py:221) (827 samples, 0.82%)</title><rect x="77.7831%" y="324" width="0.8241%" height="15" fill="rgb(241,128,51)" fg:x="78060" fg:w="827"/><text x="78.0331%" y="334.50"></text></g><g><title>deepcopy (copy.py:125) (165 samples, 0.16%)</title><rect x="79.0287%" y="340" width="0.1644%" height="15" fill="rgb(227,165,31)" fg:x="79310" fg:w="165"/><text x="79.2787%" y="350.50"></text></g><g><title>deepcopy (copy.py:129) (212 samples, 0.21%)</title><rect x="79.2459%" y="340" width="0.2112%" height="15" fill="rgb(228,167,24)" fg:x="79528" fg:w="212"/><text x="79.4959%" y="350.50"></text></g><g><title>deepcopy (copy.py:135) (115 samples, 0.11%)</title><rect x="79.5638%" y="340" width="0.1146%" height="15" fill="rgb(228,143,12)" fg:x="79847" fg:w="115"/><text x="79.8138%" y="350.50"></text></g><g><title>_deepcopy_list (copy.py:196) (126 samples, 0.13%)</title><rect x="79.9713%" y="356" width="0.1256%" height="15" fill="rgb(249,149,8)" fg:x="80256" fg:w="126"/><text x="80.2213%" y="366.50"></text></g><g><title>deepcopy (copy.py:163) (126 samples, 0.13%)</title><rect x="80.2055%" y="372" width="0.1256%" height="15" fill="rgb(243,35,44)" fg:x="80491" fg:w="126"/><text x="80.4555%" y="382.50"></text></g><g><title>deepcopy (copy.py:137) (578 samples, 0.58%)</title><rect x="79.7630%" y="340" width="0.5759%" height="15" fill="rgb(246,89,9)" fg:x="80047" fg:w="578"/><text x="80.0130%" y="350.50"></text></g><g><title>_deepcopy_list (copy.py:197) (243 samples, 0.24%)</title><rect x="80.0969%" y="356" width="0.2421%" height="15" fill="rgb(233,213,13)" fg:x="80382" fg:w="243"/><text x="80.3469%" y="366.50"></text></g><g><title>deepcopy (copy.py:152) (210 samples, 0.21%)</title><rect x="80.4097%" y="340" width="0.2093%" height="15" fill="rgb(233,141,41)" fg:x="80696" fg:w="210"/><text x="80.6597%" y="350.50"></text></g><g><title>_reconstruct (copy.py:254) (183 samples, 0.18%)</title><rect x="80.7824%" y="356" width="0.1824%" height="15" fill="rgb(239,167,4)" fg:x="81070" fg:w="183"/><text x="81.0324%" y="366.50"></text></g><g><title>deepcopy (copy.py:137) (208 samples, 0.21%)</title><rect x="81.2667%" y="404" width="0.2073%" height="15" fill="rgb(209,217,16)" fg:x="81556" fg:w="208"/><text x="81.5167%" y="414.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (145 samples, 0.14%)</title><rect x="81.3295%" y="420" width="0.1445%" height="15" fill="rgb(219,88,35)" fg:x="81619" fg:w="145"/><text x="81.5795%" y="430.50"></text></g><g><title>deepcopy (copy.py:137) (462 samples, 0.46%)</title><rect x="81.0315%" y="372" width="0.4604%" height="15" fill="rgb(220,193,23)" fg:x="81320" fg:w="462"/><text x="81.2815%" y="382.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (370 samples, 0.37%)</title><rect x="81.1232%" y="388" width="0.3687%" height="15" fill="rgb(230,90,52)" fg:x="81412" fg:w="370"/><text x="81.3732%" y="398.50"></text></g><g><title>_reconstruct (copy.py:260) (550 samples, 0.55%)</title><rect x="80.9857%" y="356" width="0.5480%" height="15" fill="rgb(252,106,19)" fg:x="81274" fg:w="550"/><text x="81.2357%" y="366.50"></text></g><g><title>deepcopy (copy.py:163) (988 samples, 0.98%)</title><rect x="80.6280%" y="340" width="0.9845%" height="15" fill="rgb(206,74,20)" fg:x="80915" fg:w="988"/><text x="80.8780%" y="350.50"></text></g><g><title>deepcopy (copy.py:137) (4,006 samples, 3.99%)</title><rect x="77.7582%" y="308" width="3.9918%" height="15" fill="rgb(230,138,44)" fg:x="78035" fg:w="4006"/><text x="78.0082%" y="318.50">deep..</text></g><g><title>_deepcopy_dict (copy.py:222) (3,154 samples, 3.14%)</title><rect x="78.6072%" y="324" width="3.1428%" height="15" fill="rgb(235,182,43)" fg:x="78887" fg:w="3154"/><text x="78.8572%" y="334.50">_de..</text></g><g><title>deepcopy (copy.py:137) (4,087 samples, 4.07%)</title><rect x="77.7064%" y="276" width="4.0725%" height="15" fill="rgb(242,16,51)" fg:x="77983" fg:w="4087"/><text x="77.9564%" y="286.50">deep..</text></g><g><title>_deepcopy_dict (copy.py:222) (4,066 samples, 4.05%)</title><rect x="77.7273%" y="292" width="4.0516%" height="15" fill="rgb(248,9,4)" fg:x="78004" fg:w="4066"/><text x="77.9773%" y="302.50">_dee..</text></g><g><title>_reconstruct (copy.py:260) (4,104 samples, 4.09%)</title><rect x="77.6994%" y="260" width="4.0894%" height="15" fill="rgb(210,31,22)" fg:x="77976" fg:w="4104"/><text x="77.9494%" y="270.50">_rec..</text></g><g><title>deepcopy (copy.py:163) (4,334 samples, 4.32%)</title><rect x="77.4911%" y="244" width="4.3186%" height="15" fill="rgb(239,54,39)" fg:x="77767" fg:w="4334"/><text x="77.7411%" y="254.50">deepc..</text></g><g><title>deepcopy (copy.py:137) (8,750 samples, 8.72%)</title><rect x="73.2403%" y="212" width="8.7190%" height="15" fill="rgb(230,99,41)" fg:x="73501" fg:w="8750"/><text x="73.4903%" y="222.50">deepcopy (co..</text></g><g><title>_deepcopy_dict (copy.py:222) (7,097 samples, 7.07%)</title><rect x="74.8874%" y="228" width="7.0718%" height="15" fill="rgb(253,106,12)" fg:x="75154" fg:w="7097"/><text x="75.1374%" y="238.50">_deepcopy..</text></g><g><title>deepcopy (copy.py:137) (223 samples, 0.22%)</title><rect x="82.0051%" y="244" width="0.2222%" height="15" fill="rgb(213,46,41)" fg:x="82297" fg:w="223"/><text x="82.2551%" y="254.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (210 samples, 0.21%)</title><rect x="82.0180%" y="260" width="0.2093%" height="15" fill="rgb(215,133,35)" fg:x="82310" fg:w="210"/><text x="82.2680%" y="270.50"></text></g><g><title>_reconstruct (copy.py:260) (228 samples, 0.23%)</title><rect x="82.0031%" y="228" width="0.2272%" height="15" fill="rgb(213,28,5)" fg:x="82295" fg:w="228"/><text x="82.2531%" y="238.50"></text></g><g><title>deepcopy (copy.py:163) (271 samples, 0.27%)</title><rect x="81.9702%" y="212" width="0.2700%" height="15" fill="rgb(215,77,49)" fg:x="82262" fg:w="271"/><text x="82.2202%" y="222.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (9,104 samples, 9.07%)</title><rect x="73.1855%" y="196" width="9.0717%" height="15" fill="rgb(248,100,22)" fg:x="73446" fg:w="9104"/><text x="73.4355%" y="206.50">_deepcopy_dic..</text></g><g><title>deepcopy (copy.py:137) (9,119 samples, 9.09%)</title><rect x="73.1715%" y="180" width="9.0867%" height="15" fill="rgb(208,67,9)" fg:x="73432" fg:w="9119"/><text x="73.4215%" y="190.50">deepcopy (cop..</text></g><g><title>_reconstruct (copy.py:260) (9,129 samples, 9.10%)</title><rect x="73.1665%" y="164" width="9.0966%" height="15" fill="rgb(219,133,21)" fg:x="73427" fg:w="9129"/><text x="73.4165%" y="174.50">_reconstruct ..</text></g><g><title>deepcopy (copy.py:163) (9,185 samples, 9.15%)</title><rect x="73.1197%" y="148" width="9.1524%" height="15" fill="rgb(246,46,29)" fg:x="73380" fg:w="9185"/><text x="73.3697%" y="158.50">deepcopy (cop..</text></g><g><title>getKeyNoInternalArgs (Tensile/SolutionStructs/Naming.py:34) (9,434 samples, 9.40%)</title><rect x="72.8756%" y="132" width="9.4005%" height="15" fill="rgb(246,185,52)" fg:x="73135" fg:w="9434"/><text x="73.1256%" y="142.50">getKeyNoInter..</text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:793) (9,566 samples, 9.53%)</title><rect x="72.7909%" y="116" width="9.5321%" height="15" fill="rgb(252,136,11)" fg:x="73050" fg:w="9566"/><text x="73.0409%" y="126.50">run (Tensile/T..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:322) (141 samples, 0.14%)</title><rect x="82.5800%" y="212" width="0.1405%" height="15" fill="rgb(219,138,53)" fg:x="82874" fg:w="141"/><text x="82.8300%" y="222.50"></text></g><g><title>deepcopy (copy.py:137) (107 samples, 0.11%)</title><rect x="83.0065%" y="228" width="0.1066%" height="15" fill="rgb(211,51,23)" fg:x="83302" fg:w="107"/><text x="83.2565%" y="238.50"></text></g><g><title>_reconstruct (copy.py:254) (118 samples, 0.12%)</title><rect x="83.3333%" y="244" width="0.1176%" height="15" fill="rgb(247,221,28)" fg:x="83630" fg:w="118"/><text x="83.5833%" y="254.50"></text></g><g><title>deepcopy (copy.py:137) (624 samples, 0.62%)</title><rect x="83.6841%" y="292" width="0.6218%" height="15" fill="rgb(251,222,45)" fg:x="83982" fg:w="624"/><text x="83.9341%" y="302.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (527 samples, 0.53%)</title><rect x="83.7807%" y="308" width="0.5251%" height="15" fill="rgb(217,162,53)" fg:x="84079" fg:w="527"/><text x="84.0307%" y="318.50"></text></g><g><title>deepcopy (copy.py:137) (898 samples, 0.89%)</title><rect x="83.5037%" y="260" width="0.8948%" height="15" fill="rgb(229,93,14)" fg:x="83801" fg:w="898"/><text x="83.7537%" y="270.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (847 samples, 0.84%)</title><rect x="83.5545%" y="276" width="0.8440%" height="15" fill="rgb(209,67,49)" fg:x="83852" fg:w="847"/><text x="83.8045%" y="286.50"></text></g><g><title>_reconstruct (copy.py:260) (969 samples, 0.97%)</title><rect x="83.4708%" y="244" width="0.9656%" height="15" fill="rgb(213,87,29)" fg:x="83768" fg:w="969"/><text x="83.7208%" y="254.50"></text></g><g><title>deepcopy (copy.py:163) (1,255 samples, 1.25%)</title><rect x="83.2367%" y="228" width="1.2505%" height="15" fill="rgb(205,151,52)" fg:x="83533" fg:w="1255"/><text x="83.4867%" y="238.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:636) (2,085 samples, 2.08%)</title><rect x="82.5372%" y="196" width="2.0776%" height="15" fill="rgb(253,215,39)" fg:x="82831" fg:w="2085"/><text x="82.7872%" y="206.50">_..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:323) (1,901 samples, 1.89%)</title><rect x="82.7205%" y="212" width="1.8943%" height="15" fill="rgb(221,220,41)" fg:x="83015" fg:w="1901"/><text x="82.9705%" y="222.50">a..</text></g><g><title>deepcopy (copy.py:168) (103 samples, 0.10%)</title><rect x="84.5121%" y="228" width="0.1026%" height="15" fill="rgb(218,133,21)" fg:x="84813" fg:w="103"/><text x="84.7621%" y="238.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:716) (112 samples, 0.11%)</title><rect x="84.8838%" y="196" width="0.1116%" height="15" fill="rgb(221,193,43)" fg:x="85186" fg:w="112"/><text x="85.1338%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:123) (3,001 samples, 2.99%)</title><rect x="82.4584%" y="180" width="2.9904%" height="15" fill="rgb(240,128,52)" fg:x="82752" fg:w="3001"/><text x="82.7084%" y="190.50">_ge..</text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:137) (277 samples, 0.28%)</title><rect x="85.4996%" y="180" width="0.2760%" height="15" fill="rgb(253,114,12)" fg:x="85804" fg:w="277"/><text x="85.7496%" y="190.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:138) (253 samples, 0.25%)</title><rect x="85.7756%" y="180" width="0.2521%" height="15" fill="rgb(215,223,47)" fg:x="86081" fg:w="253"/><text x="86.0256%" y="190.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:83) (180 samples, 0.18%)</title><rect x="86.5967%" y="196" width="0.1794%" height="15" fill="rgb(248,225,23)" fg:x="86905" fg:w="180"/><text x="86.8467%" y="206.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:84) (185 samples, 0.18%)</title><rect x="86.7761%" y="196" width="0.1843%" height="15" fill="rgb(250,108,0)" fg:x="87085" fg:w="185"/><text x="87.0261%" y="206.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:139) (1,054 samples, 1.05%)</title><rect x="86.0277%" y="180" width="1.0503%" height="15" fill="rgb(228,208,7)" fg:x="86334" fg:w="1054"/><text x="86.2777%" y="190.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:88) (116 samples, 0.12%)</title><rect x="86.9624%" y="196" width="0.1156%" height="15" fill="rgb(244,45,10)" fg:x="87272" fg:w="116"/><text x="87.2124%" y="206.50"></text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:794) (4,807 samples, 4.79%)</title><rect x="82.3229%" y="116" width="4.7899%" height="15" fill="rgb(207,125,25)" fg:x="82616" fg:w="4807"/><text x="82.5729%" y="126.50">run (T..</text></g><g><title>__hash__ (Tensile/SolutionStructs/Solution.py:3291) (4,804 samples, 4.79%)</title><rect x="82.3259%" y="132" width="4.7870%" height="15" fill="rgb(210,195,18)" fg:x="82619" fg:w="4804"/><text x="82.5759%" y="142.50">__hash..</text></g><g><title>__str__ (Tensile/SolutionStructs/Solution.py:3281) (4,788 samples, 4.77%)</title><rect x="82.3419%" y="148" width="4.7710%" height="15" fill="rgb(249,80,12)" fg:x="82635" fg:w="4788"/><text x="82.5919%" y="158.50">__str_..</text></g><g><title>getSolutionNameFull (Tensile/SolutionStructs/Naming.py:178) (4,783 samples, 4.77%)</title><rect x="82.3468%" y="164" width="4.7660%" height="15" fill="rgb(221,65,9)" fg:x="82640" fg:w="4783"/><text x="82.5968%" y="174.50">getSol..</text></g><g><title>_deepcopy_dict (copy.py:221) (332 samples, 0.33%)</title><rect x="87.5164%" y="228" width="0.3308%" height="15" fill="rgb(235,49,36)" fg:x="87828" fg:w="332"/><text x="87.7664%" y="238.50"></text></g><g><title>deepcopy (copy.py:125) (262 samples, 0.26%)</title><rect x="88.5278%" y="244" width="0.2611%" height="15" fill="rgb(225,32,20)" fg:x="88843" fg:w="262"/><text x="88.7778%" y="254.50"></text></g><g><title>deepcopy (copy.py:129) (331 samples, 0.33%)</title><rect x="88.8826%" y="244" width="0.3298%" height="15" fill="rgb(215,141,46)" fg:x="89199" fg:w="331"/><text x="89.1326%" y="254.50"></text></g><g><title>deepcopy (copy.py:135) (215 samples, 0.21%)</title><rect x="89.3698%" y="244" width="0.2142%" height="15" fill="rgb(250,160,47)" fg:x="89688" fg:w="215"/><text x="89.6198%" y="254.50"></text></g><g><title>deepcopy (copy.py:136) (129 samples, 0.13%)</title><rect x="89.5841%" y="244" width="0.1285%" height="15" fill="rgb(216,222,40)" fg:x="89903" fg:w="129"/><text x="89.8341%" y="254.50"></text></g><g><title>deepcopy (copy.py:137) (493 samples, 0.49%)</title><rect x="89.7126%" y="244" width="0.4913%" height="15" fill="rgb(234,217,39)" fg:x="90032" fg:w="493"/><text x="89.9626%" y="254.50"></text></g><g><title>_deepcopy_list (copy.py:197) (117 samples, 0.12%)</title><rect x="90.0873%" y="260" width="0.1166%" height="15" fill="rgb(207,178,40)" fg:x="90408" fg:w="117"/><text x="90.3373%" y="270.50"></text></g><g><title>_reconstruct (copy.py:254) (146 samples, 0.15%)</title><rect x="90.3942%" y="260" width="0.1455%" height="15" fill="rgb(221,136,13)" fg:x="90716" fg:w="146"/><text x="90.6442%" y="270.50"></text></g><g><title>_deepcopy_dict (copy.py:221) (208 samples, 0.21%)</title><rect x="90.6533%" y="324" width="0.2073%" height="15" fill="rgb(249,199,10)" fg:x="90976" fg:w="208"/><text x="90.9033%" y="334.50"></text></g><g><title>deepcopy (copy.py:125) (195 samples, 0.19%)</title><rect x="91.3578%" y="340" width="0.1943%" height="15" fill="rgb(249,222,13)" fg:x="91683" fg:w="195"/><text x="91.6078%" y="350.50"></text></g><g><title>deepcopy (copy.py:129) (219 samples, 0.22%)</title><rect x="91.6149%" y="340" width="0.2182%" height="15" fill="rgb(244,185,38)" fg:x="91941" fg:w="219"/><text x="91.8649%" y="350.50"></text></g><g><title>deepcopy (copy.py:135) (129 samples, 0.13%)</title><rect x="91.9517%" y="340" width="0.1285%" height="15" fill="rgb(236,202,9)" fg:x="92279" fg:w="129"/><text x="92.2017%" y="350.50"></text></g><g><title>deepcopy (copy.py:137) (512 samples, 0.51%)</title><rect x="92.1639%" y="340" width="0.5102%" height="15" fill="rgb(250,229,37)" fg:x="92492" fg:w="512"/><text x="92.4139%" y="350.50"></text></g><g><title>_deepcopy_list (copy.py:197) (236 samples, 0.24%)</title><rect x="92.4389%" y="356" width="0.2352%" height="15" fill="rgb(206,174,23)" fg:x="92768" fg:w="236"/><text x="92.6889%" y="366.50"></text></g><g><title>deepcopy (copy.py:152) (109 samples, 0.11%)</title><rect x="92.7438%" y="340" width="0.1086%" height="15" fill="rgb(211,33,43)" fg:x="93074" fg:w="109"/><text x="92.9938%" y="350.50"></text></g><g><title>_reconstruct (copy.py:254) (179 samples, 0.18%)</title><rect x="93.0159%" y="356" width="0.1784%" height="15" fill="rgb(245,58,50)" fg:x="93347" fg:w="179"/><text x="93.2659%" y="366.50"></text></g><g><title>deepcopy (copy.py:137) (220 samples, 0.22%)</title><rect x="93.5081%" y="404" width="0.2192%" height="15" fill="rgb(244,68,36)" fg:x="93841" fg:w="220"/><text x="93.7581%" y="414.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (177 samples, 0.18%)</title><rect x="93.5510%" y="420" width="0.1764%" height="15" fill="rgb(232,229,15)" fg:x="93884" fg:w="177"/><text x="93.8010%" y="430.50"></text></g><g><title>deepcopy (copy.py:137) (472 samples, 0.47%)</title><rect x="93.2759%" y="372" width="0.4703%" height="15" fill="rgb(254,30,23)" fg:x="93608" fg:w="472"/><text x="93.5259%" y="382.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (407 samples, 0.41%)</title><rect x="93.3407%" y="388" width="0.4056%" height="15" fill="rgb(235,160,14)" fg:x="93673" fg:w="407"/><text x="93.5907%" y="398.50"></text></g><g><title>_reconstruct (copy.py:260) (567 samples, 0.56%)</title><rect x="93.2181%" y="356" width="0.5650%" height="15" fill="rgb(212,155,44)" fg:x="93550" fg:w="567"/><text x="93.4681%" y="366.50"></text></g><g><title>deepcopy (copy.py:163) (996 samples, 0.99%)</title><rect x="92.8724%" y="340" width="0.9925%" height="15" fill="rgb(226,2,50)" fg:x="93203" fg:w="996"/><text x="93.1224%" y="350.50"></text></g><g><title>deepcopy (copy.py:137) (3,403 samples, 3.39%)</title><rect x="90.6333%" y="308" width="3.3909%" height="15" fill="rgb(234,177,6)" fg:x="90956" fg:w="3403"/><text x="90.8833%" y="318.50">dee..</text></g><g><title>_deepcopy_dict (copy.py:222) (3,175 samples, 3.16%)</title><rect x="90.8605%" y="324" width="3.1637%" height="15" fill="rgb(217,24,9)" fg:x="91184" fg:w="3175"/><text x="91.1105%" y="334.50">_de..</text></g><g><title>deepcopy (copy.py:137) (3,503 samples, 3.49%)</title><rect x="90.5596%" y="276" width="3.4906%" height="15" fill="rgb(220,13,46)" fg:x="90882" fg:w="3503"/><text x="90.8096%" y="286.50">dee..</text></g><g><title>_deepcopy_dict (copy.py:222) (3,482 samples, 3.47%)</title><rect x="90.5805%" y="292" width="3.4696%" height="15" fill="rgb(239,221,27)" fg:x="90903" fg:w="3482"/><text x="90.8305%" y="302.50">_de..</text></g><g><title>_reconstruct (copy.py:260) (3,529 samples, 3.52%)</title><rect x="90.5486%" y="260" width="3.5165%" height="15" fill="rgb(222,198,25)" fg:x="90871" fg:w="3529"/><text x="90.7986%" y="270.50">_re..</text></g><g><title>deepcopy (copy.py:163) (3,803 samples, 3.79%)</title><rect x="90.2965%" y="244" width="3.7895%" height="15" fill="rgb(211,99,13)" fg:x="90618" fg:w="3803"/><text x="90.5465%" y="254.50">deep..</text></g><g><title>deepcopy (copy.py:137) (6,756 samples, 6.73%)</title><rect x="87.5085%" y="212" width="6.7320%" height="15" fill="rgb(232,111,31)" fg:x="87820" fg:w="6756"/><text x="87.7585%" y="222.50">deepcopy ..</text></g><g><title>_deepcopy_dict (copy.py:222) (6,416 samples, 6.39%)</title><rect x="87.8473%" y="228" width="6.3932%" height="15" fill="rgb(245,82,37)" fg:x="88160" fg:w="6416"/><text x="88.0973%" y="238.50">_deepcop..</text></g><g><title>deepcopy (copy.py:137) (181 samples, 0.18%)</title><rect x="94.3013%" y="244" width="0.1804%" height="15" fill="rgb(227,149,46)" fg:x="94637" fg:w="181"/><text x="94.5513%" y="254.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (176 samples, 0.18%)</title><rect x="94.3063%" y="260" width="0.1754%" height="15" fill="rgb(218,36,50)" fg:x="94642" fg:w="176"/><text x="94.5563%" y="270.50"></text></g><g><title>_reconstruct (copy.py:260) (191 samples, 0.19%)</title><rect x="94.2973%" y="228" width="0.1903%" height="15" fill="rgb(226,80,48)" fg:x="94633" fg:w="191"/><text x="94.5473%" y="238.50"></text></g><g><title>deepcopy (copy.py:163) (232 samples, 0.23%)</title><rect x="94.2614%" y="212" width="0.2312%" height="15" fill="rgb(238,224,15)" fg:x="94597" fg:w="232"/><text x="94.5114%" y="222.50"></text></g><g><title>deepcopy (copy.py:137) (7,127 samples, 7.10%)</title><rect x="87.4128%" y="180" width="7.1017%" height="15" fill="rgb(241,136,10)" fg:x="87724" fg:w="7127"/><text x="87.6628%" y="190.50">deepcopy (..</text></g><g><title>_deepcopy_dict (copy.py:222) (7,096 samples, 7.07%)</title><rect x="87.4437%" y="196" width="7.0708%" height="15" fill="rgb(208,32,45)" fg:x="87755" fg:w="7096"/><text x="87.6937%" y="206.50">_deepcopy..</text></g><g><title>_reconstruct (copy.py:260) (7,133 samples, 7.11%)</title><rect x="87.4098%" y="164" width="7.1077%" height="15" fill="rgb(207,135,9)" fg:x="87721" fg:w="7133"/><text x="87.6598%" y="174.50">_reconstru..</text></g><g><title>deepcopy (copy.py:163) (7,212 samples, 7.19%)</title><rect x="87.3530%" y="148" width="7.1864%" height="15" fill="rgb(206,86,44)" fg:x="87664" fg:w="7212"/><text x="87.6030%" y="158.50">deepcopy (..</text></g><g><title>getKeyNoInternalArgs (Tensile/SolutionStructs/Naming.py:34) (7,317 samples, 7.29%)</title><rect x="87.2514%" y="132" width="7.2910%" height="15" fill="rgb(245,177,15)" fg:x="87562" fg:w="7317"/><text x="87.5014%" y="142.50">getKeyNoIn..</text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:812) (7,454 samples, 7.43%)</title><rect x="87.1458%" y="116" width="7.4276%" height="15" fill="rgb(206,64,50)" fg:x="87456" fg:w="7454"/><text x="87.3958%" y="126.50">run (Tensi..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:322) (170 samples, 0.17%)</title><rect x="95.0118%" y="196" width="0.1694%" height="15" fill="rgb(234,36,40)" fg:x="95350" fg:w="170"/><text x="95.2618%" y="206.50"></text></g><g><title>deepcopy (copy.py:137) (136 samples, 0.14%)</title><rect x="95.5289%" y="212" width="0.1355%" height="15" fill="rgb(213,64,8)" fg:x="95869" fg:w="136"/><text x="95.7789%" y="222.50"></text></g><g><title>_reconstruct (copy.py:254) (154 samples, 0.15%)</title><rect x="95.9096%" y="228" width="0.1535%" height="15" fill="rgb(210,75,36)" fg:x="96251" fg:w="154"/><text x="96.1596%" y="238.50"></text></g><g><title>deepcopy (copy.py:137) (658 samples, 0.66%)</title><rect x="96.2773%" y="276" width="0.6557%" height="15" fill="rgb(229,88,21)" fg:x="96620" fg:w="658"/><text x="96.5273%" y="286.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (555 samples, 0.55%)</title><rect x="96.3799%" y="292" width="0.5530%" height="15" fill="rgb(252,204,47)" fg:x="96723" fg:w="555"/><text x="96.6299%" y="302.50"></text></g><g><title>deepcopy (copy.py:137) (940 samples, 0.94%)</title><rect x="96.1098%" y="244" width="0.9367%" height="15" fill="rgb(208,77,27)" fg:x="96452" fg:w="940"/><text x="96.3598%" y="254.50"></text></g><g><title>_deepcopy_dict (copy.py:222) (893 samples, 0.89%)</title><rect x="96.1567%" y="260" width="0.8898%" height="15" fill="rgb(221,76,26)" fg:x="96499" fg:w="893"/><text x="96.4067%" y="270.50"></text></g><g><title>deepcopy (copy.py:168) (103 samples, 0.10%)</title><rect x="96.9439%" y="276" width="0.1026%" height="15" fill="rgb(225,139,18)" fg:x="97289" fg:w="103"/><text x="97.1939%" y="286.50"></text></g><g><title>_reconstruct (copy.py:260) (1,014 samples, 1.01%)</title><rect x="96.0770%" y="228" width="1.0104%" height="15" fill="rgb(230,137,11)" fg:x="96419" fg:w="1014"/><text x="96.3270%" y="238.50"></text></g><g><title>deepcopy (copy.py:163) (1,355 samples, 1.35%)</title><rect x="95.7980%" y="212" width="1.3502%" height="15" fill="rgb(212,28,1)" fg:x="96139" fg:w="1355"/><text x="96.0480%" y="222.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:636) (2,340 samples, 2.33%)</title><rect x="94.9560%" y="180" width="2.3317%" height="15" fill="rgb(248,164,17)" fg:x="95294" fg:w="2340"/><text x="95.2060%" y="190.50">_..</text></g><g><title>assignParameterWithDefault (Tensile/Common/Utilities.py:323) (2,114 samples, 2.11%)</title><rect x="95.1812%" y="196" width="2.1065%" height="15" fill="rgb(222,171,42)" fg:x="95520" fg:w="2114"/><text x="95.4312%" y="206.50">a..</text></g><g><title>deepcopy (copy.py:168) (112 samples, 0.11%)</title><rect x="97.1761%" y="212" width="0.1116%" height="15" fill="rgb(243,84,45)" fg:x="97522" fg:w="112"/><text x="97.4261%" y="222.50"></text></g><g><title>__init__ (Tensile/SolutionStructs/Problem.py:716) (145 samples, 0.14%)</title><rect x="97.5876%" y="180" width="0.1445%" height="15" fill="rgb(252,49,23)" fg:x="97935" fg:w="145"/><text x="97.8376%" y="190.50"></text></g><g><title>__str__ (Tensile/SolutionStructs/Problem.py:1038) (110 samples, 0.11%)</title><rect x="98.0360%" y="180" width="0.1096%" height="15" fill="rgb(215,19,7)" fg:x="98385" fg:w="110"/><text x="98.2860%" y="190.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:123) (3,415 samples, 3.40%)</title><rect x="94.8693%" y="164" width="3.4029%" height="15" fill="rgb(238,81,41)" fg:x="95207" fg:w="3415"/><text x="95.1193%" y="174.50">_ge..</text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:137) (248 samples, 0.25%)</title><rect x="98.3090%" y="164" width="0.2471%" height="15" fill="rgb(210,199,37)" fg:x="98659" fg:w="248"/><text x="98.5590%" y="174.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:138) (248 samples, 0.25%)</title><rect x="98.5561%" y="164" width="0.2471%" height="15" fill="rgb(244,192,49)" fg:x="98907" fg:w="248"/><text x="98.8061%" y="174.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:83) (191 samples, 0.19%)</title><rect x="99.4131%" y="180" width="0.1903%" height="15" fill="rgb(226,211,11)" fg:x="99767" fg:w="191"/><text x="99.6631%" y="190.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:84) (226 samples, 0.23%)</title><rect x="99.6034%" y="180" width="0.2252%" height="15" fill="rgb(236,162,54)" fg:x="99958" fg:w="226"/><text x="99.8534%" y="190.50"></text></g><g><title>_getName (Tensile/SolutionStructs/Naming.py:139) (1,150 samples, 1.15%)</title><rect x="98.8033%" y="164" width="1.1459%" height="15" fill="rgb(220,229,9)" fg:x="99155" fg:w="1150"/><text x="99.0533%" y="174.50"></text></g><g><title>getParameterValueAbbreviation (Tensile/SolutionStructs/Naming.py:88) (116 samples, 0.12%)</title><rect x="99.8336%" y="180" width="0.1156%" height="15" fill="rgb(250,87,22)" fg:x="100189" fg:w="116"/><text x="100.0836%" y="190.50"></text></g><g><title>run (Tensile/TensileCreateLibrary/Run.py:813) (5,428 samples, 5.41%)</title><rect x="94.5733%" y="116" width="5.4087%" height="15" fill="rgb(239,43,17)" fg:x="94910" fg:w="5428"/><text x="94.8233%" y="126.50">run (Te..</text></g><g><title>__str__ (Tensile/SolutionStructs/Solution.py:3281) (5,252 samples, 5.23%)</title><rect x="94.7487%" y="132" width="5.2334%" height="15" fill="rgb(231,177,25)" fg:x="95086" fg:w="5252"/><text x="94.9987%" y="142.50">__str_..</text></g><g><title>getSolutionNameFull (Tensile/SolutionStructs/Naming.py:178) (5,249 samples, 5.23%)</title><rect x="94.7517%" y="148" width="5.2304%" height="15" fill="rgb(219,179,1)" fg:x="95089" fg:w="5249"/><text x="95.0017%" y="158.50">getSol..</text></g><g><title>all (100,356 samples, 100%)</title><rect x="0.0000%" y="52" width="100.0000%" height="15" fill="rgb(238,219,53)" fg:x="0" fg:w="100356"/><text x="0.2500%" y="62.50"></text></g><g><title>_run_module_as_main (<frozen runpy>:199) (67,575 samples, 67.34%)</title><rect x="32.6647%" y="68" width="67.3353%" height="15" fill="rgb(232,167,36)" fg:x="32781" fg:w="67575"/><text x="32.9147%" y="78.50">_run_module_as_main (<frozen runpy>:199)</text></g><g><title>_run_code (<frozen runpy>:88) (67,575 samples, 67.34%)</title><rect x="32.6647%" y="84" width="67.3353%" height="15" fill="rgb(244,19,51)" fg:x="32781" fg:w="67575"/><text x="32.9147%" y="94.50">_run_code (<frozen runpy>:88)</text></g><g><title><module> (Tensile/TensileCreateLibrary/__main__.py:4) (67,575 samples, 67.34%)</title><rect x="32.6647%" y="100" width="67.3353%" height="15" fill="rgb(224,6,22)" fg:x="32781" fg:w="67575"/><text x="32.9147%" y="110.50"><module> (Tensile/TensileCreateLibrary/__main__.py:4)</text></g></svg></svg> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment