NONMEM Users Network Archive

Hosted by Cognigen

Re: SPAM: Interactive Control of NONMEM runs

From: Paolo Denti <paolo.denti>
Date: Mon, 28 May 2012 10:53:56 +0200

Thank you both for your help,
I feared that Perl was capturing the keyboard commands, and the sig.exe
would sadly not help in my case, because I wanted to use the function in
a Linux environment.

But after playing with sig.exe a bit, I realized that all it does is
creating a file that gives the signal. So by creating the file manually,
you can override the whole process.

All you need to do is finding the directory where NONMEM is running
(NM_run1 in PSN) and manually create an empty file with a different name
according to the desired action. Here's a list:

Print toggle (monitor estimation progress):

Paraprint toggle (monitor parallel processing traffic):

Next (move on to next estimation mode or next estimation):

Stop (end the present run cleanly):

Subject print toggle:

The function I wanted is "Next". NONMEM grinds a couple if iterations
more and then it terminates nicely as if the maximum number of function
evaluations had been reached.

I hope this info can help others too.

Thank you,

On 2012/05/25 17:57, Bauer, Robert wrote:
> You should read the next several paragraphs in the guide, stating how you=
 can alternatively control NONMEM if the control keys do not work in certai=
n environments. This is done using the sig.exe program supplied with NONME=
> Robert J. Bauer, Ph.D.
> Vice President, Pharmacometrics, R&D
> ICON Development Solutions
> 7740 Milestone Parkway
> Suite 150
> Hanover, MD 21076
> Tel: (215) 616-6428
> Mob: (925) 286-0769
> Email: Robert.Bauer
> Web:
> -----Original Message-----
> From: owner-nmusers
On Behalf Of Fidler,Matt,FORT WORTH,R&D
> Sent: Friday, May 25, 2012 11:26 AM
> To: Paolo Denti; nmusers
> Subject: RE: SPAM: [NMusers] Interactive Control of NONMEM runs
> I believe Perl Speaks NONMEM runs
> -> Perl which calls
> Therefore, I think all the control-codes from the console are sent to the=
 Perl process, not the NONMEM process. Currently, the work-around is to ru=
n NONMEM directly.
> However, it is theoretically possible to look at the execute code and add=
 a patch that monitors key behaviors(via Perl's ReadKey) http://search.cpan=
.org/dist/TermReadKey/ You just need to figure out what the cont=
rol characters are:
> Matt.
> -----Original Message-----
> From: owner-nmusers
On Behalf Of Paolo Denti
> Sent: Wednesday, May 23, 2012 5:57 AM
> To: nmusers
> Subject: SPAM: [NMusers] Interactive Control of NONMEM runs
> Hello everyone,
> In the NONMEM 7.2 guide, I found this interesting section:
>> I.11 Interactive Control of a NONMEM batch Program
>> A NONMEM run can now be controlled to some extent from the console by
>> issuing certain
>> control characters.
>> Console iteration printing on/off during any Estimation analysis
>> (ctrl-J from console NONMEM,
>> Iterations button from PDx-POP).
>> Exit analysis at any time, which completes its output, and goes on to
>> next mode or estimation
>> method (ctrl-K from console, or Next button in PDx-POP).
>> Exit program gracefully at any time (ctrl-E or Stop button).
>> Monitor the progress of each individual during an estimation by
>> toggling ctrl-T. Wait 15
>> seconds or more to observe a subject's ID, and individual objective
>> function value. It is also
>> good to test that the problem did not hang if a console output had not
>> been observed for a long
>> while.
> It seems like there is a feature to interact with a NONMEM run and
> interrupt it but still get the results in a neat way, which would be
> very useful, especially with long runs.
> I've tried using CTRL+K, but I had no luck. I am using the execute
> script of Perl Speaks NONMEM to run my models, so maybe console commands
> (except CTRL+C) get filtered away. Any experience from anybody in the
> group? Is this feature working when running NONMEM directly, without a
> wrapper like PSN? Any workaround?
> Any help would be greatly appreciated.
> Thank you,
> Paolo
> --
> ------------------------------------------------
> Paolo Denti, PhD
> Junior Lecturer
> Division of Clinical Pharmacology
> Department of Medicine
> University of Cape Town
> K45 Old Main Building
> Groote Schuur Hospital
> Observatory, Cape Town
> 7925 South Africa
> phone: +27 21 404 7719
> fax: +27 21 448 1989
> email: paolo.denti
> ------------------------------------------------
> This e-mail (including any attachments) is confidential and may be legall=
y privileged. If you are not an intended recipient or an authorized represe=
ntative of an intended recipient, you are prohibited from using, copying or=
 distributing the information in this e-mail or its attachments. If you hav=
e received this e-mail in error, please notify the sender immediately by re=
turn e-mail and delete all copies of this message and any attachments.
> Thank you.
> ICON plc made the following annotations.
> -------------------------------------------------------------------------=
> This e-mail transmission may contain confidential or legally privileged i=
> that is intended only for the individual or entity named in the e-mail ad=
dress. If you
> are not the intended recipient, you are hereby notified that any disclosu=
re, copying,
> distribution, or reliance upon the contents of this e-mail is strictly pr=
ohibited. If
> you have received this e-mail transmission in error, please reply to the =
sender, so that
> ICON plc can arrange for proper delivery, and then please delete the mess=
> Thank You,
> ICON plc
> South County Business Park
> Leopardstown
> Dublin 18
> Ireland
> Registered number: 145835

Paolo Denti, PhD
Junior Lecturer
Division of Clinical Pharmacology
Department of Medicine
University of Cape Town

K45 Old Main Building
Groote Schuur Hospital
Observatory, Cape Town
7925 South Africa
phone: +27 21 404 7719
fax: +27 21 448 1989
email: paolo.denti

Received on Mon May 28 2012 - 04:53:56 EDT

The NONMEM Users Network is maintained by ICON plc. Requests to subscribe to the network should be sent to:

Once subscribed, you may contribute to the discussion by emailing: