<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-04-10 0:33 GMT+03:00 Sergey Safarov <span dir="ltr"><<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div style="font-size:12.8000001907349px">1) Most(if not all) of modern equipment have buffers. TDM cards too. Even $0.25 microcontrollers have buffers.</div><span class=""><div style="font-size:12.8000001907349px">Firing interrupts at each PCM sample not needed.</div><div style="font-size:12.8000001907349px"><br></div></span></div><div>The problem is whether there is or not the buffer. Is exist in all the equipment.<br></div><div><div>The problem is the amount of buffer, and through any time it overflows. I thing you cannot say buffer size has TDM card and USB modems. :o)</div></div></div></blockquote><div> </div><div>According to Digium sources your TDM card have 20ms max buffer size(3ms default)</div><div>USB dongles have at least 20 ms.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div>The above i write results of testing Digium E1 card in virtual environment. Test that is successful on real host, will fail in virtual environment.</div><div>I you see source of timertest utility you will see that Digium test timer for 8000 samples for 1000 ms (1s). (Primary utility author Mark Spencer <<a href="mailto:markster@digium.com" target="_blank">markster@digium.com</a>>)</div><div>It is same value I recommend early.</div></div></div></blockquote><div><div><br></div><div><div><div>But in your case, cyclictest can generate 336000 (42*8000) hardware timer irqs per second VS 8000 from TDM card's.</div></div></div><div><br></div><div>Look:<br></div></div><div><div><div>root@debian:~# vmstat 1</div><div>procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----</div><div> r b swpd free buff cache si so bi bo in cs us sy id wa</div><div> 0 0 0 2348 85428 21156 0 0 134 0 1856 3409 1 2 92 5</div><div> 0 0 0 2320 85428 21156 0 0 0 0 106 224 1 0 99 0</div><div>[similar, skipped]<br></div><div> 0 0 0 2312 85436 21156 0 0 0 0 110 231 0 0 100 0<br></div><div> 0 0 0 2312 85436 21156 0 0 0 0 109 225 0 2 98 0</div><div>45 0 0 1924 84908 21156 0 0 0 0 102909 146412 0 60 39 0</div></div><div>Starting of cyclictest with your parameters ^^^^^.</div><div><br></div><div>102909 interrupts and 146412 context switches per second.</div><div>For one TDM card there should be slightly more then 8000 of interrupts.</div><div><br></div><div>Results:</div><div><br></div><div>root@debian:~/rt-tests# ./cyclictest -t42 -p 80 <b>-d 0</b> -n -i 125 -l 240000 -q<br></div></div><div>WARN: stat /dev/cpu_dma_latency failed: No such file or directory</div><div>T: 0 ( 4028) P:80 I:125 C: 239821 Min: 0 Act:100534 Avg:38764 Max: 229794</div><div>T: 1 ( 4029) P:80 I:125 C: 239820 Min: 0 Act:100536 Avg:39646 Max: 233558</div><div>T: 2 ( 4030) P:80 I:125 C: 240000 Min: 0 Act:100478 Avg:37947 Max: 229143</div><div>T: 3 ( 4031) P:80 I:125 C: 240000 Min: 0 Act:106202 Avg:38130 Max: 239031</div><div>[similar,skipped]<br></div><div>T:38 ( 4066) P:80 I:125 C: 239821 Min: 1 Act:100292 Avg:41273 Max: 238424<br></div><div>T:39 ( 4067) P:80 I:125 C: 239822 Min: 0 Act:100174 Avg:40254 Max: 238881</div><div>T:40 ( 4068) P:80 I:125 C: 239816 Min: 0 Act:100650 Avg:39910 Max: 239104</div><div>T:41 ( 4069) P:80 I:125 C: 239817 Min: 0 Act:100526 Avg:38282 Max: 224452</div><div>root@debian:~/rt-tests#<br></div><div><br></div><div>Increased intervals between threads:</div><div><br></div><div>root@debian:~/rt-tests# ./cyclictest -t42 -p 80 <b>-d 40</b> -n -i 125 -l 240000 -q<br></div><div><div>WARN: stat /dev/cpu_dma_latency failed: No such file or directory</div><div>T: 0 ( 4203) P:80 I:125 C: 240000 Min: 1 Act: 35 Avg: 28 Max: 159</div><div>T: 1 ( 4204) P:80 I:165 C: 181909 Min: 6 Act: 47 Avg: 29 Max: 170</div><div>T: 2 ( 4205) P:80 I:205 C: 146417 Min: 6 Act: 15 Avg: 29 Max: 157</div><div>T: 3 ( 4206) P:80 I:245 C: 122512 Min: 6 Act: 33 Avg: 30 Max: 166</div><div>[similar,skipped]<br></div><div>T:38 ( 4241) P:80 I:1645 C: 18246 Min: 7 Act: 27 Avg: 34 Max: 167<br></div><div>T:39 ( 4242) P:80 I:1685 C: 17813 Min: 8 Act: 13 Avg: 34 Max: 164</div><div>T:40 ( 4243) P:80 I:1725 C: 17398 Min: 7 Act: 22 Avg: 33 Max: 156</div><div>T:41 ( 4244) P:80 I:1765 C: 17004 Min: 8 Act: 49 Avg: 34 Max: 141</div><div><div>root@debian:~/rt-tests#<br></div><div><br></div><div>Huge difference, isn't it?<br></div><div><br></div></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div><div style="font-size:12.8000001907349px">2) If you want massive sync audio processing (w/o buffering) you can use hard realtime OS. PC and Linux (even on bare metal) is not suitable for this, at least without RT patched kernel.</div></div><div> <br></div><div>I am not understanding about you speaking. E1 card can be used on real host without problems.</div></div></div></blockquote><div><br></div><div><div>They use buffering. Delays of 125uS is not uncommon in ordinary Linux kernel. BTW, google "system management interrupt".<br></div></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div>3) <span style="font-size:12.8000001907349px">AFAIR, 1 thread per call leg, but depends of endpoints. Most of time threads in I/O waiting/sleeping and encoding/decoding state.</span></div><div><br></div><div>One thread per FS call, equal one thread cyclictest. In cyclictest most time threads sleep also. This threads measure time interval and sleep again.</div></div></div></blockquote><div><br></div><div>In Freeswitch all of threads are not waking up every 125uS synchronously. .And TDM cards are not generating tens/hundreds of thousands interrupts per second as cyclictest can do.<br></div><div><br></div><div><div>IMO, to simulate something like 1 TDM E1 card using cyclictest you should use parameters that give you additional ~8000 irqs.<br></div><div><br></div><div><div>root@debian:~# vmstat 1</div><div>procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----</div><div> r b swpd free buff cache si so bi bo in cs us sy id wa</div><div> 0 0 0 3496 84304 21156 0 0 45 0 999 562 1 1 97 2</div><div> 0 0 0 3496 84304 21156 0 0 0 0 105 222 0 0 100 0</div><div> 0 0 0 2784 84304 21156 0 0 0 0 4276 8482 2 15 83 0</div><div> 0 0 0 2784 84304 21156 0 0 0 0 8705 17146 2 35 63 0</div><div> 0 0 0 2784 84304 21156 0 0 0 0 8678 17099 3 33 64 0</div><div> 0 0 0 2784 84304 21156 0 0 0 0 8707 17135 2 37 61 0</div></div></div><div><br></div><div>In my case additional 8000 irqs with these parameters:</div><div><br></div><div><div>root@debian:~/rt-tests# ./cyclictest -t 30 -p 80 -d 30 -n -i 3000 -l 24000 -q</div><div>WARN: stat /dev/cpu_dma_latency failed: No such file or directory</div><div>T: 0 ( 5862) P:80 I:3000 C: 24000 Min: 7 Act: 9 Avg: 9 Max: 33</div><div>T: 1 ( 5863) P:80 I:3030 C: 23767 Min: 6 Act: 17 Avg: 8 Max: 49</div><div>T: 2 ( 5864) P:80 I:3060 C: 23534 Min: 6 Act: 12 Avg: 8 Max: 45</div><div>[same,skipped]</div><div>T:26 ( 5888) P:80 I:3780 C: 19051 Min: 7 Act: 8 Avg: 9 Max: 35<br></div><div>T:27 ( 5889) P:80 I:3810 C: 18901 Min: 7 Act: 11 Avg: 8 Max: 40</div><div>T:28 ( 5890) P:80 I:3840 C: 18754 Min: 7 Act: 14 Avg: 8 Max: 39</div><div>T:29 ( 5891) P:80 I:3870 C: 18608 Min: 7 Act: 14 Avg: 8 Max: 36</div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px"></span></div><div style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">6) In your case, most capable realtime hypervisor with RT_PREEMPT guest would be one of the best solution.</span><br></div><span style="font-size:12.8000001907349px"><font color="#888888"></font></span><div><br></div><div>May be. According this publication (<a href="http://www.linux-kvm.org/wiki/images/0/03/KVM-Forum-2011-RT-KVM.pdf" target="_blank">http://www.linux-kvm.org/wiki/images/0/03/KVM-Forum-2011-RT-KVM.pdf</a>) guest threads can be interrupted not more 112 uS.</div></div><div><br></div><div>Simple solution - for TDM card enough ordinary processor without virtualization. :o)</div></div></div></blockquote><div><br></div><div>This is a best solution.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class=""><div class="h5"><div class="gmail_extra"><div class="gmail_quote">On Thu, Apr 9, 2015 at 8:09 PM, Dmitry Lysenko <span dir="ltr"><<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>2015-04-08 15:25 GMT+03:00 Sergey Safarov <span dir="ltr"><<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div style="font-size:12.8000001907349px">1) 125uS is the interval between FrameSync of ONE(!) PCM sample at 8000hz,</div><span><div style="font-size:12.8000001907349px">But here we are talking about packet telephony where commonly used frame length is 20000 uS.</div><div style="font-size:12.8000001907349px">So, intervals for testing should be 5000-10000-20000uS, not 125uS.</div></span></div><div style="font-size:12.8000001907349px"><br></div><div>Not all FS installation has SIP endpoint. Some can have TDM cards, USB dongle and other analog equipment. Can you say what is length of this frame type?</div><div>I am wondering about this question. I know that the frame 125ms is enough.</div></div></blockquote></span><div><div><br></div><div>Most(if not all) of modern equipment have buffers. TDM cards too. Even $0.25 microcontrollers have buffers.</div><div>Firing interrupts at each PCM sample not needed.</div><div>If you want massive sync audio processing (w/o buffering) you can use hard realtime OS. PC and Linux (even on bare metal) is not suitable for this, at least without RT patched kernel.</div></div><span><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div style="font-size:12.8000001907349px">2) Why you decided that all of 42 threads should wake up simultaneously?</div><span><div style="font-size:12.8000001907349px">That totally impossible in real world applications.</div><div style="font-size:12.8000001907349px">Here should be tens of uS. Dependent of network card and, possibly, other I/O hardware.</div><div><br></div></span><div>Can you say how many FS create threads for 40-50 active calls?</div></div></div></blockquote><div><br></div></span><div><div><br></div><div>AFAIR, 1 thread per call leg, but depends of endpoints. Most of time threads in I/O waiting/sleeping and encoding/decoding state.</div></div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div>3) -q switch is missing</div><div>I am thinking it is optional. Result is same</div></div></div></blockquote><div> </div></span><div>Dynamic output to screen consumes resources. How much, depends on method.(VGA, Serial console, SSH). In my case difference is significiant. So, fair testing should exclude such things, IMO.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div>4) <span style="font-size:12.8000001907349px">Precise time measurement and realtime processing in VM environment is a challenge. </span></div><span><div style="font-size:12.8000001907349px">To obtain acceptable results fine tuning of host's and guest's required.</div><div style="font-size:12.8000001907349px">WIthout that this numbers ... does not mean anything.</div><div><br></div></span><div>Can you learn me how to correctly measure timer source quality in VM?</div></div></div></blockquote><div> </div></span><div>Serious players, as Wind River, use external timer.</div><div><br></div><div>In your case, most capable realtime hypervisor with RT_PREEMPT guest would be one of the best solution.<span><font color="#888888"><br></font></span></div><span><font color="#888888"><div><br></div><div>Dmitry.</div></font></span><div><div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div><div class="gmail_extra"><div class="gmail_quote">On Wed, Apr 8, 2015 at 2:07 PM, Dmitry Lysenko <span dir="ltr"><<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-04-07 10:48 GMT+03:00 Sergey Safarov <span dir="ltr"><<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><span><div>...</div></span><span><div>2) i 125 - time us between software timer interrupts for first thread. It time is equal time between samples rate in PSTN networks</div><div><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:medium">In order to maintain our sampling rate we have 125 microseconds (uS) between consecutive samples (1/8,000Hz), which is more</span></div></span></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:medium">...</span></div></div></blockquote><div><br></div><div>125uS is the interval between FrameSync of ONE(!) PCM sample at 8000hz,</div><div>But here we are talking about packet telephony where commonly used frame length is 20000 uS.</div><div>So, intervals for testing should be 5000-10000-20000uS, not 125uS.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div>3) d 0 - this switch will make time between software timer interrupts for second and following threads is equal timer value for first thread</div></div></blockquote><div><br></div></span><div>Why you decided that all of 42 threads should wake up simultaneously?</div><div>That totally impossible in real world applications.</div><div>Here should be tens of uS. Dependent of network card and, possibly, other I/O hardware. </div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div></div><div>4) l 240000 - how many timer test must be made. It is adjusted for 30 s overall test</div><div>5) n - use clock_nanosleep. it is allow take more accurate timer test values on my VM<br></div><div>6) p 80 - it is copied from example on Cyclictest page</div></div></blockquote><div><br></div></span><div>-q switch is missing.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><span><div>And how in your opinion this numbers are related to Freeswitch in VM environment?<br></div></span><div>Relation between Cyclictest switches and FS described above.</div><div>Relation betwen Cyclictest results and FS simple</div></div></blockquote><div><br></div></span><div>Precise time measurement and realtime processing in VM environment is a challenge. </div><div>To obtain acceptable results fine tuning of host's and guest's required.</div><div>WIthout that this numbers ... does not mean anything.</div><div><div><div> <br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div><div class="gmail_extra"><div class="gmail_quote">On Tue, Apr 7, 2015 at 5:38 AM, Dmitry Lysenko <span dir="ltr"><<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Sergey,<div><div>Why you suggest to use exactly this numbers in cyclictest's switches?</div><div>And how in your opinion this numbers are related to Freeswitch in VM environment?</div><div><br></div><div>P.S. <a href="https://mindlinux.wordpress.com/2013/10/25/using-and-understanding-the-real-time-cyclictest-benchmark-frank-rowand-sony/" target="_blank">https://mindlinux.wordpress.com/2013/10/25/using-and-understanding-the-real-time-cyclictest-benchmark-frank-rowand-sony/</a><br></div></div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">2015-04-06 15:27 GMT+03:00 Sergey Safarov <span dir="ltr"><<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Errol can you test VM timer with utility <a href="https://rt.wiki.kernel.org/index.php/Cyclictest" target="_blank">https://rt.wiki.kernel.org/index.php/Cyclictest</a><br><div><br></div><div>My VM currently have folowing results</div><div><pre>[root@fs1 ~]# date && /tmp/rt-tests/cyclictest -t42 -p 80 -d 0 -n -i 125 -l 240000 && date
Sun Apr 5 07:01:31 GMT 2015
# /dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 2.38 0.93 0.50 1/194 1574
T: 0 ( 1531) P:80 I:125 C: 240000 Min: 2 Act: 12 Avg: 16 Max: 1302
T: 1 ( 1532) P:80 I:125 C: 240000 Min: 2 Act: 15 Avg: 14 Max: 2895
T: 2 ( 1533) P:80 I:125 C: 240000 Min: 3 Act: 10 Avg: 12 Max: 2888
T: 3 ( 1534) P:80 I:125 C: 240000 Min: 1 Act: 16 Avg: 13 Max: 1333
T: 4 ( 1535) P:80 I:125 C: 240000 Min: 2 Act: 20 Avg: 14 Max: 2962
T: 5 ( 1536) P:80 I:125 C: 240000 Min: 1 Act: 12 Avg: 14 Max: 2946
T: 6 ( 1537) P:80 I:125 C: 240000 Min: 2 Act: 10 Avg: 13 Max: 1363
T: 7 ( 1538) P:80 I:125 C: 240000 Min: 2 Act: 12 Avg: 13 Max: 1344
T: 8 ( 1539) P:80 I:125 C: 240000 Min: 3 Act: 12 Avg: 16 Max: 1408
T: 9 ( 1540) P:80 I:125 C: 240000 Min: 1 Act: 8 Avg: 13 Max: 2882
T:10 ( 1541) P:80 I:125 C: 239974 Min: 2 Act: 12 Avg: 13 Max: 2908</pre></div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 6, 2015 at 11:15 AM, Errol Samuels <span dir="ltr"><<a href="mailto:ewsamuels@gmail.com" target="_blank">ewsamuels@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div>Good job and Thanks for sharing!<br></div><div><br><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex" class="gmail_quote">KVM at <span><a href="http://digitalocean.com" target="_blank">digitalocean.com</a></span>, Debian 7 64bit, FreeSWITCH 1.4.15: <span style="color:rgb(255,0,0)">bad precision</span></blockquote><div> </div></div>As someone who has been using KVM for a few years and has just migrated about 20 VMs across to Digital Ocean about 6 weeks ago I admit I am a little concerned about this finding.<br><br></div>Just out of curiosity can you tell me the specs of the VM that you tested with and which DO Datacenter? I am using NYC3 so perhaps and I will do some tests as soon as I have some time.<br><br></div>With regards to Xen was this at Linode or inhouse?<br><br><div>Thanks<span><font color="#888888"><br><br></font></span></div><span><font color="#888888"><div>Errol<br><br></div><div><br></div></font></span></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 5, 2015 at 1:37 AM, Stanislav Sinyagin <span dir="ltr"><<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">here we go:<br>
<a href="https://txlab.wordpress.com/2015/04/05/testing-rtp-clock-precision-on-a-virtual-machine/" target="_blank">https://txlab.wordpress.com/2015/04/05/testing-rtp-clock-precision-on-a-virtual-machine/</a><br>
<div><div><br>
<br>
<br>
On Sat, Apr 4, 2015 at 4:26 PM, Stanislav Sinyagin <<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>> wrote:<br>
> On Sat, Apr 4, 2015 at 1:03 PM, Regis M <<a href="mailto:regis.freeswitch.org@tornad.net" target="_blank">regis.freeswitch.org@tornad.net</a>> wrote:<br>
>> How do you check wavs together in audacity ?<br>
><br>
> you just open two WAV files, align their starting position, and<br>
> visually check the waves. If there's a problem, you would see that<br>
> after few seconds, the waves are not aligned any more.<br>
><br>
>> Can you send me 2 samples wav (send... and recorded) so I could see the 20ms<br>
>> diff that you exposed...<br>
>><br>
>> Is there a way to automate the result checking, so it could help to monitor<br>
>> itsp quality<br>
><br>
> Here<br>
> <a href="https://github.com/openpreserve/scape-xcorrsound/issues/17" target="_blank">https://github.com/openpreserve/scape-xcorrsound/issues/17</a><br>
> this is a link to a tool which compares two sound files at the wave<br>
> level. You can also see the sound samples in the ticket.<br>
> The problem is, that currently this tool does not detect such slipping frames.<br>
><br>
> I will also write a detailed article with examples, during the weekend.<br>
><br>
><br>
><br>
><br>
><br>
>><br>
>><br>
>> 2015-04-04 12:53 GMT+02:00 Stanislav Sinyagin <<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>>:<br>
>>><br>
>>> Important is to send the media through two independent carriers - then you<br>
>>> can be sure that your clock is compared against a high quality one.<br>
>>><br>
>>> On Apr 4, 2015 12:46 PM, "Regis M" <<a href="mailto:regis.freeswitch.org@tornad.net" target="_blank">regis.freeswitch.org@tornad.net</a>><br>
>>> wrote:<br>
>>>><br>
>>>> Hi,<br>
>>>><br>
>>>> It's a very interresting test and conclusion.<br>
>>>><br>
>>>> I will try to build a similar environnement on my freeswitch to check<br>
>>>> some system :)<br>
>>>><br>
>>>> thanks<br>
>>>><br>
>>>><br>
>>>><br>
>>>> 2015-04-04 2:16 GMT+02:00 Stanislav Sinyagin <<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>>:<br>
>>>>><br>
>>>>> hi,<br>
>>>>><br>
>>>>> Here are some test results which might be interesting:<br>
>>>>><br>
>>>>> I've set up a test FreeSWITCH server at digitalocean (they use KVM),<br>
>>>>> and originated test calls to some ITSP accounts. Each call played a<br>
>>>>> test sound file (voice samples from ITU:<br>
>>>>> <a href="http://www.itu.int/net/itu-t/sigdb/genaudio/AudioForm-g.aspx?val=1000050" target="_blank">http://www.itu.int/net/itu-t/sigdb/genaudio/AudioForm-g.aspx?val=1000050</a><br>
>>>>> ), and on the receiving end another FreeSWITCH server was recording<br>
>>>>> the received session. The receiving server was on a XEN VM. Both<br>
>>>>> servers talked G711 to their corresponding ITSP accounts.<br>
>>>>><br>
>>>>> Then I compared the source audio and received audio in Audacity editor.<br>
>>>>><br>
>>>>> The tests showed that the received voice wave shifts 20ms from the<br>
>>>>> original sound every few seconds, randomly back and forward. This<br>
>>>>> skewing was always present, regardless of ITSP and time of day.<br>
>>>>><br>
>>>>> Then I moved the sending server to a XEN VM, and the waves appeared<br>
>>>>> almost perfectly synchronized (there was a 5ms skew in one test, and I<br>
>>>>> guess it's related to transcoding buffer, as the sound was obviously<br>
>>>>> transcoded).<br>
>>>>><br>
>>>>> The effect was always visible with a 30-second sample, and I also made<br>
>>>>> additional tests with 2-minute samples.<br>
>>>>><br>
>>>>> It would also be interesting to test this from a VmWare VM. If someone<br>
>>>>> wants to run such a test, feel free to contact me directly.<br>
>>>>><br>
>>>>><br>
>>>>> cheers,<br>
>>>>> stan<br>
>>>>><br>
>>>>><br>
>>>>> _________________________________________________________________________<br>
>>>>> Professional FreeSWITCH Consulting Services:<br>
>>>>> <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
>>>>> <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
>>>>><br>
>>>>> Official FreeSWITCH Sites<br>
>>>>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>>>>> <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
>>>>> <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
>>>>><br>
>>>>> FreeSWITCH-users mailing list<br>
>>>>> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
>>>>> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>>>>> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>>>>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>>>><br>
>>>><br>
>>>><br>
>>>> _________________________________________________________________________<br>
>>>> Professional FreeSWITCH Consulting Services:<br>
>>>> <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
>>>> <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
>>>><br>
>>>> Official FreeSWITCH Sites<br>
>>>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>>>> <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
>>>> <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
>>>><br>
>>>> FreeSWITCH-users mailing list<br>
>>>> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
>>>> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>>>> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>>>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>>><br>
>>><br>
>>> _________________________________________________________________________<br>
>>> Professional FreeSWITCH Consulting Services:<br>
>>> <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
>>> <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
>>><br>
>>> Official FreeSWITCH Sites<br>
>>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>>> <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
>>> <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
>>><br>
>>> FreeSWITCH-users mailing list<br>
>>> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
>>> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>>> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>><br>
>><br>
>><br>
>> _________________________________________________________________________<br>
>> Professional FreeSWITCH Consulting Services:<br>
>> <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
>> <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
>><br>
>> Official FreeSWITCH Sites<br>
>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
>> <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
>><br>
>> FreeSWITCH-users mailing list<br>
>> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br>
_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</div></div></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div></div></div><br></div></div>
<br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div></div></div><br></div></div>
<br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div></div>