{"id":2283,"date":"2011-10-17T09:00:00","date_gmt":"2011-10-17T09:00:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/msr_er\/2011\/10\/17\/creating-better-software-for-next-generation-computer-architectures\/"},"modified":"2016-07-20T07:33:30","modified_gmt":"2016-07-20T14:33:30","slug":"creating-better-software-for-next-generation-computer-architectures","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/creating-better-software-for-next-generation-computer-architectures\/","title":{"rendered":"Creating Better Software for Next-Generation Computer Architectures"},"content":{"rendered":"<p><span style=\"font-family: verdana,geneva; font-size: medium;\">Computers are everywhere, controlling everything from phones and traffic lights to airplanes and buildings. And inside each computer is software: line after line of complex code that tells the program, and any attached hardware, what to do.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\">It&rsquo;s amazing how the world has come to rely on software.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\">Testing is a vital step in software development, but it&rsquo;s hard to test every possible path through millions of lines of code. For example, in 2003 the northeastern United States and Canada experienced a blackout that affected more than 50 million people due to an obscure problem in the energy management system software. It was admitted afterwards that even extensive testing would not have found this problem. So we need more formal methods to determine such program behavior in advance. This software verification&mdash;the science of deducing whether a program will execute correctly&mdash;is crucial for reliability in complex programs.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\">Much of the existing work in software verification does not consider the processor design itself, which is a problem because new multi-core processors and more complex computer architectures are being designed for next-generation computing platforms&mdash;from mobile phones and tablet devices to cloud computing data centers. A new collaboration between <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/www.ku.edu.tr\/en\" target=\"_blank\">Ko&ccedil; University<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> in Turkey, Microsoft Research, and the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/www.bscmsrc.eu\/\" target=\"_blank\">Barcelona Supercomputer Centre<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> is taking a unique multidisciplinary approach, bringing together world-leading researchers in computer architecture, formal methods, and systems to produce a coherent, end-to-end, robust methodology for computer architecture design.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\"><img decoding=\"async\" style=\"border: 0px currentColor; margin-right: auto; margin-left: auto; display: block;\" title=\"Dr. Serdar Tasiran from Ko&ccedil; University leads the discussion with his research team: Hassan Salehe Matar, Cansu Erdogan, Umit Can Bekar, Omer Subasi, Zeynep Su Kurultay, and Emre Gul.\" alt=\"Dr. Serdar Tasiran from Ko&ccedil; University leads the discussion with his research team: Hassan Salehe Matar, Cansu Erdogan, Umit Can Bekar, Omer Subasi, Zeynep Su Kurultay, and Emre Gul.\" src=\"https:\/\/msdnshared.blob.core.windows.net\/media\/MSDNBlogsFS\/prod.evol.blogs.msdn.com\/CommunityServer.Blogs.Components.WeblogFiles\/00\/00\/01\/32\/81\/4604.KocU_kickoff.jpg\" original-url=\"http:\/\/blogs.msdn.com\/resized-image.ashx\/__size\/496x280\/__key\/communityserver-blogs-components-weblogfiles\/00-00-01-32-81\/4604.KocU_5F00_kickoff.jpg\" \/><\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"color: #888888; font-family: verdana,geneva; font-size: small;\">Dr. Serdar Tasiran from Ko&ccedil; University leads the discussion with his research team: <br \/>Hassan Salehe Matar, Cansu Erdogan, Umit Can Bekar, Omer Subasi, Zeynep Su Kurultay, and Emre Gul.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\">Research leader at Ko&ccedil; University, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/network.ku.edu.tr\/~stasiran\/\" target=\"_blank\">Serdar Ta\u015f\u0131ran<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, is excited about this new project, &ldquo;After working together for many years, it is tremendous that we are beginning this formal collaboration between Microsoft Research and Barcelona Supercomputer Centre to look at the whole problem of software verification from the processor-up.&rdquo; This follows a strong history of working closely with Microsoft Research in Redmond, Cambridge, and India.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\">The team aims to create a holistic, robust approach to the development of novel computer architectures. This is required to simultaneously push the state-of-the-art while permitting application-driven scenarios to be taken into account at an early stage in the hardware design.<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/research.microsoft.com\/en-us\/um\/people\/tharris\/default.aspx\" target=\"_blank\">Tim Harris<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, a senior researcher at Microsoft Research Cambridge, explains &ldquo;Modern programming languages such as F# rely on multiple layers of software for activities such as garbage collection and managing parallel work items. This collaboration will help us develop new hardware techniques to accelerate these activities, while ensuring that the correctness of programs is not compromised.&#8221;<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/www.bscmsrc.eu\/people\/mateo-valero\" target=\"_blank\">Mateo Valero<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, director of Barcelona Supercomputing Center, adds, &ldquo;This collaboration simultaneously targets the three requirements that modern multi-core computing faces today: processors should be fast and efficient, they should be easy to program, and they should compute in a verifiable and correct way.&#8221;<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/research.microsoft.com\/en-us\/people\/fabrig\/default.aspx\" target=\"_blank\">Fabrizio Gagliardi<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, director of Microsoft Research Connections Europe, the Middle East, and Africa (EMEA), is delighted. &ldquo;This is a strong partnership that brings together world experts in software verification and computer architecture to solve this hugely challenging problem,&rdquo; he says. &ldquo;We look forward to this project paving the way to more reliable software on tomorrow&rsquo;s hardware.&rdquo;<\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\">&mdash;<em><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/research.microsoft.com\/en-us\/people\/kenjitak\/\" target=\"_blank\">Kenji Takeda<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, Solutions Architect and Technical Manager, Microsoft Research Connections EMEA<\/em><\/span><\/p>\n<p><span style=\"font-family: verdana,geneva; font-size: medium;\"><strong>Learn More<\/strong><\/span><\/p>\n<ul>\n<li><span style=\"font-family: verdana,geneva; font-size: small;\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/www.ku.edu.tr\/en\" target=\"_blank\">Ko&ccedil; University<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> <\/span><\/li>\n<li><span style=\"font-family: verdana,geneva; font-size: small;\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/research.microsoft.com\/en-us\/groups\/ppt\/default.aspx\" target=\"_blank\">Programming Principles and Tools Group, Microsoft Research Cambridge<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> <\/span><\/li>\n<li><span style=\"font-family: verdana,geneva; font-size: small;\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/www.bscmsrc.eu\/\" target=\"_blank\">Barcelona Supercomputer Centre &ndash; Microsoft Research Centre<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> <\/span><\/li>\n<li><span style=\"font-family: verdana,geneva; font-size: small;\"><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/research.microsoft.com\/en-us\/collaboration\/global\/europe\/default.aspx\" target=\"_blank\">Microsoft Research Connections in EMEA<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> <\/span><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Computers are everywhere, controlling everything from phones and traffic lights to airplanes and buildings. And inside each computer is software: line after line of complex code that tells the program, and any attached hardware, what to do. It&rsquo;s amazing how the world has come to rely on software. Testing is a vital step in software [&hellip;]<\/p>\n","protected":false},"author":32627,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","msr-author-ordering":[],"msr_hide_image_in_river":0,"footnotes":""},"categories":[1],"tags":[194769,195046,195120,193543,195547,196117,196154,196314,193504,196435,196441,196531,197165,193621,197261,197366,197455],"research-area":[],"msr-region":[],"msr-event-type":[],"msr-locale":[268875],"msr-post-option":[],"msr-impact-theme":[],"msr-promo-type":[],"msr-podcast-series":[],"class_list":["post-2283","post","type-post","status-publish","format-standard","hentry","category-research-blog","tag-barcelona-supercomputer-centre","tag-cloud-computing-data-centers","tag-computer-architecture-design","tag-f","tag-fabrizio-gagliardi","tag-kenji-takeda","tag-ko-university","tag-mateo-valero","tag-microsoft-research","tag-microsoft-research-cambridge","tag-microsoft-research-connections-emea","tag-mobile-phones","tag-serdar-tasiran","tag-software-development","tag-software-verification","tag-tablet-devices","tag-tim-harris","msr-locale-en_us"],"msr_event_details":{"start":"","end":"","location":""},"podcast_url":"","podcast_episode":"","msr_research_lab":[],"msr_impact_theme":[],"related-publications":[],"related-downloads":[],"related-videos":[],"related-academic-programs":[],"related-groups":[],"related-projects":[],"related-events":[],"related-researchers":[],"msr_type":"Post","byline":"","formattedDate":"October 17, 2011","formattedExcerpt":"Computers are everywhere, controlling everything from phones and traffic lights to airplanes and buildings. And inside each computer is software: line after line of complex code that tells the program, and any attached hardware, what to do. It&rsquo;s amazing how the world has come to&hellip;","locale":{"slug":"en_us","name":"English","native":"","english":"English"},"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/2283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/users\/32627"}],"replies":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/comments?post=2283"}],"version-history":[{"count":1,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/2283\/revisions"}],"predecessor-version":[{"id":262236,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/2283\/revisions\/262236"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=2283"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/categories?post=2283"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/tags?post=2283"},{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=2283"},{"taxonomy":"msr-region","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-region?post=2283"},{"taxonomy":"msr-event-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-event-type?post=2283"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=2283"},{"taxonomy":"msr-post-option","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-post-option?post=2283"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=2283"},{"taxonomy":"msr-promo-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-promo-type?post=2283"},{"taxonomy":"msr-podcast-series","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-podcast-series?post=2283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}