dload vs. drerun
This two-step operation of loading and running supports setting action points before execution begins, as well as executing a program more than once. At a later time, you can use drerun to restart your program, perhaps sending it new arguments. In contrast, reentering the dload command reloads the program into memory (for example, after editing and recompiling the program).
The dload command always creates a new process. The new process is in addition to any existing processes for the program because the CLI does not shut down older processes when starting the new one.
The dkill command terminates one or more processes of a program started by using a dload, drun, or drerun command. The following example continues where the previous example left off:
d1.<>
dkill # kills process
d1.<> drun # runs program from start
d1.<> dlist -e -n 3 # shows lines about current spot
79
80@> do 40 i = 1, 500
81 denorms(i) = x'00000001'
In thread 1.1:
Name: master_array; Type: integer(100);
Size: 400 bytes; Addr: 0x140821310
Scope: ##arraysAlpha#arrays.F#check_fortran_arrays
(Scope class: Any)
Address class: proc_static_var
(Routine static variable)
d1.<>
dgo # Start program running
d1.<> dwhat denorms # Tell me about denorms
In thread 1.1:
Name: denorms; Type: <void>; Size: 8 bytes;
Addr: 0x1408214b8
Scope: ##arraysAlpha#arrays.F#check_fortran_arrays
(Scope class: Any)
Address class: proc_static_var
(Routine static variable)
d1.<>
dprint denorms(0) # Show me what is stored
denorms(0) = 0x0000000000000001 (1)
d1.<>
Because information is interleaved, you may not realize that the prompt has re-appeared. It is always safe to use the Enter key to have the CLI redisplay its prompt. If a prompt isn’t displayed after you press Enter, you know that the CLI is still executing.