Blending long-life embedded designs with commercial graphics components is a reality facing OEMs and developers. Understanding how to optimize choices for ideal performance and overall cost management is essential – along with collaboration with manufacturing partners for the most strategic long-term stocking programs. New commercial graphics options extend performance life and reduce total cost of ownership.
Enabling embedded graphics performance may be one of the most challenging design issues facing developers today. Even as designers work with some of the most versatile, energy-efficient, and technically advanced x86 processors to date, onboard graphics performance remains a feature that has not kept in step with demand. Certain high-growth embedded markets just require more, driven by a growing reliance on 3D, media-centric embedded applications that are reshaping and improving the end-user experience – illustrated by treatment advances through more detailed imaging in medical systems. Better imaging supports physicians in all areas of treatment from diagnosis to surgery, adding new value to traditional technologies such as X-rays, which lose volumetric data and depict the patient in only two dimensions. In contrast, 3D capabilities maintain the volume of an image, for example adding greater information on the shape, size, and position of a tumor. For developers, this evolution places greater focus on graphics requirements as part of an overall development plan that considers both performance and longevity – assuring a graphics life cycle that meets performance expectations of long-term embedded deployments in medical settings.
What is the ideal option when faced with choosing between less sophisticated onboard graphics or stronger commercial solutions that lack the inherent longevity required for embedded deployment? Sacrificing performance is not an option, and embedded system developers must plan carefully to maintain graphics availability, longevity, and consistency.
Contrasting 2D and 3D requirements
Steady advancements in x86 processors include notable improvements in CPU, graphics and media performance, illustrated by 4th generation Intel Core Processors (formerly codenamed Haswell). While 4th generation Intel Core processors include the HD 4600 GPU to handle advanced graphics processing, its features are optimized for 2D applications, and media functions such as high-resolution imaging or playback of high-definition video.
In contrast, newer graphics cards are intended for 3D graphics performance, functioning almost like a math coprocessor used to supplement performance of the CPU. Without impact on CPU resources, they readily handle the extreme computing calculations necessary for complex 3D visualization. What side of the object is visible or shaded, where does the brightness fall when light lands on the image, how smoothly does the image turn – these types of movements require intense computational power that must be offloaded from the motherboard or CPU.
Addressing a graphics processing gap
The divide between x86 and card-based graphics performance appears to be a permanent issue, as 3D capabilities are not called out in Intel’s embedded roadmap. The onboard HD 4600 GPU is a strong, proven option designed to accommodate an end-user’s audio-video experience, and is not intended to handle the heavy processing requirements of 3D applications; cost would be prohibitive to change this model. For example, current graphics cards have more transistors than the 4th generation Intel Core CPU itself, making it unlikely that onboard video is going to compare favorably to a discrete graphics processing option. (Nvidia’s Kepler generation of GPU products contain 7 billion transistors.) Graphics technology players like Nvidia have only to focus on improving graphics performance, while each x86 advancement incorporates improvements to every facet of the chip.
Yet embedded developers in markets such as medical imaging must consistently address demand for 3D graphics. Diagnostics have advanced far past flat screen images and instead rely on real-time images that demonstrate volume and size; a surgical suite might have a 4K monitor to guide a procedure with the best possible imagery. These are realms that really must rely on long-life commercial cards for 3D graphics capabilities – mandating a design strategy that thinks outside of onboard x86 options.
Not all graphics cards are created equal
Graphics cards are available in different flavors, which may add some options for consideration by embedded designers. Commercial cards, originally intended for the gamer or maker market, deliver some of the strongest graphics performance available – however their average one-year life cycle is often untenable in the grand scheme of materials management for medical systems. It’s not impossible, but a card of this type adds a significant amount of advance planning to maintain system performance for a multi-year, extended deployment, ultimately causing significant sustaining engineering costs.
Long-life commercial cards are an alternative, although “long life” means something different when compared to a component on a traditional embedded roadmap. Long life in terms of graphics cards is defined as perhaps three years, accompanied by much higher costs when compared to a regular commercial card. This is a new option, and may not be familiar to embedded designers. Cost may be a factor initially, yet should be evaluated carefully as these cards reduce operating costs over the long term. New software specifications, tools, or compilers may be needed to accommodate a new card; software re-certification could be required, and is often more challenging and costly than hardware certification processes. With a three-year life cycle, system operators face this less often and have fewer re-certifications, system tests, or driver changes that add complexity and cost to maintaining graphics performance. For medical OEMs and developers, this adds crucial value in minimizing additional FDA re-certifications.
Committing to card-based graphics
Nvidia is a recognized primary supplier of chips for graphics cards, including the commercial-grade GeForce and the long-life Quadro families. The company is also the originator of the CUDA core, used for compute-intensive applications such as animation or simulation and very popular among 3D design environments.
Nvidia’s cards execute graphics functions using proprietary technology called PhysX, a scalable multi-platform solution purpose-built to meet the unique requirements of physics algorithms. Accelerated by its CUDA core, PhysX enables simulation-driven effects and represents a computing environment that’s much different than a general purpose CPU – its primary focus is determining how objects move and react to the environment around them. Other graphics solutions rely on OpenCL technology, an open standard used to provide a heterogeneous computing platform for parallel processing and high-performance graphics processing. Many 3D applications, such as medical imaging, industrial vision, or training and simulation, incorporate support only for the proprietary PhysX architecture. Once a system is based on PhysX, a move to OpenCL is very complex as it would require new development and an additional skillset in developing an OpenCL integration.
Building in longevity
Committing to card-based graphics drives developers to plan for obsolescence as a strategic consideration early in the design phase. Collaborating with a manufacturing partner in the initial steps of development assures the greatest number of flexible options, which vary according to OEM needs, volumes, and requirements. Stocking programs may include purchasing parts based on OEM forecasts; bonded programs source components and then stock and hold them based on the OEM’s purchase order and forecast. Some designs require more secure partner stocking programs optimized to manage shorter life cycles, illustrated by Corvalent’s purchase order-based, non-cancellable procurements for long-term, consistent stocking of components.
Given the unique design challenges of 3D performance, OEMs may not be fully aware of the requirements for creating a long-term bonded product and need to make sure all the right questions are addressed as part of the overall design strategy. Manufacturing relationships add value by working closely with suppliers like Nvidia and Intel, ensuring consistent, advance end-of-life notices for the most effective component management.
Meeting healthcare market expectations with strategic planning
Optimizing long-term performance is a balancing act that adds complexity to an already challenging medical design process. Systems designers often look to the most current and powerful graphics processors available – unaware they are considering components geared to the gaming community and bypassing commercial graphics options that may be more suitable for an embedded design strategy; at the same time, the OEMs that must support the medical system recognize the need to balance this with longer-life components. Risk analysis wins out, and the group typically evaluates immediate cost versus long-term cost of ownership as a deciding factor.
Viewing patient images in 3D is steadily improving treatment options – better data helps in every healthcare setting ranging from surgery, trauma situations, or routine treatment. As graphics-based applications become even more prevalent in clinical decision-making, it is essential to understand options, including the capabilities of x86 onboard processors as well as commercial and long-life graphics cards. New, extended-life graphics cards and their associated costs must be evaluated in terms of an overall system strategy. Greater upfront costs reduce long-term total cost of ownership for medical deployments – providing a more efficient path for replacing or upgrading cards, and delivering on the promise of 3D applications. This design approach requires planning, relying on technical and experienced manufacturer support in ensuring longevity, consistency, and availability for extended embedded deployments.
Read more in our article at Embedded Computing Design