{"id":3823,"date":"2012-10-15T09:41:55","date_gmt":"2012-10-15T08:41:55","guid":{"rendered":"https:\/\/blogs.mentor.com\/colinwalls\/?p=3823"},"modified":"2026-03-26T16:38:53","modified_gmt":"2026-03-26T20:38:53","slug":"vsipl-standard-goes-global","status":"publish","type":"post","link":"https:\/\/blogs.sw.siemens.com\/embedded-software\/2012\/10\/15\/vsipl-standard-goes-global\/","title":{"rendered":"VSIPL++ Standard goes Global"},"content":{"rendered":"<p>Having recently made <a href=\"https:\/\/blogs.mentor.com\/colinwalls\/blog\/2012\/10\/09\/hpec-%E2%80%9812\/\" target=\"_blank\" rel=\"noopener noreferrer\">another posting<\/a> on High Performance Computing, I was quite surprised to receive a guest post from my colleague <a href=\"mailto:Pete_decher@mentor.com\" target=\"_blank\" rel=\"noopener noreferrer\">Pete Decher<\/a>, who is HPC Business Development Manager at Mentor Embedded. Apart from providing tools and IP for embedded software development, the Mentor Embedded team have a lot of history and experience of contributions to the open source community and the definition of standards. It is the latter efforts that concern us today.<\/p>\n<p>I will hand over to Pete &#8230;<!--more--><\/p>\n<p>The <a href=\"http:\/\/www.omg.org\" target=\"_blank\" rel=\"noopener noreferrer\">Object Management Group<\/a> (OMG) just announced the adoption of <a href=\"http:\/\/www.omg.org\/news\/releases\/pr2012\/10-11-12.htm\" target=\"_blank\" rel=\"noopener noreferrer\">the VSIPL and VSIPL++ standards<\/a>. Both the OMG and the VSIPL++ standard have been around separately for quite a while. The adoption of the VSIPL++ standard by the OMG is expected to help spread the benefits of VSIPL++ to much broader audience. OMG is an international standards body, founded in 1989, which maintains key industry standards such as UML and CORBA. They also help promote the creation and adoption of new standards across a wide range of technologies. The VSIPL++ (Vector Signal Image Processing Library for C++) standard defines a high-level C++ function and data model API for developers of high performance computing software such as image and signal processing applications.<\/p>\n<p>The VSIPL++ API is designed to serve as a high-level abstraction layer and programming model that insulates developers from the low-level details of programming hardware processors and accelerators, such as GPUs. The VSIPL and VSIPL++ standards were incubated and refined by the High Performance Embedded Computing Software Initiative (HPEC-SI) over the last decade with the objective of providing a &#8220;write-once\/run-anywhere&#8221; programming model. HPEC-SI was funded by the DoD and thus has a primary focus on serving the needs of the US Military. During this same timeframe CodeSourcery developed a commercial implementation of VSIPL++ called <a href=\"http:\/\/go.mentor.com\/vsiplxx\" target=\"_blank\" rel=\"noopener noreferrer\">Sourcery VSIPL++<\/a>. <a href=\"http:\/\/www.mentor.com\/embedded-software\/\" target=\"_blank\" rel=\"noopener noreferrer\">Mentor Graphics\u2019 Embedded Software Division<\/a> acquired CodeSourcery in late 2010.<\/p>\n<p>Also, during the last decade, the potential compute power available on embedded platforms has been increasing quite dramatically. With recent introductions of single board computers and SOCs containing multi-core CPUs combined with GPU, DSP and FPGA co-processors, embedded developers now have access to what was not too long ago considered supercomputing -type hardware. However, programming these new powerful hardware platforms to gain access to the full performance potential is quite painful and often results in code that is very platform-specific. To help better address the needs of embedded developers working on HPC applications around the globe and across a variety of markets, Mentor Graphics worked with the HPEC-SI members and OMG leadership to transition the VSIPL++ standard from HPEC-SI to the OMG. Thus, the VSIPL++ standard, which was incubated by HPEC-SI with a military application focus, is now well poised to help provide improved developer productivity and software portability while ensuring maximum application performance for a global community of embedded developers in a variety of domains.<\/p>\n<p>If you\u2019d like to take a closer look, you can view the <a href=\"http:\/\/www.omg.org\/spec\/VSIPL++\" target=\"_blank\" rel=\"noopener noreferrer\">OMG VSIPL++ API specification<\/a> and here is a video presentation on Sourcery VSIPL++:<\/p>\n<p>If you\u2019d like to see the standard in action with your software, you can sign up for a <a href=\"http:\/\/www.mentor.com\/embedded-software\/downloads\/sourcery-vsipl-trial\" target=\"_blank\" rel=\"noopener noreferrer\">free 30 day evaluation of the Sourcery VSIPL++ product<\/a>. And if you are totally passionate about this standard and its future, we would love to have you join us at the <a href=\"http:\/\/www.omgwiki.org\/hpec\" target=\"_blank\" rel=\"noopener noreferrer\">OMG HPEC Working Group<\/a> meeting on December 11th during the <a href=\"http:\/\/www.omg.org\/news\/schedule\/upcoming.htm\" target=\"_blank\" rel=\"noopener noreferrer\">December OMG meeting<\/a> in San Francisco, CA.<\/p>\n<p>Now that I\u2019ve shared our grand vision with you, I am curious; do you consider any of this potentially helpful for your work? I\u2019d like to hear from you if you are facing performance, productivity or portability issues in the development of your high performance embedded applications by <a href=\"mailto:Pete_decher@mentor.com\" target=\"_blank\" rel=\"noopener noreferrer\">email<\/a> or comment.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Having recently made another posting on High Performance Computing, I was quite surprised to receive a guest post from my&#8230;<\/p>\n","protected":false},"author":71677,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spanish_translation":"","french_translation":"","german_translation":"","italian_translation":"","polish_translation":"","japanese_translation":"","chinese_translation":"","footnotes":""},"categories":[1],"tags":[300,456,494,495,458],"industry":[],"product":[],"coauthors":[],"class_list":["post-3823","post","type-post","status-publish","format-standard","hentry","category-news","tag-embedded-software","tag-hpc","tag-object-management-group","tag-omg","tag-vsipl"],"_links":{"self":[{"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts\/3823","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/users\/71677"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/comments?post=3823"}],"version-history":[{"count":1,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts\/3823\/revisions"}],"predecessor-version":[{"id":10110,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts\/3823\/revisions\/10110"}],"wp:attachment":[{"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/media?parent=3823"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/categories?post=3823"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/tags?post=3823"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/industry?post=3823"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/product?post=3823"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/coauthors?post=3823"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}