Tool Options: Maximizing Software Performance in Multi-core Processors
Unleashing the full power of multi-core processors requires software that provides performance, flexibility and reuse. While writing hardware-specific code directly to the device may yield performance, it sacrifices flexibility and reuse. On the other hand, using a standard OS and tool chain provides reuse but sacrifices performance and flexibility. Teja provides a software platform that balances the needs of performance, flexibility and reuse through late binding, modular parallel and distributed code development, and standard embedded API framework.
Benchmark studies of using the Teja platform on tightly coupled multi-core processors show a performance improvement of over 10 times for fast path packet processing, with 5X improvement due to architecture and API factors and 2X due to language and compiler factors.