多核处理器软件开发与编译技术解析
1. MAPS重定向性概述
不同MAPS实例的一个主要参数是目标信息,它包含特定于目标平台的信息,如可用资源(处理器、通信方案)和API调用等,源到源编译器需要了解这些信息。为了将MAPS重定向到不同的MPSoC平台,更新这些信息至关重要。
重定向所需的主要信息类型如下:
- 平台细节 :包括目标平台拥有的可编程处理器数量,这能让编译器知道哪些地方可以同时执行并发进程。
- 多任务运行时 :表明目标MPSoC处理器的运行时环境如何支持并发进程。例如,在Linux等操作系统或专有操作系统运行在处理器上时,操作系统通常具有多任务API来管理并发任务(或进程)。
- 通信 :流式应用程序的进程在相互通信的同时并发运行,因此编译器需要知道进程间通信的可能实现方式,包括通信类型(处理器间或处理器内)和特定的API调用。
以下是将MAPS重定向到不同MPSoC平台的相关信息总结:
| 平台 | 平台细节 | 多任务运行时 | 通信 | 重定向工作量 |
| — | — | — | — | — |
| TI OMAP3530 | ARM + DSP | OS线程(ARM和DSP) | 共享内存 | 20天 |
| TI C6678 | Nx DSPs | OS线程 | 共享内存或消息传递 | 20天 |
| Synopsys MCO | Nx VPUs,支持Pthreads的多核 | MCO任务 | 共享内存 | 10天 |
| Pthreads | 支持Pt