From 2005, as Intel delivered its dual-core desktop CPU based on x86 architecture, multi-core processor begin to come into our life. The development of processor has already transferred from growing frequency to multi-core computing and parallel processing. Multi-core processor is to integrate several process cores into one processor. Comparing to single-core processor, multi-core architecture can work under higher overload and lower frequency according to its parallel advantage. So multi-core can give us a better performance processor with lower power, lower heat drop off and lower produce cost.In this circumstance, the conflict between tradition serial program model and parallel architecture begin to come out. The change from signal-core to multi-core is different from processor frequency growing. If our written program is not based on the characteristic of multi-core, we will not get the better performance from multi-core processor. The times of multi-core gives a strong impact on traditional serial program model. To make full use of multi-core, we have to design a new parallel programming model which can have higher efficiency on multi-core.On the other hand, multimedia and network technology is developing rapidly. From desktop to laptop, mobile and PDA of embedded system, there is lots of multimedia application. Like audio/video encode and decode, network data transformation and analysis, these applications have more requests on performance. The applications mainly exist as "streaming" with lager data transformation. They need more real time response, and have a higher parallel computing foundation. According to these characteristic, the optimization on parallel is hard to implement on traditional serial architecture, but multi-core gives us a new chance.The main work is to make full use of parallel advantage of multi-core processor on the application of multimedia and network. We design a new parallel programming model, "ComponentC Streaming Language" . It based on multi-core and using on multimedia and network application. This model can segment single program to multi task and map them to multi-core. It will get a load balance from optimization and make full use of every core of the CPU to get a better performance. The main contributions of this paper are listed below:A parallel programming model based on multi-coreA framework for specifying streaming applications using componentsA framework for describing a target multi-core systemComponents mapping optimize method that maps components onto cores... |