comp.lang.ada
 help / color / mirror / Atom feed
From: "Rego, P." <pvrego@gmail.com>
Subject: Re: Raspberry Pi, Real-Time and Ada
Date: Fri, 7 Feb 2014 15:11:20 -0800 (PST)
Date: 2014-02-07T15:11:20-08:00	[thread overview]
Message-ID: <708ef9e4-b6a3-488b-a86d-b70c7de43ac2@googlegroups.com> (raw)
In-Reply-To: <hewmbvd4m8b8$.jigq59474gpu$.dlg@40tude.net>

> I don't think that 10ms would be a problem even for ARM.
> On an Intel board 200µs loops (read inputs, calculate, write outputs) are
> doable.
> Ada has everything you need for that.
> The main problem is how good the RT clock is. Windows and VxWorks typically
> have miserable RT clock services on x86. x86 Linux has a decent one.
> Regarding ARM Linux, I didn't tested its clock, so I cannot tell. The
> primary test is to call Ada.Real_Time.Clock twice and to compare if the
> reading is same. If they are you should look for an alternative
> implementation of. 

BTW, now I have done a fast test using 

with Ada.Real_Time; use Ada.Real_Time;
with Ada.Text_IO;

procedure My_Clock is
   First_Time : Time;
   Second_Time : Time;
   F_Duration : Time_Span;
   Time_Duration : Duration;

begin
   First_Time := Ada.Real_Time.Clock;
   Second_Time := Ada.Real_Time.Clock;
   F_Duration := Second_Time - First_Time;
   Time_Duration := To_Duration (F_Duration);

   Ada.Text_IO.Put_Line (Duration'Image (Time_Duration));  

end My_Clock;

and the result was in average 17us for the RPi (with Raspbian without the preemptive patch), with a variation of 1 us (for just a few executions), while the same code running on a Windows 7x64 machine was sometimes 0, sometimes 366ns (49 times faster).


  parent reply	other threads:[~2014-02-07 23:11 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-06  0:53 Raspberry Pi, Real-Time and Ada Rego, P.
2014-02-06  7:50 ` Stephen Leake
2014-02-06  8:44   ` Dmitry A. Kazakov
2014-02-06 13:16     ` Simon Clubley
2014-02-06 21:12       ` Rego, P.
2014-02-07  0:26         ` Simon Clubley
2014-02-07 11:44           ` Rego, P.
2014-02-06 21:09     ` Rego, P.
2014-02-06 21:04   ` Rego, P.
2014-02-07  8:28     ` Stephen Leake
2014-02-07 12:09       ` Rego, P.
2014-02-08  8:28         ` Stephen Leake
2014-02-08  9:06           ` Dmitry A. Kazakov
2014-02-10 18:18           ` Rego, P.
2014-02-13 15:23             ` Stephen Leake
2014-02-07  8:42     ` Dmitry A. Kazakov
2014-02-07 12:34       ` Rego, P.
2014-02-07 12:59         ` Dmitry A. Kazakov
2014-02-07 13:25           ` Rego, P.
2014-02-07 23:11       ` Rego, P. [this message]
2014-02-08  8:56         ` Dmitry A. Kazakov
2014-02-10 18:29           ` Rego, P.
2014-02-10 20:38             ` Dmitry A. Kazakov
replies disabled

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