PDA

View Full Version : MOTU 24I/O SAC Latency Measured!



Nathan P
01-05-2016, 09:02 AM
Yesterday I finally actually tested the Latency of my SAC system. I wanted to know for sure the amount of time it takes from when the analog signal hits the AD to when the DA sends it back through the output. Here is what I find:


44.1K, Buffer Size: 32, Preload Buffers: 1 = 4.47ms.



(Each time I increased the Preload Buffer by one it has a result of an increased delay of: .77ms ea. time.) That value is exactly the buffer size divided by the sample rate: 32 / 44,100.



44.1K, Buffer Size: 64, Preload Buffers: 1 = 6.67ms.



(Each time I increased the Preload Buffer by one it has a result of an increased delay of: 1.45ms ea. time.) That value is exactly the buffer size divided by the sample rate: 64 / 44,100.





48K, Buffer Size: 32, Preload Buffers: 1 = 4.10ms.



(Each time I increased the Preload Buffer by one it has a result of an increased delay of: .67ms ea. time.) That value is exactly the buffer size divided by the sample rate: 32 / 48,000.



48K, Buffer Size: 64, Preload Buffers: 1 = 6.67ms.



(Each time I increased the Preload Buffer by one it has a result of an increased delay of: 1.33ms ea. time.) That value is exactly the buffer size divided by the sample rate: 64 / 48,000.



How did I come up with these measurements? I played a recording of a spoon hitting a table into the Motu, routed that input back out a SAC output, connected the output to a 2nd Motu input, then recorded both the original & the now delayed output from SAC side by side in a DAW, took the # of samples between the beginning of each wave & divided it by the sample rate (44,100 or 48,000).


This proved my suspicions that the Input & Output latency listed in some of my DAWs (Cubase) do not add up to the total system latency. It also let me know exactly what to expect from the changes to the Preload Buffer values. Before I did not know how that worked. Now I know exactly how much latency is in the system & what the results will be when if I start changing the various buffer values around.


The SAC system used here was made up of:


E8400 Core2Duo processor
G41MX-F FoxConn motherboard
4 GB of Ram
MOTU 24I/O core system running on a PCI-424 card
XP Pro 32 bit OS, SAC 4.1, (Force Single CPU & Force RealTime Priority Class)

(I'll also quickly mention some interesting lessons I've learned on this particular system in the last couple days. I have one other test to finish my conclusions. Thus far, I can say this system has more slipped buffers running Windows 7 Pro 64, or Windows 10 Pro 64 so I went back to the old XP 32 bit. I don't have a copy of XP 64 bit otherwise I could test & see if it was the 64 bit OSs or Windows 7 & 10 (Dual CPU & Force RealTime Priority Class) at their best that could not stabilize as well as the old XP 32 bit single CPU. I hope to post on this later in another thread, but time will tell if I do or not. This OS debate for me came up because I bought a new SSD & a Windows 7 64 OS thinking I'd maximize the performance of other 64 bit applications when not in use as a SAC system. As I'm learning, that new OS is only hurting my SAC system on this hardware setup. The only test left is to retest the performance now that I have installed XP Pro 32 bit on my SSD drive. All my superior XP 32 results were using my older 7,200 RPM drives. So to be fair I need to run the XP 32 on the new SSD to eliminate that variable. What a pain... to Install, Upgrade, Format re-Intall OS & software, etc.)

Mattseymour
01-05-2016, 01:20 PM
To save your furniture and cutlery in future, centrance have made a asio latency check utility available. Create an analogue loopback and it sends a short pulse round to measure the real world analogue to analogue latency. Of course it will work with digital connections as well, should that matter to you.

Sub 5ms figures are pretty good. I used to reckon on an average 1.5ms each conversion before drivers, PC hardware and buffers come in to play. That's still the case for lots of kit. For example the Presonus ai mixers have a 3ms latency in to out. Behringer have done rather better using the cirrus logic converters. The x32 is something like .8ms (think that's each way). So there's lower latency if you use ada8200 than almost any other preamp/converter. That's just a comment, not a recommendation.

