{"id":2306,"date":"2017-05-02T09:23:03","date_gmt":"2017-05-02T09:23:03","guid":{"rendered":"http:\/\/support.plunify.com\/en\/?p=2306"},"modified":"2017-05-02T09:23:03","modified_gmt":"2017-05-02T09:23:03","slug":"do-more-with-less-with-the-new-hot-start-recipe","status":"publish","type":"post","link":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/","title":{"rendered":"Do more with less with the new Hot Start Recipe"},"content":{"rendered":"<p><b style=\"font-size: x-large\">Introduction<\/b><\/p>\n<p><span style=\"font-weight: 400\">One of our most common customer requests is for a smaller\u00a0number of compilation runs to get to timing closure. For example, can InTime meet timing in 50 runs instead of 100 on average? Well, that depends; InTime generally has an idea of what settings will help your design meet timing, and in rare cases it is possible to meet timing even within the first 10 runs.<\/span><span style=\"font-weight: 400\"><br \/>\n<\/span><span style=\"font-weight: 400\"><br \/>\n<\/span><span style=\"font-weight: 400\">Each design is unique and thus the set of settings that work well on one design will probably not work as well on another unless the two designs are similar. Typically, InTime has to learn and customize a new set of settings for each new design. In order to learn, InTime requires data in the form of multiple compilation runs, so that it can make informed decisions and fine-tune the synthesis and place-and-route settings for your designs.<\/span><\/p>\n<p><span style=\"font-weight: 400\">With increasing design complexity and FPGA compiler runtimes, it is therefore critical that InTime achieves the required timing or area performance in as fewer a number of runs as possible. <\/span><\/p>\n<p><span style=\"font-weight: 400\">We are pleased to announce the release of a new recipe named \u201cHot Start\u201d. Here at Plunify Labs, we constantly compile a variety of designs using different FPGA tools and have come up with a database of tried and tested settings that guarantees timing improvements for practically any design. Hot Start is the name of our algorithm that generates these settings. In addition, this recipe learns from past compilations and selects settings suitable for each unique design. With this recipe, reducing the number of iterations while meeting timing is no longer a dream but a reality.<\/span><\/p>\n<p><b style=\"font-size: x-large\">Comparison<\/b><\/p>\n<p><span style=\"font-weight: 400\">In this blog post, we compare the InTime Default recipe\u2019s results against those of Hot Start. <\/span><\/p>\n<p><span style=\"font-weight: 400\">We perform an experiment to see if Hotstart indeed uses less runs to achieve a better TNS (Total Negative Slack) score as compared to InTime Default. Three projects, each with varying device type and area, were compiled using InTime Default (10 rounds of 10 runs) and Hotstart (two rounds of 50). Details of the three projects can be found in the table below<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><span style=\"font-weight: 400\">Project Name<\/span><\/td>\n<td><span style=\"font-weight: 400\">Toolchain<\/span><\/td>\n<td><span style=\"font-weight: 400\">Device Name<\/span><\/td>\n<td><span style=\"font-weight: 400\">Area<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">Bitcoin miner<\/span><\/td>\n<td><span style=\"font-weight: 400\">Quartus 14.0.0<\/span><\/td>\n<td><span style=\"font-weight: 400\">Cyclone IV<\/span><\/td>\n<td><span style=\"font-weight: 400\">99<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">SOC<\/span><\/td>\n<td><span style=\"font-weight: 400\">Quartus 16.0.0<\/span><\/td>\n<td><span style=\"font-weight: 400\">Cyclone V<\/span><\/td>\n<td><span style=\"font-weight: 400\">11<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">PCIe<\/span><\/td>\n<td><span style=\"font-weight: 400\">Quartus 14.0.0<\/span><\/td>\n<td><span style=\"font-weight: 400\">Arria V<\/span><\/td>\n<td><span style=\"font-weight: 400\">7<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400\"><br \/>\nWe plot the best TNS against the number of runs. The blue lines in the ensuing graphs represent the Hot Start recipe results while the red line shows the InTime Default recipe results.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Here is the plot for the Cyclone IV bitcoin miner design:<\/span><\/p>\n<p><span style=\"font-weight: 400\"><img class=\"size-medium wp-image-2318 aligncenter\" src=\"http:\/\/support.plunify.com\/en\/wp-content\/uploads\/sites\/5\/2017\/05\/hotstart_default_comparison_bemicro-1.png\" alt=\"hotstart_default_comparison_bemicro\" width=\"100%\" \/><\/span><\/p>\n<p><span style=\"font-weight: 400\">Notice that the best result for Hot Start is always better than the best result for InTime Default.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400\">For Hot Start, the best TNS was found in less than 50 iterations. InTime Default took more than 50 runs to achieve the best TNS and even then the TNS was not as good as the TNS found by Hot Start.<\/span><br \/>\n<span style=\"font-weight: 400\">Here is a similar plot showing the results for the Cyclone V SOC design.<\/span><\/p>\n<p><span style=\"font-weight: 400\"><img class=\"size-medium wp-image-2317 aligncenter\" src=\"http:\/\/support.plunify.com\/en\/wp-content\/uploads\/sites\/5\/2017\/05\/hotstart_default_comparison_borax-1.png\" alt=\"hotstart_default_comparison_borax\" width=\"100%\" \/><\/span><\/p>\n<p><span style=\"font-weight: 400\">From the above plot, we can see that Hot Start performed better than InTime Default. Hot Start also achieved a better TNS using fewer runs than InTime Default. There was a short window period from 30 runs to 40 runs where InTime Default outperformed Hot Start. This is because the learning algorithm for Hot Start typically kicks in at around 40-50 runs and that was when the Hot Start started to consistently produce better results than InTime Default.<\/span><br \/>\n<span style=\"font-weight: 400\">Last but not least, the plot showing the results for an Arria V PCIe design is shown below.<\/span><\/p>\n<p><span style=\"font-weight: 400\"><img class=\" wp-image-2313 aligncenter\" src=\"http:\/\/support.plunify.com\/en\/wp-content\/uploads\/sites\/5\/2017\/05\/hotstart_default_comparison_av_x4-2.png\" alt=\"hotstart_default_comparison_av_x4\" width=\"100%\" \/><\/span><\/p>\n<p><span style=\"font-weight: 400\">Here we notice that the best TNS for InTime Default is much better than that for Hot Start for the majority of runs. However, after 80 runs, Hot Start managed to achieve a better TNS then InTime Default. Notice how InTime Default plateau-ed and no improvements in TNS values were found from the 40th run onwards. This was not the case for Hotstart. The Hot Start algorithm did not perform very well in the first 40-50 runs but the algorithm continued to learn from previous runs and finally managed to pull ahead of the InTime Default.<\/span><\/p>\n<p><b style=\"font-size: x-large\">How to use Hot Start<\/b><\/p>\n<p><i><span style=\"font-weight: 400\">Note - this recipe is currently only available for Quartus projects.<\/span><\/i><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Plunify recommends running the Hot Start Recipe before all other recipes.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">A single round of Hot Start contains 50 runs. You should run no more than 100 runs or 2 rounds of Hot Start.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">If you did not get satisfactory results from Hot Start, try the inTime Default Recipe. Otherwise run the Deep Dive Recipe or Auto Placement Recipe.<\/span><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><b style=\"font-size: x-large\">Conclusion<\/b><\/p>\n<p><span style=\"font-weight: 400\">With Hot Start, it is now easier and faster than ever to achieve timing using InTime. Let us know your thoughts on the new recipe in the comments below! Feel free to contact us at <\/span><a href=\"mailto:tellus@plunify.com\"><span style=\"font-weight: 400\">tellus@plunify.com<\/span><\/a><span style=\"font-weight: 400\"> if you have any questions or suggestions.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction One of our most common customer requests is for a smaller\u00a0number of compilation runs to get to timing closure. For example, can InTime meet timing in 50 runs instead of 100 on average? Well, that depends; InTime generally has an idea of what settings will help your design meet timing, and in rare cases [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":2323,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_links_to":"","_links_to_target":""},"categories":[98],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v17.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Do more with less with the new Hot Start Recipe - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Do more with less with the new Hot Start Recipe - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af\" \/>\n<meta property=\"og:description\" content=\"Introduction One of our most common customer requests is for a smaller\u00a0number of compilation runs to get to timing closure. For example, can InTime meet timing in 50 runs instead of 100 on average? Well, that depends; InTime generally has an idea of what settings will help your design meet timing, and in rare cases [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/\" \/>\n<meta property=\"og:site_name\" content=\"Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af\" \/>\n<meta property=\"article:published_time\" content=\"2017-05-02T09:23:03+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"plunify\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/support.plunify.com\/jp\/#website\",\"url\":\"https:\/\/support.plunify.com\/jp\/\",\"name\":\"Plunify \\u65e5\\u672c\\u8a9e\\u30d8\\u30eb\\u30d7\\u30c7\\u30b9\\u30af\",\"description\":\"Plunify \\u65e5\\u672c\\u8a9e\\u30b5\\u30dd\\u30fc\\u30c8\\u30b5\\u30a4\\u30c8\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/support.plunify.com\/jp\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"\",\"contentUrl\":\"\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#webpage\",\"url\":\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/\",\"name\":\"Do more with less with the new Hot Start Recipe - Plunify \\u65e5\\u672c\\u8a9e\\u30d8\\u30eb\\u30d7\\u30c7\\u30b9\\u30af\",\"isPartOf\":{\"@id\":\"https:\/\/support.plunify.com\/jp\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#primaryimage\"},\"datePublished\":\"2017-05-02T09:23:03+00:00\",\"dateModified\":\"2017-05-02T09:23:03+00:00\",\"author\":{\"@id\":\"https:\/\/support.plunify.com\/jp\/#\/schema\/person\/0702317d75b841ce991ca9936b72f8b0\"},\"breadcrumb\":{\"@id\":\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/support.plunify.com\/jp\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Do more with less with the new Hot Start Recipe\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/support.plunify.com\/jp\/#\/schema\/person\/0702317d75b841ce991ca9936b72f8b0\",\"name\":\"plunify\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/support.plunify.com\/jp\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/79e7edc12624b682db2df4112ff7210b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/79e7edc12624b682db2df4112ff7210b?s=96&d=mm&r=g\",\"caption\":\"plunify\"},\"url\":\"https:\/\/support.plunify.com\/jp\/author\/plunify\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Do more with less with the new Hot Start Recipe - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/","og_locale":"en_US","og_type":"article","og_title":"Do more with less with the new Hot Start Recipe - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","og_description":"Introduction One of our most common customer requests is for a smaller\u00a0number of compilation runs to get to timing closure. For example, can InTime meet timing in 50 runs instead of 100 on average? Well, that depends; InTime generally has an idea of what settings will help your design meet timing, and in rare cases [&hellip;]","og_url":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/","og_site_name":"Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","article_published_time":"2017-05-02T09:23:03+00:00","twitter_card":"summary_large_image","twitter_misc":{"Written by":"plunify","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/support.plunify.com\/jp\/#website","url":"https:\/\/support.plunify.com\/jp\/","name":"Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","description":"Plunify \u65e5\u672c\u8a9e\u30b5\u30dd\u30fc\u30c8\u30b5\u30a4\u30c8","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/support.plunify.com\/jp\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#primaryimage","inLanguage":"en-US","url":"","contentUrl":""},{"@type":"WebPage","@id":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#webpage","url":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/","name":"Do more with less with the new Hot Start Recipe - Plunify \u65e5\u672c\u8a9e\u30d8\u30eb\u30d7\u30c7\u30b9\u30af","isPartOf":{"@id":"https:\/\/support.plunify.com\/jp\/#website"},"primaryImageOfPage":{"@id":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#primaryimage"},"datePublished":"2017-05-02T09:23:03+00:00","dateModified":"2017-05-02T09:23:03+00:00","author":{"@id":"https:\/\/support.plunify.com\/jp\/#\/schema\/person\/0702317d75b841ce991ca9936b72f8b0"},"breadcrumb":{"@id":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/support.plunify.com\/jp\/2017\/05\/02\/do-more-with-less-with-the-new-hot-start-recipe\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/support.plunify.com\/jp\/"},{"@type":"ListItem","position":2,"name":"Do more with less with the new Hot Start Recipe"}]},{"@type":"Person","@id":"https:\/\/support.plunify.com\/jp\/#\/schema\/person\/0702317d75b841ce991ca9936b72f8b0","name":"plunify","image":{"@type":"ImageObject","@id":"https:\/\/support.plunify.com\/jp\/#personlogo","inLanguage":"en-US","url":"https:\/\/secure.gravatar.com\/avatar\/79e7edc12624b682db2df4112ff7210b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/79e7edc12624b682db2df4112ff7210b?s=96&d=mm&r=g","caption":"plunify"},"url":"https:\/\/support.plunify.com\/jp\/author\/plunify\/"}]}},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/posts\/2306"}],"collection":[{"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/comments?post=2306"}],"version-history":[{"count":0,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/posts\/2306\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/media\/2323"}],"wp:attachment":[{"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/media?parent=2306"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/categories?post=2306"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/support.plunify.com\/jp\/wp-json\/wp\/v2\/tags?post=2306"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}