[fpc-pascal] How to find where my app consumes CPU?
Travis Siegel
tsiegel at softcon.com
Wed May 19 15:36:09 CEST 2021
No doubt your sleep code works just fine.
I'm not saying the sleep command doesn't work.
I'm saying the sleep command doesn't release unused cpu cycles for other
threads/programs to use.
Apparently, if you want that behavior, you need to yield the cpu time
your process would otherwise take, that's done with a different kernel
function than sleep.
Alexander hit the nail on the head though with his solution, so I'm
satisfied that the original poster got what he needed, and I learned
something new about linux processes as well, which makes for a good all
around solution.
On 5/19/2021 6:02 AM, Mattias Gaertner wrote:
> On Tue, 18 May 2021 18:37:38 -0400
> Travis Siegel via fpc-pascal <fpc-pascal at lists.freepascal.org> wrote:
>
>> Apparently, you can release cpu cycles, but it's with the sched_yield
>> (section 2 in the man pages), not the sleep command on linux.
> What sleep command are you referring to?
> What do you mean with cpu cycles?
>
> Sleep works pretty well under Linux:
>
> uses sysutils;
> var i: integer;
> begin
> for i:=1 to 10000 do sleep(1);
> end.
>
> time ./test1
>
> real 0m10,791s
> user 0m0,021s
> sys 0m0,018s
>
> Mattias
More information about the fpc-pascal
mailing list