Bob L
01-05-2016, 08:40 PM
To help with slipped buffers in Win 7, 8 and 10, try using the SAC options of Realtime priority, Single CPU and/or CPU Blocking if its SAC 4.1.

Bob L

Nathan P
01-05-2016, 09:31 PM
Thanks Bob!

Another thing I've noticed is that when I do force my 32 bit XP to Single CPU & I go into Task Manager & switch it from the first CPU 0 to the 2nd CPU I can load SAC a little heavier than the other one since the first CPU 0 usually seems to have more stuff assigned to it. It would be nice if I knew an easy way to to have SAC open up by default to the CPU1 rather then CPU 0 every time.

I did try all of those in every configuration I could think of. This particular hardware the Windows 7 64 bit & Windows 10 64 bit at 32 x 1 & 64 x 1 were significantlly closer to sounding stable keeping the Single CPU option Off & Realtime Priority Class On. I could not get the previous performance I had on the XP 32 bit machines once I tried the Windows 7 & 10 64 bit. (I have 3 very similar systems with the e6850 & e8400 processors I've tried with SAC. Both of 2 of them both were less stable on the 64 bit OS on both the 7,200 RPM & SSD hard drives.)

TomyN
01-06-2016, 01:03 AM
Hi,

well, that is interessting. I experienced that the other way round. I was able to get my system (motu 424 based) to stable 32/1 with 8.1, something I did not archive with xp. No changes to the hardware.
One strange thing I've noticed was that SAC performs worse when started automaticly by the system during start -up. After exit and restart it worked fine. So I've created a small batch file which starts SAC, and start the batch file. SAC is that to comatibility xp - II

Tomy

Angie
01-06-2016, 08:08 AM
It would be nice if I knew an easy way to to have SAC open up by default to the CPU1 rather then CPU 0 every time.


This post may help.
http://www.sawstudiouser.com/forums/showpost.php?p=195360&postcount=1

hkmorgan87
01-07-2016, 07:43 PM
If you opt to go back to Windows 7 or newer, you can set processor affinity via the target line on the shortcut.

Nathan P
01-08-2016, 08:05 PM
If you opt to go back to Windows 7 or newer, you can set processor affinity via the target line on the shortcut.

I've seen instructions for that once before, but I never could get it to actually execute as I wanted it to. Do you know a good source for those instructions? (If not, I think I'll be OK without.)

Somewhere along the way I also moved my PCI-424 card to slot 1 one on one of my machines, but somewhere along the line something changed & I've had a much stabler SAC system on both of my machines. I was actually able to load both of the systems to 99% & 48 channels with everything on & being process on every FOH channel. Feeling pretty good about things I decided to give Window 7 64bit Pro one more go. It still still struggling with 24 channels at 60-65%. Shut it down reconnected the old XP 32 hard drive & it instantly was back to running 48 channels up to 99% at 32 x 1.

If any other SAC users still use the old Core2Duo processors, like e8400 & e6850, but with 64 bit OS, I'd be curious about what worked for them. If my system under XP could suddenly start performing exceptionally well, it could be possible I've missed something in the 64bit setup. (I believe I left a copy of 7 64bit installed on what I intended to make my system backup drive with SAC installed & ready to go in case I have a second Hard Drive fail on one of My SAC systems.)

hkmorgan87
01-09-2016, 08:43 PM
I've seen instructions for that once before, but I never could get it to actually execute as I wanted it to. Do you know a good source for those instructions? (If not, I think I'll be OK without.)



http://www.howtogeek.com/howto/windows-vista/start-an-application-assigned-to-a-specific-cpu-in-windows-vista/

I have never attempted to actually set affinity using this method but it seems simple enough.

I am currently using an I3-560 with an H55 chipset, running XP SP2 64bit and it's been running nearly flawlessly for 5 years. But I only hit around 30% on the SAC metering and around 15% on the CPU. I am using a Raydat.

I've been tempted for years to upgrade to Win 7 for the TRIM support since Crucial doesn't have a TRIM utility for XP