1
0
mirror of https://github.com/simh/simh.git synced 2026-04-20 09:36:17 +00:00

Fixed throttling in several ways:

- Sleep for the observed clock tick size while throttling
                        - Recompute the throttling wait once every 10 seconds
                          to account for varying instruction mixes during
                          different phases of a simulator execution or to
                          accommodate the presence of other load on the host
                          system.
                        - Each of the pre-existing throttling modes (Kcps,
                          Mcps, and %) all compute the appropriate throttling
                          interval dynamically.  These dynamic computations
                          assume that 100% of the host CPU is dedicated to
                          the current simulator during this computation.
                          This assumption may not always be true and under
                          certain conditions may never provide a way to
                          correctly determine the appropriate throttling
                          wait.  An additional throttling mode has been added
                          which allows the simulator operator to explicitly
                          state the desired throttling wait parameters.
                          These are specified by:
                                 SET THROT insts/delay
                          where 'insts' is the number of instructions to
                          execute before sleeping for 'delay' milliseconds.
This commit is contained in:
Mark Pizzolato
2011-10-25 03:52:24 -07:00
parent 9f1f586714
commit c38eacd0c8
3 changed files with 77 additions and 19 deletions

3
scp.c
View File

@@ -616,7 +616,8 @@ static CTAB cmd_table[] = {
"set console NODEBUG disable console debugging\n"
"set break <list> set breakpoints\n"
"set nobreak <list> clear breakpoints\n"
"set throttle x{M|K|%%} set simulation rate\n"
"set throttle {x{M|K|%}}|{x/t}\n"
" set simulation rate\n"
"set nothrottle set simulation rate to maximum\n"
"set asynch enable asynchronous I/O\n"
"set noasynch disable asynchronous I/O\n"