Hello,

Pull request 61 against the upstream wsjtx master 3.0.2 remains available,
but it does not contain the improvements listed below.

https://github.com/WSJTX/wsjtx/pull/61


This pull request contains the updated inhibit function, built against
V3.2.0-rc1

https://github.com/wa1hco/wsjtx-inhibit/pull/5


If a 3.2 branch becomes available, see issue 89
<https://github.com/WSJTX/wsjtx/issues/89>, I can link the PR to that.

The changes in this PR mostly focus on faster inhibit activation.

   - A UDP-dispatch thread reads all UDP datagrams and acts on the inhibit
      datagram without waiting for the GUI thread
      - do_ptt() is provided as alternative to Hamlib rig_set_ptt() which
      avoids inhibit waiting for CAT messages
      - Faster handling when PTT is connected to a port other than the CAT
      port
      - UDP-dispatch thread requests high priority but falls back to normal
      priority if it is not granted.

Initial tests of timing for rc1 used a rather old I5-6700 running a wsjtx
re-build while running repeated inhibit cycles.  It showed that of 422
transmit inhibits, the 99th percentile was 76 ms and the maximum was 98 ms.
Six holds exceeded 30 ms. That's not acceptable.  A fast PC performed
better, but heavy CPU activity and heavy CAT activity created long inhibit
delays.

The timing improvements in this reduced infrequent stalls caused by OS
scheduling on busy PCs and stalls due to bursts of CAT message activity,
such as during a "fake it" frequency change. Testing with various Windows
and Linux PCs reduced the maximum delay during a test run of 10000 inhibits
to less than 4 msec.

jeff, wa1hco
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel

Reply via email to