PSIM on gdbでの実行時間

PowerPCシミュレータであるPSIMをgdbで使った時の実行時間です。 PSIMサイトで公開しているテストプログラムの一つである、 profile/bench.beを実行してみました。
実行時間はrunを実行してプロンプトがもどってくるまでの時間を 目視で3回計りました。

BASH.EXE-2.02$ ~/bin/powerpc-unknown-eabisim-gdb.exe bench.be
GNU gdb 4.18
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "--host=i586-pc-cygwin32 --target=powerpc-unknown-eab
i"...
(gdb) target sim -I -e netbsd
Connected to the simulator.
(gdb) load
(gdb) run
Starting program: /taneda/develop/gdb-4.18/psim/test/profile/bench.be

Program exited normally.
(gdb) quit
CPU #1 executed    680,057 Add instructions.
CPU #1 executed  1,471,822 Add Immediate instructions.
CPU #1 executed    693,108 Add Immediate Carrying instructions.
CPU #1 executed  1,415,729 Add Immediate Shifted instructions.
CPU #1 executed    471,909 Add to Zero Extended instructions.
CPU #1 executed  1,847,431 Branch instructions.
CPU #1 executed  1,999,250 Branch Conditional instructions.
CPU #1 executed    571,911 Branch Conditional to Link Register instructions.
CPU #1 executed    327,226 Compare instructions.
CPU #1 executed  1,083,742 Compare Immediate instructions.
CPU #1 executed    145,867 Compare Logical instructions.
CPU #1 executed    442,414 Compare Logical Immediate instructions.
CPU #1 executed          1 Condition Register XOR instruction.
CPU #1 executed    207,746 Divide Word instructions.
CPU #1 executed    208,550 Divide Word Unsigned instructions.
CPU #1 executed    212,016 Extend Sign Byte instructions.
CPU #1 executed    286,232 Extend Sign Half Word instructions.
CPU #1 executed    690,535 Load Byte and Zero instructions.
CPU #1 executed    911,914 Load Halfword and Zero instructions.
CPU #1 executed          1 Load Word And Reserve Indexed instruction.
CPU #1 executed  8,161,576 Load Word and Zero instructions.
CPU #1 executed    100,001 Move from Special Purpose Register instructions.
CPU #1 executed    100,000 Move to Special Purpose Register instructions.
CPU #1 executed    888,205 Multiply Low Word instructions.
CPU #1 executed  2,298,394 OR instructions.
CPU #1 executed    521,912 OR Immediate instructions.
CPU #1 executed  2,190,842 Rotate Left Word Immediate then AND with Mask instructions.
CPU #1 executed    663,613 Shift Left Word instructions.
CPU #1 executed  1,151,564 Shift Right Algebraic Word Immediate instructions.
CPU #1 executed    230,570 Store Byte instructions.
CPU #1 executed    297,858 Store Half Word instructions.
CPU #1 executed  4,396,294 Store Word instructions.
CPU #1 executed          1 Store Word Conditional Indexed instruction.
CPU #1 executed    571,911 Store Word with Update instructions.
CPU #1 executed    887,803 Subtract From instructions.
CPU #1 executed          1 System Call instruction.
CPU #1 executed    207,746 XOR instructions.

CPU #1 executed 47,270,559 cycles.
CPU #1 executed 18,864,127 stalls waiting for data.
CPU #1 executed          1 stall waiting for serialization.
CPU #1 executed    767,750 branches.
CPU #1 executed  3,650,842 conditional branches fell through.
CPU #1 executed    767,750 successful branch predictions.
CPU #1 executed  1,231,500 unsuccessful branch predictions.
CPU #1 executed  1,556,834 branch if the condition is FALSE conditional branches.
CPU #1 executed    442,416 branch if the condition is TRUE conditional branches.
CPU #1 executed    571,911 branch always conditional branches.
CPU #1 executed 14,580,081 1st single cycle integer functional unit instructions.
CPU #1 executed    571,916 2nd single cycle integer functional unit instructions.
CPU #1 executed  1,504,502 multiple cycle integer functional unit instructions.
CPU #1 executed 15,260,659 load/store functional unit instructions.
CPU #1 executed  4,418,594 branch functional unit instructions.
CPU #1 executed 36,335,752 instructions that were accounted for in timing info.
CPU #1 executed  9,764,027 reads  (690,535 1-byte, 911,914 2-byte, 8,161,578 4-byte, 0 8-byte).
CPU #1 executed  5,496,634 writes (230,570 1-byte, 297,858 2-byte, 4,968,206 4-byte, 0 8-byte).
CPU #1 executed        426 icache misses.
CPU #1 executed 36,335,752 instructions in total.

以上がPentiumIII(550MHz)+Win98SE+Cygwin(Beta20.1)上で約26秒でした。


TOP PREV