SPAM: Interactive Control of NONMEM runs

6 messages 4 people Latest: May 28, 2012
I believe Perl Speaks NONMEM runs -> Perl which calls -> NONMEM 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 run 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/ReadKey.pm You just need to figure out what the control characters are: http://www.perlmonks.org/?node_idq0306. Matt.
Quoted reply history
-----Original Message----- From: owner-nmusers 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 legally privileged. If you are not an intended recipient or an authorized representative of an intended recipient, you are prohibited from using, copying or distributing the information in this e-mail or its attachments. If you have received this e-mail in error, please notify the sender immediately by return e-mail and delete all copies of this message and any attachments. Thank you.
I believe Perl Speaks NONMEM runs -> Perl which calls -> NONMEM 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 run 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/ReadKey.pm You just need to figure out what the control characters are: http://www.perlmonks.org/?node_id=710306. Matt.
Quoted reply history
-----Original Message----- From: [email protected] [mailto:[email protected]] 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: [email protected] ------------------------------------------------ This e-mail (including any attachments) is confidential and may be legally privileged. If you are not an intended recipient or an authorized representative of an intended recipient, you are prohibited from using, copying or distributing the information in this e-mail or its attachments. If you have received this e-mail in error, please notify the sender immediately by return e-mail and delete all copies of this message and any attachments. Thank you.
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 certain environments. This is done using the sig.exe program supplied with NONMEM. 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: [email protected] Web: www.iconplc.com
Quoted reply history
-----Original Message----- From: [email protected] [mailto:[email protected]] 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 -> NONMEM 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 run 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/ReadKey.pm You just need to figure out what the control characters are: http://www.perlmonks.org/?node_id=710306. Matt. -----Original Message----- From: [email protected] [mailto:[email protected]] 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: [email protected] ------------------------------------------------ This e-mail (including any attachments) is confidential and may be legally privileged. If you are not an intended recipient or an authorized representative of an intended recipient, you are prohibited from using, copying or distributing the information in this e-mail or its attachments. If you have received this e-mail in error, please notify the sender immediately by return e-mail and delete all copies of this message and any attachments. Thank you.
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): print.sig Paraprint toggle (monitor parallel processing traffic): paraprint.sig Next (move on to next estimation mode or next estimation): next.sig Stop (end the present run cleanly): stop.sig Subject print toggle: subject.sig 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, Paolo
Quoted reply history
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 certain > environments. This is done using the sig.exe program supplied with NONMEM. > > 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: [email protected] > Web: www.iconplc.com > > -----Original Message----- > From: [email protected] [mailto:[email protected]] 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 > -> NONMEM > > 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 run 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/ReadKey.pm You just need to figure out > what the control characters are: http://www.perlmonks.org/?node_id=710306. > > Matt. > > -----Original Message----- > From: [email protected] [mailto:[email protected]] 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: [email protected] > ------------------------------------------------ > > This e-mail (including any attachments) is confidential and may be legally > privileged. If you are not an intended recipient or an authorized > representative of an intended recipient, you are prohibited from using, copying > or distributing the information in this e-mail or its attachments. If you have > received this e-mail in error, please notify the sender immediately by return > e-mail and delete all copies of this message and any attachments. > > Thank you. >
Paolo: What you say is correct regarding signal files being created. However, the sig program should still work in linux. The source code of sig.exe is sig.f90 in ../util of the nonmem installed directory, and you can see that it produces those files. In linux, the syntax is somtething like: ./sig next or ./sig next ~/nonmem/ Where the second argument is your run directory, in case you are not executing the sig program from the run directory. 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: [email protected] Web: www.iconplc.com
Quoted reply history
-----Original Message----- From: Paolo Denti [mailto:[email protected]] Sent: Monday, May 28, 2012 4:54 AM To: Bauer, Robert Cc: Fidler,Matt,FORT WORTH,R&D; nmusers Subject: Re: SPAM: [NMusers] Interactive Control of NONMEM runs 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): print.sig Paraprint toggle (monitor parallel processing traffic): paraprint.sig Next (move on to next estimation mode or next estimation): next.sig Stop (end the present run cleanly): stop.sig Subject print toggle: subject.sig 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, Paolo 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 certain > environments. This is done using the sig.exe program supplied with NONMEM. > > > 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: [email protected] > Web: www.iconplc.com > > -----Original Message----- > From: [email protected] [mailto:[email protected]] 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 > -> NONMEM > > 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 run > 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/ReadKey.pm You just need to figure > out what the control characters are: http://www.perlmonks.org/?node_id=710306. > > > Matt. > > > > > -----Original Message----- > From: [email protected] [mailto:[email protected]] 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: [email protected] > ------------------------------------------------ > > > > This e-mail (including any attachments) is confidential and may be legally > privileged. If you are not an intended recipient or an authorized > representative of an intended recipient, you are prohibited from using, > copying or distributing the information in this e-mail or its attachments. If > you have received this e-mail in error, please notify the sender immediately > by return e-mail and delete all copies of this message and any attachments. > > Thank you. >
In the NONMEM 7.2 on-line help there are two essentially identical files that address this issue: help/signal.sup html/signal.htm If the description in these files is incorrect or inadequate, please let me know and I will correct it for NONMEM 7.3
Quoted reply history
On Mon, May 28, 2012, at 04:30 PM, Bauer, Robert wrote: > Paolo: > What you say is correct regarding signal files being created. However, > the sig program should still work in linux. The source code of sig.exe > is sig.f90 in ../util of the nonmem installed directory, and you can see > that it produces those files. In linux, the syntax is somtething like: > > ./sig next > > or > > ./sig next ~/nonmem/ > > Where the second argument is your run directory, in case you are not > executing the sig program from the run directory. > > > 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: [email protected] > Web: www.iconplc.com > > -----Original Message----- > From: Paolo Denti [mailto:[email protected]] > Sent: Monday, May 28, 2012 4:54 AM > To: Bauer, Robert > Cc: Fidler,Matt,FORT WORTH,R&D; nmusers > Subject: Re: SPAM: [NMusers] Interactive Control of NONMEM runs > > 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): > print.sig > > Paraprint toggle (monitor parallel processing traffic): > paraprint.sig > > Next (move on to next estimation mode or next estimation): > next.sig > > Stop (end the present run cleanly): > stop.sig > > Subject print toggle: > subject.sig > > 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, > Paolo > > 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 certain > > environments. This is done using the sig.exe program supplied with NONMEM. > > > > > > 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: [email protected] > > Web: www.iconplc.com > > > > -----Original Message----- > > From: [email protected] [mailto:[email protected]] 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 > > -> NONMEM > > > > 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 run > > 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/ReadKey.pm You just need to figure > > out what the control characters are: > > http://www.perlmonks.org/?node_id=710306. > > > > > > Matt. > > > > > > > > > > -----Original Message----- > > From: [email protected] [mailto:[email protected]] 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: [email protected] > > ------------------------------------------------ > > > > > > > > This e-mail (including any attachments) is confidential and may be legally > > privileged. If you are not an intended recipient or an authorized > > representative of an intended recipient, you are prohibited from using, > > copying or distributing the information in this e-mail or its attachments. > > If you have received this e-mail in error, please notify the sender > > immediately by return e-mail and delete all copies of this message and any > > attachments. > > > > Thank you. > >