From owner-freebsd-questions@freebsd.org Tue Jan 12 18:36:37 2016 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DD375A80785 for ; Tue, 12 Jan 2016 18:36:37 +0000 (UTC) (envelope-from smithi@nimnet.asn.au) Received: from sola.nimnet.asn.au (paqi.nimnet.asn.au [115.70.110.159]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 63F0A1CE1 for ; Tue, 12 Jan 2016 18:36:36 +0000 (UTC) (envelope-from smithi@nimnet.asn.au) Received: from localhost (localhost [127.0.0.1]) by sola.nimnet.asn.au (8.14.2/8.14.2) with ESMTP id u0CIaUXP077794; Wed, 13 Jan 2016 05:36:31 +1100 (EST) (envelope-from smithi@nimnet.asn.au) Date: Wed, 13 Jan 2016 05:36:30 +1100 (EST) From: Ian Smith To: kpneal@pobox.com cc: "William A. Mahaffey III" , freebsd-questions@freebsd.org Subject: Re: Task to busy one CPU 100% for a period of time? In-Reply-To: <20160111203832.GC88498@neutralgood.org> Message-ID: <20160113052558.R93547@sola.nimnet.asn.au> References: <20160111002439.Q93547@sola.nimnet.asn.au> <56928802.2040802@hiwaay.net> <20160111154616.G93547@sola.nimnet.asn.au> <20160111203832.GC88498@neutralgood.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Jan 2016 18:36:38 -0000 On Mon, 11 Jan 2016 15:38:32 -0500, kpneal@pobox.com wrote: > On Mon, Jan 11, 2016 at 04:04:05PM +1100, Ian Smith wrote: > > Thanks for your response. However I don't do C, and really need to find > > something out of the box that I can configure to run at 100% of one CPU > > for a specified number of iterations, which will then run for a certain > > amount of CPU time on my hardware, while always on the run queue. > > Won't this reproduce your results? > > Two compilations: > > /* main.c */ > int main() { > for (;;) > dummy_function(); > /*NOTREACHED*/ > return(0); > } > > /* dummy.c */ > int dummy_function(void) { > return 0; > } > > cc -c main.c > cc -c dummy.c > cc -o load1 main.o dummy.o > > One invocation of this program should consume an entire CPU and therefore > raise the load average by 1.00. Run as many as you like. > > (The reason for the two compilations is to avoid having any compiler > optimize away the for loop. Just to be safe.) Thankyou Kevin. Works a treat, so far tested 8 at once, loadavg = 8.00 I'll follow up hopefully tomorrow with results of a sh script to run a given number of instances for a given time, needing a bit more testing. cheers, Ian