Boost The Performance Of Your Electronic Product By At Least 20%

Green Hills Optimizing Compilers Boost Performance

A compiler translates the high-level language in which your software is written into the machine language that the microprocessor in your electronic product actually understands. The quality of the translation determines the speed at which your electronic product will operate. A Green Hills Optimizing Compiler can make most programs run at least 20% faster than if you compiled with a "free" GNU compiler.

The EEMBC benchmarks are the most widely accepted benchmarks in the embedded industry. Green Hills Optimizing Compilers consistently beat the GNU compilers on benchmarks by a large margin.

Green Hills Optimizing Compilers are highly configurable. They offer hundreds of unique optimizations, each developed as a result of studying how to extract the highest performance from thousands of embedded programs. To get the highest performance for a particular program the best combination of optimizations must be selected. It is often necessary to select different optimization configurations for different parts of the program. Green Hills Optimizing Compilers allow different optimization options for each file, function, and even for individual source code lines.

Green Hills Optimizing Compilers represent the most advanced optimizing compiler technology. Green Hills Software has been the leader in optimizing compiler technology for the last twenty-eight years.

MULTI Event Analyzer Boosts Your Performance

Our Event Analyzer tackles high-level performance problems. You can use it to visualize the actual interactions between tasks, interrupts, and the operating system. Many performance problems have to do with incorrect task priorities, excessive interrupt level processing, too many calls to the operating system, excessive communications, and unexpected task context switches. All of these activities, as well as any user-defined events, can be viewed graphically, giving a detailed view of how long each operation takes, and how often they occur. This allows you to significantly boost performance by reworking algorithms, reducing interrupt latencies and context switches, and optimizing the communications in your system.

INTEGRITY Boosts Your Performance

Your product's performance depends critically the RTOS you select. The RTOS uses processor cycles that slow down the rest of your software. INTEGRITY enables your product to attain the highest performance.

Interrupt latency is a critical requirement for many electronic products: the amount of time that it takes for the software to respond to an external event. Other operating systems, such as VxWorks and Linux, occasionally disable interrupts to perform housekeeping functions. During this time, the software is unable to respond to external events. This can drastically increase the worst-case response time under unusual circumstances.

Another critical requirement for many systems is context switch time: the amount of time that it takes for the software to switch from performing one task to another, e.g. from calculating the optimal fuel mixture to firing the spark plug of an engine running at 8000 RPM. Other operating systems, such as VxWorks and Linux, use semaphores and reentrancy inside their operating systems. This can lead to long delays under unusual circumstances.

INTEGRITY has a revolutionary design for fast responsiveness and fast context switches: INTEGRITY never disables interrupts in system calls and it never uses semaphores or reentrancy in the operating system. If a Wind River or Linux salesman assures you that this is impossible, it only shows just how far behind us they are in operating system technology. INTEGRITY attains the lowest worst-case response time and context switch time. It is unlikely that the obscure combination of events that cause the worst-case response times for VxWorks or Linux will ever be observed by developers in the lab. But when the product is released and millions of copies of the software run for thousands of hours, many highly unlikely combinations will occur frequently. And each time they do, the system will respond much more slowly, which may cause the software to glitch, crash, or lock up.

Red Hat recently published a study on this effect in Linux: "Linux Scheduler Latency," March 2002. It showed that on a particular computer the average response time to an event was 60 microseconds. But once in a million times the worst-case response time was 2 milliseconds, more than 30 times longer than average. And this was after they had done major surgery on a standard Linux to build a "real time" Linux! INTEGRITY responds more quickly on a $5 microprocessor than Linux responds on $500 Pentium processor. This can save you 99% on your processor cost!

MULTI Performance Analyzer Boosts Performance

In pursuit of Green Hills Software's quest to beat every other compiler on every program, Green Hills Software has invented a whole new technology for analyzing software performance. Our world leading MULTI embedded software development environment includes our patented performance analysis tools that give unequaled insight into the behavior of your program. For instance, MULTI can automatically sort out from the hundreds of thousands of source code lines in a program, the few that use the most processor time. MULTI can determine how much processor time is consumed by each task, function, source line, and assembly language instruction. With this information it is easy to dramatically increase the performance of your software by selecting different compiler optimizations for the most critical functions and source lines. You can also rewrite the most critical portions of your software to be more efficient (writing them in assembly language if necessary). Even more advanced performance analysis features allow you to quickly identify the reasons that the critical functions and source lines are being executed so often. This allows you to modify your algorithms so that these lines execute less often, further increasing your software's performance.

Our Performance Tune-up Service Boosts Performance

To obtain the highest possible performance, turn your program over to our Performance Tune-up Service, the best performance enhancement team in the world. They have consistently won benchmark competitions against every other compiler for the last twenty-eight years. They know every performance enhancement capability of our products intimately, because they designed them. They will use our MULTI performance analyzer to select the optimal compiler optimizations for each part of your program. If our compilers don't have the right optimization for your program, they will add it. If you allow them, they will modify your program to make it run faster. Our experts have even talked microprocessor manufacturers into adding new instructions to their microprocessors in order to make a particular customer's program run faster! Our benchmarking experts will do anything to win. If you make your program their next benchmark, they will amaze you with how much faster they can make your software. We have improved the performance of customer programs by over 300% (but your mileage may vary).

Our Performance Tune-up Service can almost always boost your performance by more than 20%. What is that worth to you? If you don't believe we can do it, call our experts today for a free evaluation.

© 1996-2014 Green Hills Software Trademark & Patent Notice