Platform Software Optimization for Multi-Core Architecture Processors

·

·

Advances in semiconductor manufacturing technology enable the industry to deploy multi-core processors in all market segments including embedded and communications. To make a successful transition to multi-core architecture, software optimization is required.

Developers have two strategy options to migrate an existing application to multi-core architecture:

  • The first approach to optimization is to use threading libraries (or libraries that are threaded) and other components in the tool chain that will support a successful transition.
  • The second approach is to look at overall platform behavior before and after migration to discover and remove major bottlenecks in memory or I/O access.

This paper illustrates the migration of an open-source cryptography application called Serpent from a previous-generation Intel® architecture-based platform to a platform featuring the latest Intel® multi-core architecture processors based on the new Intel® Core i7 microarchitecture. The paper details several platform level optimizations, such as the use of a buffering approach to eliminate a large number of kernel-to-user space copies, results in significant performance gains over the original, unmodified application.

Comments

Leave a Reply