Task to busy one CPU 100% for a period of time?
Ian Smith
smithi at nimnet.asn.au
Tue Jan 12 18:36:38 UTC 2016
On Mon, 11 Jan 2016 15:38:32 -0500, kpneal at 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
More information about the freebsd-questions
mailing list