{"id":24323,"date":"2019-05-13T16:51:23","date_gmt":"2019-05-13T16:51:23","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/cppblog\/?p=24323"},"modified":"2019-05-27T10:16:48","modified_gmt":"2019-05-27T10:16:48","slug":"visualize-your-build-with-incredibuilds-build-monitor-and-visual-studio-2019","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/cppblog\/visualize-your-build-with-incredibuilds-build-monitor-and-visual-studio-2019\/","title":{"rendered":"Visualize your build with IncrediBuild\u2019s Build Monitor and Visual Studio 2019"},"content":{"rendered":"<p>There\u2019s seeing your build, and then there\u2019s REALLY seeing your build. The difference can be quite dramatic, unveiling a new world of possibilities. As part of a <a href=\"https:\/\/www.incredibuild.com\/accelerate-visual-studio-cc-builds.html\/?utm_source=Visual_Studio_Blog&amp;utm_medium=external&amp;utm_campaign=Visual_Sudio_Acceleration%20_Worlds\">partnership between IncrediBuild and Visual Studio<\/a>, you can enjoy these possibilities directly within Visual Studio.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/improving-your-build-times-with-incredibuild-and-visual-studio-2015\/\">We previously discussed IncrediBuild<\/a>, a software acceleration technology that speeds up your builds, tests, and other development process times. While IncrediBuild\u2019s solution is known mainly for its impressive development acceleration capabilities, there\u2019s another, very interesting capability to take note of: <a href=\"https:\/\/www.incredibuild.com\/the-build-monitor\/?utm_source=Visual_Studio_Blog&amp;utm_medium=external&amp;utm_campaign=Build_Monitor_page\">IncrediBuild\u2019s Build Monitor<\/a> tool. This elegant build visualization tool replaces your old text output with a sleek, intuitive graphic UI, transforming your build into a visual entity you can easily engage with, and helps you spot long durations, errors, warnings, bottlenecks, and dependencies.<\/p>\n<p>Let\u2019s take a look at the standard text output we\u2019re all used to working with:<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-24382\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Output.jpg\" alt=\"\" width=\"1364\" height=\"476\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Output.jpg 1364w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Output-300x105.jpg 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Output-768x268.jpg 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Output-1024x357.jpg 1024w\" sizes=\"(max-width: 1364px) 100vw, 1364px\" \/><\/p>\n<p>Now take a look at how a build looks like with IncrediBuild\u2019s Build Monitor tool, seamlessly integrated into the Visual Studio experience (see additional information about invoking IncrediBuild\u2019s Build Monitor from within Visual Studio at the bottom of the post):<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-24375\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Main.jpg\" alt=\"\" width=\"1920\" height=\"1012\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Main.jpg 1920w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Main-300x158.jpg 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Main-768x405.jpg 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Main-1024x540.jpg 1024w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>Each color represents the build task status, allowing you to immediately identify which build tasks were executed without a problem and which require your attention. The bar width represents the duration of a specific task, and the side navigation bar lays out the specific machine and core on which the task was executed.<\/p>\n<p>However, that\u2019s not all there is to it. This tool also includes:<\/p>\n<ul>\n<li><strong>Customization capabilities<\/strong> &#8211; the build top graph is customizable, enabling you to keep track of relevant performance indicators such as CPU usage, tasks ready to be executed, memory usage, I\/O, and much more.<\/li>\n<li><strong>Replay<\/strong> &#8211; You can replay your build process to examine how it performed and share it with team<\/li>\n<li><img decoding=\"async\" class=\"alignnone size-full wp-image-24378\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Replay.jpg\" alt=\"\" width=\"1920\" height=\"1018\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Replay.jpg 1920w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Replay-300x159.jpg 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Replay-768x407.jpg 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Replay-1024x543.jpg 1024w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/li>\n<li><strong>Gaps detection<\/strong> &#8211; You can improve your build quality by quickly detecting tasks with long durations, errors, warnings, bottlenecks, unneeded dependencies, gaps, and more.<\/li>\n<li><img decoding=\"async\" class=\"alignnone size-full wp-image-24380\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Gaps.jpg\" alt=\"\" width=\"1920\" height=\"1018\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Gaps.jpg 1920w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Gaps-300x159.jpg 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Gaps-768x407.jpg 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Gaps-1024x543.jpg 1024w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/li>\n<li><strong>Display types<\/strong> &#8211; You can switch between display types:\n<ul>\n<li><strong>Progress display<\/strong> &#8211; This is the colorful display discussed above<\/li>\n<li><img decoding=\"async\" class=\"alignnone size-full wp-image-24383\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Progress-Display.jpg\" alt=\"\" width=\"1919\" height=\"1015\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Progress-Display.jpg 1919w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Progress-Display-300x159.jpg 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Progress-Display-768x406.jpg 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Progress-Display-1024x542.jpg 1024w\" sizes=\"(max-width: 1919px) 100vw, 1919px\" \/><\/li>\n<\/ul>\n<\/li>\n<li><strong>Output display<\/strong> &#8211; Allows you to see the entire build&#8217;s output text, similar to what would have been generated by Visual Studio. Double-clicking a task from the progress display will jump directly to the task\u2019s textual output.<\/li>\n<li><img decoding=\"async\" class=\"alignnone size-full wp-image-24376\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Output.jpg\" alt=\"\" width=\"1920\" height=\"1019\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Output.jpg 1920w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Output-300x159.jpg 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Output-768x408.jpg 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Output-1024x543.jpg 1024w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/>\n<ul>\n<li><strong>Projects display<\/strong> &#8211; Allows you to distinguish between each project\u2019s\/configuration\u2019s standard output, along with a status bar representing the project\u2019s build status.<\/li>\n<li><img decoding=\"async\" class=\"alignnone size-full wp-image-24377\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Projects.jpg\" alt=\"\" width=\"1920\" height=\"1018\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Projects.jpg 1920w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Projects-300x159.jpg 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Projects-768x407.jpg 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Projects-1024x543.jpg 1024w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/li>\n<\/ul>\n<\/li>\n<li><strong>Summary display<\/strong> -Presents an overview of all the build information, including the total build time.<\/li>\n<li><img decoding=\"async\" class=\"alignnone size-full wp-image-24379\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Summary.jpg\" alt=\"\" width=\"1920\" height=\"1019\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Summary.jpg 1920w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Summary-300x159.jpg 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Summary-768x408.jpg 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/Build-Monitor-Summary-1024x543.jpg 1024w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/li>\n<\/ul>\n<p>If you want to see a more vivid demonstration of this tool, <a href=\"https:\/\/www.incredibuild.com\/the-build-monitor?utm_source=Visual_Studio_Blog&amp;utm_medium=external&amp;utm_campaign=Build_Monitor_video#monitorVideo\">here\u2019s a demo video of IncrediBuild\u2019s Build Monitor tool<\/a>.<\/p>\n<h3>Visualizing and speeding up your build<\/h3>\n<p>IncrediBuild\u2019s Build Monitor tool comes hand in hand with IncrediBuild\u2019s main benefit: its ability to highly accelerate C++ builds by enabling you to use the idle CPU cycles of other machines in your network, effectively transforming each local machine or build server into a virtual super computer with dozens of cores. We\u2019ve discussed IncrediBuild\u2019s effect on build times while building on even a single development machine<a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/improving-your-build-times-with-incredibuild-and-visual-studio-2015\/\"> in a previous blog post<\/a>. However, to realize IncrediBuild\u2019s full potential, and take advantage of its entire acceleration capabilities, it is recommended to deploy it on more machines and cores. Simply connect your colleagues\u2019 IncrediBuild Agents with yours and each of you will be able to seamlessly use the aggregated idle CPU power of all the machines connected together.<\/p>\n<p>Visual Studio 2019 allows you to leverage these capabilities free of charge (for your local machine) and get a real speed boost on your software development.<\/p>\n<h3>How to install IncrediBuild from the Visual Studio Installer<\/h3>\n<p>Once you have\u202fdownloaded the Visual Studio 2019 installer,\u202fIncrediBuild\u202fis presented as an optional component for C++ workloads.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-24332\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/9component.png\" alt=\"\" width=\"553\" height=\"660\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/9component.png 553w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/9component-251x300.png 251w\" sizes=\"(max-width: 553px) 100vw, 553px\" \/>\nAfter checking the IncrediBuild checkbox your Visual Studio installation will come with an Incredibuild submenu under the \u201cExtensions\u201d menu.<\/p>\n<p>For further information regarding installing IncrediBuild from within Visual Studio please <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=vs-publisher-1193210.IncrediBuild\">visit IncrediBuild on Visual Studio Marketplace<\/a><u>.<\/u><\/p>\n<h3>How to <strong>invoke<\/strong> the Build Monitor display (as well as IncrediBuild acceleration capabilities) from within Visual Studio 2019<\/h3>\n<p>After installing IncrediBuild within Visual Studio, you\u2019ll have the Build Monitor display available to you upon initiating a build using IncrediBuild.<\/p>\n<p>To initiate a build using IncrediBuild, just navigate to the \u2018Extensions\u2019 menu and choose one of the build options (Build Solution \/Rebuild Solution\/ Clean Solution). If you already initiated a build via IncrediBuild, and want to view the current build on the Build Monitor, simply navigate to the \u2018View\u2019 menu and choose \u2018IncrediBuild Monitor\u2019.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-24333\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/final.png\" alt=\"\" width=\"624\" height=\"251\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/final.png 624w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2019\/05\/final-300x121.png 300w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><\/p>\n<h3><strong>Talk To Us<\/strong><\/h3>\n<p>We encourage you to <a href=\"https:\/\/visualstudio.microsoft.com\/downloads\/\">download Visual Studio 2019<\/a>\u202fand try the <a href=\"https:\/\/www.incredibuild.com\/?utm_source=Visual_Studio_Blog&amp;utm_medium=external&amp;utm_campaign=Homepage\">IncrediBuild<\/a> functionality. We can be reached via the comments below or via email (visualcpp@microsoft.com). If you encounter other problems with Visual Studio or have other suggestions you can use the <a href=\"https:\/\/docs.microsoft.com\/en-us\/visualstudio\/ide\/how-to-report-a-problem-with-visual-studio?view=vs-2019\"><u>Report a Problem<\/u><\/a>\u202ftool in Visual Studio or head over to the\u202f<a href=\"https:\/\/developercommunity.visualstudio.com\/spaces\/62\/index.html\"><u>Visual Studio Developer Community<\/u><\/a>. You can also find us on Twitter (<a href=\"https:\/\/twitter.com\/visualc\"><u>@VisualC<\/u><\/a>).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There\u2019s seeing your build, and then there\u2019s REALLY seeing your build. The difference can be quite dramatic, unveiling a new world of possibilities. As part of a partnership between IncrediBuild and Visual Studio, you can enjoy these possibilities directly within Visual Studio. We previously discussed IncrediBuild, a software acceleration technology that speeds up your builds, [&hellip;]<\/p>\n","protected":false},"author":329,"featured_media":24325,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[270],"tags":[],"class_list":["post-24323","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-announcement"],"acf":[],"blog_post_summary":"<p>There\u2019s seeing your build, and then there\u2019s REALLY seeing your build. The difference can be quite dramatic, unveiling a new world of possibilities. As part of a partnership between IncrediBuild and Visual Studio, you can enjoy these possibilities directly within Visual Studio. We previously discussed IncrediBuild, a software acceleration technology that speeds up your builds, [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/24323","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/users\/329"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/comments?post=24323"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/24323\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media\/24325"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media?parent=24323"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/categories?post=24323"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/tags?post=24323"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}