-mcpu=cpu_type
设置体系结构类型、寄存器用法、选择记忆法(mnemonics)、针对机器类型 cpu_type 的指令调度参数。cpu_type 类型所支持的值是 401、403、405、405fp、440、440fp、505、601、602、603、603e、604、604e、620、630、740、7400、7450、750、801、821、823、860、970、common、ec603e、G3、G4、G5、power、power2、power3、power4、power5、powerpc、powerpc64、rios、rios1、rios2、rsc 和 rs64a。
-mcpu=common 选择的是完全通用的处理器。基于此选项生成的代码将可以运行于任何 POWER 或PowerPC 处理器之上。GCC 将只会使用这两种体系结构的指令公共子集,将不会使用 MQ 寄存器。GCC 在进行调度时会采用通用处理器模型。在实验过程中,我发现在我的 YDL 系统中,我可以以几种不同的 CPU 为目标编译(并运行)LMBench,比如 G5 、 G4 、或 powerpc 。我尤其感兴趣的是以 common 为目标尝试进行编译,但是我的系统缺少一些必需的头文件。我可能可以下载 GCC 源代码和其他相关文件来解决这一问题。使用 YDL 自带的 GCC,我还是可以以 common 为目标编译 LMBench 源文件中的很多文件 —— 但不是全部。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | Basic system parameters Host OS Description MHz --------- ------------- ----------------------- ---- Darwin Darwin 7.2.0 powerpc-apple-darwin7.2 1800 32bit Linux 2.6.4-1 powerpc-linux-gnu 32bit 1800 64bit Linux 2.6.1-1 powerpc-linux-gnu 64bit 1800 64bit-970 Linux 2.6.1-1 PPC-linux -mtype=970 1800 Processor, Processes - times in microseconds - smaller is better ---------------------------------------------------------------- Host null null open selct sig sig fork exec sh call I/O stat clos TCP inst hndl proc proc proc --------- ---- ---- ---- ---- ----- ---- ---- ---- ---- ---- Darwin 2.23 2.78 6.27 9.17 15.6 3.09 8.97 1468 3146 6796 32bit 0.30 0.42 5.13 6.08 25.5 0.72 2.67 295 990 4093 64bit 0.23 0.43 5.04 6.47 33.3 0.70 2.19 257 914 3778 64bit-970 0.24 0.44 4.98 6.49 33.2 0.70 2.25 262 955 3856 Context switching - times in microseconds - smaller is better ------------------------------------------------------------- Host 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw --------- ----- ------ ------ ------ ------ ------- ------- Darwin 12.4 12.3 12.3 12.9 16.4 14.2 34.2 32bit 10.4 10.5 10.6 8.68 9.71 7.57 26.2 64bit 11.1 11.3 11.4 9.35 12.7 10.1 29.2 64bit-970 11.2 11.3 7.97 7.11 16.4 7.57 27.9 *Local* Communication latencies in microseconds - smaller is better ------------------------------------------------------------------- Host 2p/0K Pipe AF UDP RPC/ TCP RPC/ TCP ctxsw UNIX UDP TCP conn --------- ----- ----- ---- ----- ----- ----- ----- ---- Darwin 12.4 40.6 40.3 58.4 74.3 153. 32bit 10.4 20.5 24.5 31.5 40.6 57.5 41.4 53.3 64bit 11.1 47.8 42.4 58.5 45.9 67.7 68.9 47.9 64bit-970 11.2 40.2 24.6 34.0 40.5 35.0 48.5 47.7 File & VM system latencies in microseconds - smaller is better -------------------------------------------------------------- Host 0K File 10K File Mmap Prot Page Create Delete Create Delete Latency Fault Fault --------- ------ ------ ------ ------ ------- ----- ----- Darwin 108.2 136.3 1440.9 228.2 11.0K 47.4 3740.0 32bit 44.1 34.3 121.8 64.3 3894.0 0.595 7.0 64bit 46.5 30.8 118.2 59.2 3314.0 0.514 4.0 64bit-970 46.5 30.8 118.3 59.2 3256.0 0.550 4.0 *Local* Communication bandwidths in MB/s - bigger is better ----------------------------------------------------------- Host Pipe AF TCP File Mmap Bcopy Bcopy Mem Mem UNIX reread reread (libc) (hand) read write --------- ---- ---- ---- ------ ------ ------ ------ ---- ----- Darwin 52. 346 351. 364.0 1837.4 1431.0 897.8 1840 1207. 32bit 715. 1137 428. 1037.6 1799.4 899.9 888.5 1805 1203. 64bit 634. 1189 609. 922.3 1789.5 888.5 888.5 1792 1200. 64bit-970 620. 1046 629. 915.4 1792.0 888.4 889.6 1797 1209. Memory latencies in nanoseconds - smaller is better --------------------------------------------------- Host L1 $ L2 $ Main mem --------- ----- ------ -------- Darwin 1.664 6.1040 152.3 32bit 1.666 6.1110 153.1 64bit 1.667 6.1150 153.9 64bit-970 1.666 6.1140 153.3 |
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |