summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODO2
-rwxr-xr-xgpsprof35
-rw-r--r--gpsprof.xml25
3 files changed, 20 insertions, 42 deletions
diff --git a/TODO b/TODO
index 927d8c44..a252de33 100644
--- a/TODO
+++ b/TODO
@@ -44,8 +44,6 @@ of mode switch we should be uttering.
**** cgps.c still relies on old protocol (that's Jeff Francis's problem).
-**** gpsprof still requires old protocol
-
*** Complete and test the speed/parity/stopbit methods in the drivers
These are used for the '?DEVICE' (old 'B') command. All work for 8N1.
diff --git a/gpsprof b/gpsprof
index 1a8a9fc9..dbf42fa8 100755
--- a/gpsprof
+++ b/gpsprof
@@ -248,21 +248,17 @@ class splitplot:
def data(self, session):
res = ""
for timings in self.stats:
- if timings.timebase:
- e1 = timings.xmit
- else:
- e1 = 0
for s in splitplot.sentences:
if s == timings.tag:
- res += "%2.6f\t" % e1
+ res += "%2.6f\t" % timings.xmit
else:
res += "- \t"
res += "%2.6f\t%2.6f\t%2.6f\t%2.6f\t%2.6f\t%8d\t# %s\n" \
- % (timings.recv,
- timings.decode,
- timings.xmit,
- timings.c_recv,
- timings.c_decode,
+ % (timings.recv - timings.xmit,
+ timings.decode - timings.recv,
+ timings.emit - timings.decode,
+ timings.c_recv - timings.emit,
+ timings.c_decode - timings.c_recv,
timings.len,
timings.tag)
return res
@@ -271,29 +267,28 @@ class splitplot:
set autoscale
set key below
set key title "Filtered latency data, %s, %s, %dN%d, cycle %ds"
-plot \\
- "-" using 0:%d title "D2 = Client decode time" with impulses, \\
- "-" using 0:%d title "T2 = TCP/IP latency" with impulses, \\
- "-" using 0:%d title "E2 = Daemon encode time" with impulses, \\
- "-" using 0:%d title "D1 = Daemon decode time" with impulses, \\
- "-" using 0:%d title "T1 = RS3232 time" with impulses, \\
+plot \
+ "-" using 0:%d title "D2 = Client decode time" with impulses, \
+ "-" using 0:%d title "T2 = TCP/IP latency" with impulses, \
+ "-" using 0:%d title "E2 = Daemon encode time" with impulses, \
+ "-" using 0:%d title "D1 = Daemon decode time" with impulses, \
+ "-" using 0:%d title "T1 = RS3232 time" with impulses, \
'''
sc = len(splitplot.sentences)
fmt = fixed % (title,
session.gps_id, session.baudrate,
session.stopbits, session.cycle,
- sc+6,
sc+5,
sc+4,
sc+3,
sc+2,
sc+1)
for i in range(sc):
- fmt += ' "-" using 0:%d title "%s" with impulses, \\\n' % \
+ fmt += ' "-" using 0:%d title "%s" with impulses,' % \
(i+1, self.sentences[i])
- res = fmt[:-4] + "\n"
+ res = fmt[:-1] + "\n"
res += self.header(session)
- for dummy in range(sc+6):
+ for dummy in range(sc+5):
res += self.data(session) + "e\n"
return res
diff --git a/gpsprof.xml b/gpsprof.xml
index cef7e276..e95f506e 100644
--- a/gpsprof.xml
+++ b/gpsprof.xml
@@ -103,20 +103,11 @@ plain text rather than a gnuplot script.)</para>
<varlistentry>
<term>RS232 time</term>
<listitem>
-<para>Minimum time required to send the sentence from the GPS to
-<application>gpsd</application>. This is computed, not measured,
-and may be an underestimate.</para>
-</listitem>
-</varlistentry>
-<varlistentry>
-<term>Other line latency</term>
-<listitem>
-<para>The transmission latency between the GPS and
-<application>gpsd</application> not accounted for by RS232 time.
-Total line latency (the sum of this bar and RS232 time)
-is measured; it begins with the GPS sentence's timestamp and ends with
-a timestamp that <application>gpsd</application> generates at
-sentence-reading time, before it is decoded.</para>
+<para>Time required to send the sentence from the GPS to
+<application>gpsd</application>. This measured from the time of
+the last zero-length read before the packet to when the packet sniffer
+recognizes a complete sentence, so there is a small aountt of
+computational overhead mixed in.</para>
</listitem>
</varlistentry>
<varlistentry>
@@ -156,12 +147,6 @@ title.</para>
a usage message and exit.</para>
</refsect1>
-<refsect1 id='bugs'><title>BUGS AND LIMITAIONS</title>
-
-<para>Probably overestimates TCP/IP latency somewhat, as that includes the
-Python interpreter's decode time. A C client would be faster.</para>
-
-</refsect1>
<refsect1 id='see_also'><title>SEE ALSO</title>
<para>
<citerefentry><refentrytitle>gpsd</refentrytitle><manvolnum>8</manvolnum></citerefentry>,