MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: How to kill slave kernel securely?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg117198] Re: How to kill slave kernel securely?
  • From: "Alexey Popkov" <lehin.p at gmail.com>
  • Date: Fri, 11 Mar 2011 04:33:39 -0500 (EST)

Todd,

I have discovered that in standard cases when using LinkInterrupt[link, 1]
my operating system (Windows 2000 at the moment) releases physical memory
only in 0.05-0.1 second beginning with a moment of execution of
LinkInterrupt[link, 1] while with LinkClose[link] it releases physical
memory in 0.01-0.03 second (both values include the time, spent on execution
of the command itself). Time intervals were measured by using SessionTime[]
under equal conditions and are steadily reproduced.

Is there a way to make LinkInterrupt[link, 1] faster?

Alexey Popkov


----- Original Message ----- 
From: "Todd Gayley" <tgayley at wolfram.com>
To: "Alexey" <lehin.p at gmail.com>; <mathgroup at smc.vnet.net>
Sent: Thursday, March 10, 2011 4:09 AM
Subject: [mg117198] Re: [mg117082] How to kill slave kernel securely?


> At 06:00 AM 3/9/2011, Alexey wrote:
> >Good day,
> >
> >LinkClose[link] "does not necessarily terminate the program at the
> >other end of the connection" as it is said in the Documentation. Is
> >there a way to kill the process of the slave kernel securely?
>
>
> Alexey,
>
> As you note, the kernel doesn't always die immediately when the link
> to it closes. That requires some cooperation from the kernel, and if
> the kernel is deep in some computational library function, it might
> not be in a position to respond. A much stronger step than just
> closing the link is to send the kernel an MLTerminateMessage. From
> top-level code (which is what I know you are using):
>
>    LinkInterrupt[link, 1] (* An undocumented form that lets you pick
> the message type *)
>
> In C:
>
>    MLPutMessage(link, MLTerminateMessage);
>
> In Java using J/Link:
>
>    link.terminateKernel();
>
> In .NET using .NET/Link:
>
>    link.TerminateKernel();
>
>
> Todd Gayley
> Wolfram Research
>
>



  • Prev by Date: Re: determining boundary of a region in n-dimensional euclidean space
  • Next by Date: Re: FindFit power law problem
  • Previous by thread: Re: How to kill slave kernel securely?
  • Next by thread: Re: How to kill slave kernel securely?