comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Hint to Ada newbies
Date: Fri, 10 Feb 2017 10:22:54 +0100
Date: 2017-02-10T10:22:54+01:00	[thread overview]
Message-ID: <o7k0pe$d91$1@gioia.aioe.org> (raw)
In-Reply-To: wcc7f4zez7f.fsf@TheWorld.com

On 10/02/2017 00:12, Robert A Duff wrote:
> Simon Wright <simon@pushface.org> writes:
>
>> I have had to use the power switch to stop a build using -j0! '-j<1 less
>> than the number of cores>' does pretty well.
>
> Which operating system?

Windows in my case, when compiling native, cross or under a virtual 
machine. But there is no need to reset. One should just wait a few 
minutes and then it would go again.

I always change the priority of gprbuild to "below normal" in the task 
manager (and one of the virtual machine too) in order to prevent locks 
like that.

It is not AdaCore to blame, IMO.

A more grave problem is when there are free cores and no free memory. 
This leads to swapping which may require hours if not days to wait 
before the OS becomes responsible again. I had this on ARM Linux quite 
frequently. Maybe this is what Simon had too.

P.S. It would be nice to have a smarter kind of -j0 switch:

1. No new instances if memory or CPU use is greater than some limit 
(e.g. 80%).

2. Spawned instances run on the idle priority.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de


  reply	other threads:[~2017-02-10  9:22 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-09  4:17 Hint to Ada newbies reinkor
2017-02-09  6:06 ` Per Sandberg
2017-02-09  8:02   ` Simon Wright
2017-02-09 23:12     ` Robert A Duff
2017-02-10  9:22       ` Dmitry A. Kazakov [this message]
2017-02-11  9:16         ` Hadrien Grasland
2017-02-11  9:39           ` Dmitry A. Kazakov
2017-02-10  9:56       ` Simon Wright
2017-02-11  9:25         ` Hadrien Grasland
2017-02-09  9:26   ` reinkor
2017-02-09 17:40   ` John Smith
2017-02-11 17:40 ` stevenselectronicmail
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox