- When an IMLPlus program makes its first call to R, IML Studio creates a new operating system process that is dedicated to running R statements for the IMLPlus program. When you close the
IMLPlus program, IML Studio closes the companion R process. This design provides the following benefits:
- Each IMLPlus program has a separate R symbol table.
- Each companion R process has a private address space that it does not have to share with IML Studio. This enables both IML Studio and R to hold more data in memory.
- Multiple IMLPlus programs can execute within R at the same time. If your computer has N processors/cores, you can execute up to N IMLPlus programs in parallel,
each of which can utilize R.
- If one of the companion R processes crashes, it will not cause IML Studio to crash.
The companion R processes are called tkrproxy.exe or tkrproxy64.exe. If you are running several IMLPlus programs that are interacting with R, you will see several instances of tkrproxy.exe
or tkrproxy64.exe listed in Windows Task Manager.
- When you rerun an IMLPlus program outside of Statement Mode, IML Studio clears the IML symbol table but it
does not clear the R symbol table. If you would like to clear the R symbol table at the beginning of an IMLPlus program, add the following line to the beginning of the program:
R.SubmitStatements( "remove( list=ls() )" );
- If you instruct IML Studio to stop an IMLPlus program and the program is executing within R, IML Studio first stops the execution within R and then it stops the IMLPlus program. To stop
program execution:
On the Program menu, click Stop.
–or–
Press CTRL+BREAK.
–or–
Click the Stop button () on the toolbar.
- When using the SUBMIT statement, be aware that all characters after the semicolon are sent to R for processing. Because R does not support the /* */ syntax for comments, you cannot use
an IML style comment on the same line as a SUBMIT statement. For example, the following comment is a mistake:
submit / R; /* call R */
The correct comment is:
submit / R; # call R