Hi All, On Sun, 20 Nov 2011 21:33:28 -0500 "William H. Fite" <omni...@gmail.com> wrote: > Nonetheless, what is evolving is the shared understanding that in order to > extract all the delicious juices from the SDR-fruit, one probably needs to > devote a powerful machine to that purpose. . . . > On Sun, Nov 20, 2011 at 8:30 PM, Brett Gazdzinski < > brett.gazdzin...@verizon.net> wrote: > > > Well, what is the bottleneck/source of trouble? > > Slow cpu's? > > The ever changing operating system? > > The firewire/usb interface? > > > > It seems to me the weakest point most mentioned is latency on cw. > > Where does that come from?
Good question:-) I spent some time to investigate that. Limited of course by the hardware at hand. There have been many postings on this thread, but not many numbers. In my experience we need a latency that is no more than 50 ms to operate normal hand-keyed CW. That would be the time from key-press until we hear our own signal in the RX. If we want to operate QSK (which is really advantageous) the time is the sum of key-down to tx output plus antenna input to loudspeaker output. Are there other opinions? What is normal for Flex users today? With what kind of computers is it necessary to set more than minimum size for ASIO buffers. (With MME drivers fast response is impossible) I have made tests on a fast computer: 2*Xeon with 8 CPU cores. A 650 MHz Pentium 3 behaves a little different, but it allows a time of 55 ms from antenna to loudspeaker under Windows XP while Windows 7 does not work at all on the old computer. The reason is probably the audiodg.exe bug. (I do not want to pay a licence to be able to check whether Windows update has fixed the bug.) Under Linux with X11 only the very latest kernels allow 40 ms from antenna to loudspeaker on the old single core computer. (with svgalib it has been fast for many years.) I have tested the different parts of the delay with Linrad, and I have also tested PowerSDR on the fast computer. The delay I find with PowerSDR is what should be expexted. The delay depends on the ASIO buffer size and on the DSP buffer size. With both set to minimum the delay from antenna input to loudspeaker output is 13 milliseconds. Perfectly stable with no glitches regardless of what other programs I run simultaneously. Admittedly I have only "nice" softwares in the computer. Internet Explorer, Acrobat Reader, Notepad and a few others. None of them affects DPC latency regardless how heavy I use them to write to the hard disk. More details are at the bottom of this page: sm5bsz.com/lir/rxdel/3-26sdr/sdr.htm Linrad does not use isosynchronous transfer to/from the soundcard(s) but that does not affect the timing, it just makes the code more complicated. The above page shows the difference in filter performance in Linrad when the DSP buffers are set for 8 ms and for 30 ms delay from antenna to loudspeaker. The total delay is the sum of the sound system input delay, the processing delay and the sound system output delay. In PSDR input and output use the same buffer size for input and output with a common interrupt routine (as far as I have understood.) In Linrad input and output are separate. The input is studied here: sm5bsz.com/lir/rxdel/3-26in/rxin.htm As it turns out, only the Delta44 and the Lynx Two allow really small latency on the input side. Win 7 is better than XP with the motherboard HDA Intel because under XP there is only a MME driver while there is a WASAPI driver for Windows 7. I do not have a good selection of modern soundcards, but I think the investigation shows pretty clearly that choosing a suitable soundcard is critical. The availability of good drive routines is the culpit. Good for low latency that is:-) ASIO only allows one driver so it is not possible to open input and output simultaneously with ASIO in Linrad. It is important to use ASIO for output, less so for the input. Having different drivers works fine in XP, but not with Vista or Windows 7. As far as I can see the isosynchronous IO with ASIO works correctly with the Delta44 in PSDR under Vista and Win 7. The MME driver is OK for XP only however. The output side is more complicated: sm5bsz.com/lir/rxdel/3-26out/rxout.htm Some cards with ASIO, WASAPI or WDM-KS drivers are fast, but the presence of those drivers does not necessarily mean that the card is fast. There is a program dpclat.exe (free to download) by which one can study DPC latency problems. The only "program" that I can run to affect the latency significantly is a function button on my laptop. I do not know what the button is intended to do, maybe switch to an external screen, but when I press it, the screen goes black for perhaps 0.1 s and then all is normal. The event will however cause a DPC latency of 30 ms and cause problems for all fast SDR softwares. I would be interested to know if there is some software that I can download and install and that would cause DPC latency problems in a nice repeatable fashion. I would like to verify that error messages are properly generated. Also try to avoid problems by changing priorities etc. Anyway, conclusions: Todays computers have the CPU power needed for really small latency. PSDR seems to use it well. Choosing a good soundcard may however be critical. Modern Windows is faster than older versions if you find a soundcard with proper drive routines for Windows 7. (I do not know if Windows 8 differs. It refuses to install on my computer.) I think we need better software rather than better hardware. If the soundcard adds a 30 ms buffer for its special effects and does not allow us to turn that feature off, we need a better driver (for our purposes.) More and faster CPUs would not help at all. Is there anyone who can report problems when using a Delta 44 with ASIO drivers and ASIO buffers with 64 samples on Pentium 4 or better? I know some softwares have been reported to cause problems. I think a compilation of offensive softwares would be of great interest. What programs cause problems and how large buffers would they require on different PC generations? Would it help to run such programs at reduced priority? The problem is software. We can make the delay somewhat smaller with faster hardware, but really silly softwares (from an SDR point of view) can not be fixed with better and faster faster processors. We will have to run those in another computer or perhaps have another virtual Windows installation for them. 73 Leif / SM5BSZ _______________________________________________ FlexRadio Systems Mailing List FlexRadio@flex-radio.biz http://mail.flex-radio.biz/mailman/listinfo/flexradio_flex-radio.biz Archives: http://www.mail-archive.com/flexradio%40flex-radio.biz/ Knowledge Base: http://kc.flexradio.com/ Homepage: http://www.flexradio.com/