Topic: What is the trick to get the lowest latency with a babyface?

I have a pretty powerful modern computer (i7, 20 GB RAM, win 7 x64 on SSD, audio on external HDD). I'm running a project in Live with 60 tracks and its already choking unless I set my RME buffers to 512 samples. There are maybe 5 VSTs in my entire project, so this kind of stuttering is pretty bad.

What's the magic solution to get 128 samples under such config?

Or can you join the babyface with a HDSP card and get the latency of the HDSP?

2 (edited by ramses 2015-11-27 08:52:26)

Re: What is the trick to get the lowest latency with a babyface?

What external Harddisk do you use ? Model ? 5400 U/min or 7200 ?
Is it connected via USB (v1, v2, v3 ?) or Firewire ?

Test, whether it makes a difference if you move the project to the SSD.
I would guess that the limitation comes from the external Harddisk.
I would advice you as general idea to use a performant 7200U/min internal HDD or even SSD
for your projects and to use external Harddisks only for backups.

Sure, you could use an RME RayDAT and connect the Babyface via ADAT. Then you can map the analog inputs and outputs through the 8 ADAT channels @44.1. I do this also between RayDAT and UFX/OctrPre. But I am not sure, whether this solves the issue for you. I would more expect, that the external Harddrive is not quick enough delivering Audio Data and USB is not so efficient to transfer audio streams.

In regards to Windows tuning .. its always good to have some headroom in terms of latency.
Are you using "high performance" energy model in Windows ?
Is energy saving completely disabled in the BIOS ?  C-States alone can cause ~80 µs more Latency.
Options in the BIOS which cause latency, these are the settings on an older consumer board.
C-States: Disable, C1E: Disable, EIST: Enable, Speedstep: Enable, High Vdroop: Enable, Spread Spectrum: Disable

You could use Parkcontrol utility to disable CPU core parking.
https://bitsum.com/parkcontrol/

Whats does LatencyMon v4.02 tell on an idle systems in terms of kernel timer latency ? Take v4.02 on Win7.
https://dl.dropboxusercontent.com/u/961 … n-4.02.exe
https://dl.dropboxusercontent.com/u/961 … 02.exe.md5
Is it running through 5-10 min without tool reporting issues to stream audio ?
Do you have many spikes of kernel timer Latency on an IDLE system ? Or are values under 50µs ?
On a nicely tuned system you can get values down to 1-2µs, usually between 5-12µs with peaks up to 20-50µs.

You can look at these articles to look whats possible to achieve, if the Mainboard/Chipset/BIOS allows to do and is not somehow broken, as there are mainboards out where you definitively can't reach "best values".
http://www.tonstudio-forum.de/blog/inde … -X10SRi-F/
http://www.tonstudio-forum.de/blog/inde … P55A-GD65/

BTW I recommend the windows tuning as Windows is no real time OS, it gives you more headroom, that the CPU is not blocked by bad settings ("energy saving"), laggy by instantly changing the clock speed which also creates lag and other stuff and has best prerequisites to serve fully the application. As always, disable Hardware in the mainboards BIOS that you do not need. Google the internet there are several articles out there how to additionally remove load from your Windows. In the "Aufgabendienst" (Taskservice?) there are several jobs of microsoft, which are not needed. And with msconfig I would check, to disable certain SW auto update services or not wanted services.

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

Re: What is the trick to get the lowest latency with a babyface?

Thank you so much for the detailed post! My external HDD is "WD My Passport" USB 3.0 - guessing its a 5400 RPM. I'll try moving these projects to the internal HDD and see if that helps. Though when HDD is the problem Ableton shows DISK usage blinking, not just audio crackles. Audio crackles seem to suggest a CPU/latency issue.

I'll get back to you with the details on the rest - thanks a ton for the info. Also on the RayDAT are you suggesting RayDAT (ADAT)->Babyface (ADAT) and Raydat (ADAT2) -> ADA8000?? i'd like to use the BF for main outs for the remote.

Re: What is the trick to get the lowest latency with a babyface?

I only mentioned RayDAT as you did. I am pretty much convinced that it was a bad idea to use an external 5400 U/Min USB disk for the projects. Disk I/O via USB is not so efficient compared to SATA. The RayDAT is no must. It would only be required if you use the Recording Interface in a way that the round trip time between Recording Interface and PC needs to be as small as possible. And it can be an advantage, if for example your mainboards design / chipset is not so good, then a PCIe card might have less problems in terms of audio drops compared to USB/Firewire.

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

5 (edited by sambasevam 2015-11-28 10:26:33)

Re: What is the trick to get the lowest latency with a babyface?

ramses wrote:

I only mentioned RayDAT as you did. I am pretty much convinced that it was a bad idea to use an external 5400 U/Min USB disk for the projects. Disk I/O via USB is not so efficient compared to SATA. The RayDAT is no must. It would only be required if you use the Recording Interface in a way that the round trip time between Recording Interface and PC needs to be as small as possible. And it can be an advantage, if for example your mainboards design / chipset is not so good, then a PCIe card might have less problems in terms of audio drops compared to USB/Firewire.

Well, the good news is I tried the BIOS thing and it seems to have done the thing. Actually the options you mentioned weren't shown in my BIOS but there was a High Performance setting and I turned that on. Additionally I disabled a bunch of unwanted startup programs also. My windows is already configured to be DAW spec, so I didn't have to fool with that.

Now its running fine (barring an occasional click/pop) with 128 samples latency. CPU usage seems reduced but that could be placebo. In either case it is a HUGE improvement over the previous scenario. smile

Also latencyMon shows no problems, but as you described it is far from perfect. If I can tweak this to the level you describe, it'll be a blessing.

http://i.imgur.com/aWLAxvO.jpg


The External USB vs. internal HDD had no measurable impact - when I copied my project to internal SATA HDD the performance/CPU/etc. was the same. So the external could be a 7200. I can afford to run my whole project in RAM, but I doubt if that would have a significant impact.

Anyways, I've ordered a 9652 card while this was going on, so with that it should bring the CPU even lower.

6 (edited by ramses 2015-11-28 13:13:32)

Re: What is the trick to get the lowest latency with a babyface?

Ok from 512 to 128 and occasional clicks is already a nice improvement.
So what BIOS do you have ? I see you have an i7, so you have Intel, and BIOS might be AMI.

From the tables in those articles you can see, that the latency increases, the more you allow the CPU to "go to sleep".
As "waking up" takes time, this increases latency up to
http://www.technikaffe.de/anleitung-32- … g_erklaert
http://www.comptech-info.de/component/c … s-sind-das
You need to find out the submenue in the BIOS, where the energy saving options of the system become set.
There you can usually disable C-States at all. Ok, you consume more energy, but you for recording you want speed and least latency possible.

Usually there is also one option to disable the C1E C-State explicitely, which is enhanced halt for the CPU.

You can experiment whether disabling EIST (P-States) brings even more, because the ability for the CPU to change its clock speed also increases latency. You can further experiment, whether its an additional win to disable TURBO mode which could at the end result in a system, that stays at its base processor clock all the time. YOu loose a little performance but the CPU runs without any additional latency caused by EIST/Turbo Modes.
I finally decided to keep both on as disabling CPU core parking was fine enough. But your mileage may vary.
You need 1st to bring best stability in, then eventually try whether re-enabling smth like EIST, Turbo is still fair enough for your system to get stability at maybe 128 or even lower ASIO buffers.


Also you do not want that the OS parks threads of your CPU cores. Waking up the parked CPUs also takes time.
Software here: https://bitsum.com/parkcontrol/
Here how I changed my power profiles in Windows, see the screenshots.
http://www.tonstudio-forum.de/blog/inde … -X10SRi-F/
If you take the Windows gadgets that I take, then you can control/choose the gadget by a mouse click.
http://orbmu2k.de/sidebar-gadgets/power … bar-gadget
And those are much handy as well, as they are not so bloated/overloaded as most of them:
With this enable in the settings to show physical Memory usage and install the WinRing0 driver.
CPU clock you can enable but compare with CPU-Z, with some chipsets it doesnt shot correct clock
http://orbmu2k.de/sidebar-gadgets/intel … bar-gadget
With this you see GPU stats, enable:  fan speed, GPU load, VPU load, Memoy Load, Show clocks.
http://orbmu2k.de/sidebar-gadgets/gpu-o … bar-gadget
This usually enabled the correct network card, but sometimes you need to choose proper netw. interface.
http://orbmu2k.de/sidebar-gadgets/netwo … bar-gadget

Disable Spread Spectrum, as this constantly changes the systems CPU clock to avoid electrical noise on other electronic components. But TBH .. clock changes are bad, cause latency, and I had never issues with electrical noise, so turn that off ...

If your BIOS allows disabling of T-States do this as well. Like ACPI T-States -> Disable.
I assume you have good cooling ?! and C-, P- and T-States are not required in any way for you ?!
And you dont have a laptop where cooling might become a heat issue ?!

That said, my Xeon CPU runs ar about 44-48 °C. And under load max 68°C or alike ...
With the Gadgets which I showed you, you can see the temperature of the cores.

Another tip .. Get enough DRAM and disable the Page File on Disk. This should save you some more Disk i/o.
Starting with 16GB of DRAM (if you have no big sound libraries) this should be easily doable.

When you look into system settings use the settings for system performance:
"optimized for background services".

Then some additional recommendations.
Remove background programs with msconfig, automatic software updates.
Also Windows updates: only notifications, you control when to download and install them !
Do not use shiney tools of your mainboard manufacturer for BIOS upgrades, blower control and what not.
Disable Windows Sound
In all power profiles disable selective USB energy saving and stop Dia Show for changing background pictures.
Disable auto run
Disable the Windows indexing service.
Take out any not required PCIe card.

Disable some automatic Windows Tasks:
Application Experience: AitAgent+ ProgramDataUpdater
Autocheck: Proxy
Customer Experience Improvement Program: Consolidator, KernelCeipTask, UsbCeip
Defrag: ScheduledDefrag
Diagnosis: DiskDiagnosis
Maintenance: WinSAT
PerfTrack: BackgroundConfigSurveyor
Power Efficiency Diagnostics: AnalyzeSystem
RAC: TacTask
SideShow: Session Agend and SystemDataProviders
TextServicesFramework: MsCtfMonitor
Windows Error Reporting: QueueReporting
WindowsBackup: ConfigNotification

Disable some automatic Windows Services:
Diagnosis Service if you dont need Windows Repair Services
Home Network  Provider and Listener if you do not use Windows 7 Home (not really required)
IP helper service, if you dont use IPV6
Media Center Exterder Service, if you dont use Media Center Expansion devices
Windows Presentation Foundation Font Cache
Windows Defender (assumed you have other Antivirus Sw on your PC)
Windows Live ID Sign-in-Assistent (you dont require Windows Live ?!)
Windows Media Player Network sharing Service
UPnP devices and SSDP search if you dont use UPnP Devices

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

Re: What is the trick to get the lowest latency with a babyface?

I have a Asus P8Z68-V LX Intel Z68 Chipset with UEFI BIOS (EZ mode). I'm going to check out that core parking thing tomorrow, but I'd rather not mess with it tbh - it's not clear whether having them run all the time is a good idea for the CPU and power consumption. Disabling C-states is out of the question for me, considering the unknowns.

I have 20 GB but looking at the bios it looks like it's slotted like 2 - 8 - 2 - 8 GB, so I'm not sure if that plays a role (the 2 GB sticks are different from the 8 gb).

Much of the stuff you've described I've already disabled, but I'll take a closer look. From your setup, would you say that the disabling cpu core parking gave you the biggest benefit? or what is it that made the biggest change?

Also I had avg antivirus but I've uninstalled it fearing a cpu hit.

8 (edited by ramses 2015-11-29 11:18:46)

Re: What is the trick to get the lowest latency with a babyface?

Its safe to disable CPU core parking. Its only an energy management on CPU level. The OS will wake up all CPU cores anyway if the load on a system is high.

The problem is again Latency. Parking a CPU means to put it into C6 State. Waking it up from C6 requires ~300µs according to the figures I gave to you already in 2 of the URLs. And this is a lot.

This Latency causes known issues in the area of gaming (graphic stuttering) and Virtualization.

Its also better to distribute the system load between many cores so that any potential DPC routines do not block audio processes. The fewer cores you have active the higher the chance, that audio driver/processes are on a core which is higher loaded with some other stuff. So this parking idea is shit for audio processing and other things.

It would have been much better, if Microsoft would have introduced an energy profile, which really deliverst as much performance as possible.

http://www.tomshardware.co.uk/forum/id- … -safe.html

If you look closely at my article, then you can control Core parking and System clock by this gadget.
http://www.tonstudio-forum.de/blog/inde … -X10SRi-F/

In High Performance enable everything in terms of CPU and disable change of the system clock. For balanced and power saving you can tweak it as you want, then its a decision by you by only a mouseclick, whether you want performance, without any core parking or energy saving when not recording.

The best tool to make these changes to the registry is this tool here. https://bitsum.com/parkcontrol/
You can use the settings which I choosed, see http://www.tonstudio-forum.de/blog/inde … -X10SRi-F/

BTW Cubase settings for highest performance enables also an energy profile of its own which disables CPU core parking.
See screenshots where to enable and how to validate this.

https://dl.dropboxusercontent.com/u/96192996/RME/forum/steinberg-energy-profile/Cubase-Energy-Profile-High-Performance-No-Core-Parking-1.jpg
https://dl.dropboxusercontent.com/u/96192996/RME/forum/steinberg-energy-profile/Cubase-Energy-Profile-High-Performance-No-Core-Parking-2.jpg
https://dl.dropboxusercontent.com/u/96192996/RME/forum/steinberg-energy-profile/Cubase-Energy-Profile-High-Performance-No-Core-Parking-2b.jpg

And I see it also with my desktop gadget, that the energy profile changes to something different (this tool only knows the famous 3 default from Windows). You see that it then displays no profile after start of Cubase.

https://dl.dropboxusercontent.com/u/96192996/RME/forum/steinberg-energy-profile/Cubase-Energy-Profile-High-Performance-No-Core-Parking-3.jpg

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

Re: What is the trick to get the lowest latency with a babyface?

Ah - I just tried it - i.e. set the option in Cubase, left the cubase app open (otherwise it deletes the profile), and ran the project in Live - the crackles were noticeably worse than before.

The crackles seem better without core parking (i.e. without the cubase setting). Or should I only use Cubase to get the benefit?

10 (edited by ramses 2015-11-29 21:26:52)

Re: What is the trick to get the lowest latency with a babyface?

I wouldn't open 2 DAWs at the same time and call this a valid test scenario wink

> The crackles seem better without core parking (i.e. without the cubase setting).

This sentense makes no sense, as without the cubase checkbox enabled you have core parking active.

Anyway .. disable core parking, its creates additional latency.
You got very complete information now what to do. Take your time, but work on every point. Its like a check list.

Some things have more direct visibility some things less. But at the end the sum of all these optimization will bring more stability, as your pc isn't busy with things that disturb audio streaming/processing.

If you want to have a plan b, shall you screw things up, create a Windows Disk Image.
You can even do this with Windows tools ... -> Create System Image ...

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

Re: What is the trick to get the lowest latency with a babyface?

ramses wrote:

I wouldn't open 2 DAWs at the same time and call this a valid test scenario wink

> The crackles seem better without core parking (i.e. without the cubase setting).

This sentense makes no sense, as without the cubase checkbox enabled you have core parking active.

Anyway .. disable core parking, its creates additional latency.
You got very complete information now what to do. Take your time, but work on every point. Its like a check list.

Some things have more direct visibility some things less. But at the end the sum of all these optimization will bring more stability, as your pc isn't busy with things that disturb audio streaming/processing.

If you want to have a plan b, shall you screw things up, create a Windows Disk Image.
You can even do this with Windows tools ... -> Create System Image ...


Sorry, I meant WITH core parking. i.e. with the checkbox enabled. I'll have to experiment with this more but for the moment I'm happy about getting the system back to a usable state, thanks to your tip on the BIOS settings, amongst others.

12 (edited by ramses 2015-11-30 20:04:20)

Re: What is the trick to get the lowest latency with a babyface?

You go on very reluctantly it seems.  To walk through the checklist shall not take more than 2-4h.
Where is the problem ?

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

Re: What is the trick to get the lowest latency with a babyface?

ramses wrote:

You go on very reluctantly it seems.  To walk through the checklist shall not take more than 2-4h.
Where is the problem ?

I'm pretty cautious about making any kinds of changes in fear of breaking things. For instance, I don't know what change I made these last 3 days now the sleep mode is not waking up. i.e. after I set the computer to sleep I can't wake it up with keyboard/mouse. It used to work perfectly before. Things like this that I make one small tweak and it breaks elsewhere is a complete nightmare for me. :-/

Re: What is the trick to get the lowest latency with a babyface?

I spoke too soon...

Now the same crackles and spikes are back!! It was perfect just a couple days back after the BIOS setting.

What has changed since then:
1). I've installed a 9652 in my computer today (haven't used it yet, still in BF).
2). Removed my wifi PCI card, and Firewire PCI card while doing 1.
3). Put my project in a spare SSD (newly formatted)

That's it. But the crackles/spikes are exactly the same as when the problem originally happened. It's quite perplexing, really. One day its perfect next day its back!

15 (edited by ramses 2015-12-01 08:24:33)

Re: What is the trick to get the lowest latency with a babyface?

You say on one day its good on the other its bad .. is that related to changes that you introduce every day ?
If its good, does it correlate to better LatencyMon values ? In what range are they then (kernel latency timer) ?
If its bad, do you see worse LatencyMon values ?
But please always measure without applications running !! Its all about to see on an IDLE (non busy) system, how much latency there is already at that "quiet" level.

You should have maybe grouped your work into pieces that belong togther.
1. Document BIOS, make pictures of old status, then make changes until LatencyMon kernel latency values on an IDLE system come close to 2 µs and values doesnt show improvements anymore (there are only a few settings which influence this)
2. Backup OS (Disk Image, Data Backup) make changes from checklist, then remeasure with LatencyMon
The values at this point can't be worse as they achieve that you remove load from the system, silly tasks that simply keep the system busy at times where you dont wont it. Then you should have reached baseline for your system, better should not be possible then
3. Then Hardware changes one by one and re-measure on each change
4. If HW introduces Latency issues, try other PCI/PCIe slots. Sometimes depending on the board and PCIe lane distribution etc they influence each other a little. But if you simply remove all cards, then you ought to be back at normal, because without cards there can be no impact on the system. Against this baseline you can measure later when you put the HW back in piece by piece.

Nothing is lost now in my opineon. I would remove all cards in the system, as also the placement of equipment in a PCI/PCIe can have side effects depending on the design of the board. If there are no cards in the PCI/PCIe slots (besides Graphic card), then nothing bad can happen on that side. Then I would consequently on Points 1-4.

One caveat: if I tell backup of system and data I assume you have working backup / restore procedures.
Not that you necessarily need it, its IMHO usual procedure.
For BIOS changes you only need to document the changes, you can go back at any time.
For Windows changes you have the checklist and best practice is to document every step whether you needed to make a change or whether it was already set (i.e. in the area of automatic windows taks, elsewhere).
The only part where you make changes to registry by special tools is in regards to cpu core parking.
But also there make pictures with digital camera how the settings were before, then after.
With that you should at any time be able to revert all changes without requiring any kind of backup.
But I see no point why you shall go back in any way, as these changes are to reduce the kernel latency, which is a basement of having the CPU cores mostly free of doing any tasks that disturb and the CPU frequencies not to change too often up to completely fix at base frequency of the CPU.

After proper tuning of the system (you measured kernel latency of IDLE system during the whole process) you should reach min. values down to 1-2 µs at times, usually around 10 up to 50, but not very high SPIKES. This is where you can't so more on BIOS / system level.

Whats left then are influences of the drivers in your system if you add HW ... maybe unfortune Slot positions for HW influencing each other .. A good strategy is to keep the graphic card in the 1st PCIe slot if you look from CPU. Dont place anything in another PCIe-x16 Slot, as then your graphic card might automatically change to work only in "x8" mode. Not that it has much impact on normal office performance, but I want to simply tell you that.

Then look to place each of the required add-on cards first in the PCIe x1 sockets or eventually into x4 sockets.
If this is a PCI card, then you need to use the PCI sockets, dont remember exactly.

That is then a structured approach of work.

I can't exclude finally that certain drivers have negative impact, but if a driver should introduce latency of the system then you also can use LatencyMon to find out, which drivers cause the highest DPC latency.

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

16 (edited by sambasevam 2015-12-02 04:42:47)

Re: What is the trick to get the lowest latency with a babyface?

First the good news: I tested with the 9652 and it solves the issue - buffer @128 samples, no crackles whatsoever and CPU load reduced by ~10%. It can handle ~120 tracks at 256 samples, no glitch. It even goes till CPU 95% (250 tracks) before it produces a crackle. So, this is great news for me. 128 samples is my target to work comfortably with large projects (100+ tracks) as I don't notice any latency. 256 and above I can definitely feel the lag.

Second, I measured with LatencyMon in IDLE state and the highest measured kernel timer latency is 114 us with average around 60-70. Highest reported ISR time and DPC time is by USBPORT.SYS - USB 1.1-2.0 Port Driver @ 93us and 160 us respectively. I don't have a backup system (its on its way) so before I mess with C-states, I'm going to do a full backup of my computer once the backup system arrives.

Third, when I installed the 9652 I removed the FW card, the WiFi card, so its pretty much just the PCI card and the graphics card now. I played with the babyface buffer settings when it is the adat slave and it seems to have no impact whatosever, so eventually its just going to be a standalone ADAT unit.

Lastly, can't thank you enough for the detailed instructions and patience in helping me out. :-)

17 (edited by ramses 2015-12-02 08:35:38)

Re: What is the trick to get the lowest latency with a babyface?

Congrats so far. In regards to your measurements.

Important are the *lowest* and *usual* measured kernel timer values, how low the lowest values can get and what the usual values are. This you can only observe while looking at the values within lets say 3 minutes.

The peaks that you tell are also nice to know, but .. especially valuable is how low you can get to rate the results of the tuning. Along with that tuning the max values / the "spikes" of course also will go down usually.

When I look at my current values within 3 minutes:
the lowest one I reach is: 1,75 µs
The usual range is: 5-9 µs
The higher values that sometimes arise are in the range: 30-50µs
The peak value is: 79µs

You need to close all applications (Firefox and what not), run the tool, do not move the mouse.

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

18 (edited by horisonten 2015-12-03 10:40:19)

Re: What is the trick to get the lowest latency with a babyface?

Hello Ramses!

You seem to be the one to turn to when it comes to tweaking computers to giving out the maximium juice for the RME Babyface to function at its best.

Could you by any chance help me aswell?

I have just bought the Babyface and tried it. At the moment I'm able to use 256 buffers with occational crackles. But my projects ain't that big atm, so I feel like there should be more to be done since I reckon that my computer specs should be sufficient for the baby to work even better?

I'm on a laptop with the following specs:

Intel Core i5-3210M (Dual core with 4 threads and hyperthreading + turbo boost from 2.5 ghz up to 3.1 ghz)
1 x USB 2.0 port
2 x USB 3.0 ports
1 x USB 3.0 port with eSATA
GeForce GT 650M + Intel Integrated graphics
16 GB RAM 1600MHz
Seagate M750GB (7200rpm) + 512 GB SSD (on which I have my DAW and VST-plugins installed. I even have the project files on the SSD)
Windows 10
My DAW is FL Studio 12

At the moment I have the RME Babyface connected to the single USB 2.0 port, and only with one of the USB-cables connected.
Does it increase performance if I have both connected on the splitted USB-cable that was included?

So far I have updated my graphics card firmware, tried to shut down all unnesesary programs running in the background (the wireless connection, the graphics update-program, my antivirus program etc.)
I have also made so that my USBs to always stay on.
Plus chosen the CPU to use its capacity "on background taskes" in the properties.

Since I'm on a laptop i'm not sure about the BIOS: Is it possible to turn of C-states on a laptop?
Will Core-parking improve performance on a laptop?

19

Re: What is the trick to get the lowest latency with a babyface?

You enabled the Windows power profile 'HighPerformance'?

Regards
Matthias Carstens
RME

Re: What is the trick to get the lowest latency with a babyface?

Hi, and thanks for getting back to me!

Yes I have enabled the high performance power profile.
I forgot to mention that I also have chosen so that the processor always stays on 100% in the "advanced settings" in the profile management.

21 (edited by horisonten 2015-12-03 10:55:59)

Re: What is the trick to get the lowest latency with a babyface?

And I have used the DPC Latency Checker with no "obvious program" running in the background.
I have about 1000µs constantly.

22

Re: What is the trick to get the lowest latency with a babyface?

That program does not work under Windows 8 or 10. Yo have to use the other tool, Latency Monitor.

Regards
Matthias Carstens
RME

23 (edited by horisonten 2015-12-04 08:29:49)

Re: What is the trick to get the lowest latency with a babyface?

Alright, so now I have used the Latency Monitor.
And the figures are far from fine.
The first minute or so it showed all green, except the bottom one. But after 2 minutes the numbers went up...

http://imgur.com/kwGpYjE


And here is the report in text form:

_________________________________________________________________________________________________________
CONCLUSION
_________________________________________________________________________________________________________
Your system seems to be having difficulty handling real-time audio and other tasks. You may experience drop outs, clicks or pops due to buffer underruns. One or more DPC routines that belong to a driver running in your system appear to be executing for too long. One problem may be related to power management, disable CPU throttling settings in Control Panel and BIOS setup. Check for BIOS updates.
LatencyMon has been analyzing your system for  0:08:00  (h:mm:ss) on all processors.


_________________________________________________________________________________________________________
SYSTEM INFORMATION
_________________________________________________________________________________________________________
Computer name:                                        BEAST
OS version:                                           Windows 8 , 6.2, build: 9200 (x64)
Hardware:                                             W150ER                          , CLEVO CO.                       
CPU:                                                  GenuineIntel Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
Logical processors:                                   4
Processor groups:                                     1
RAM:                                                  16274 MB total


_________________________________________________________________________________________________________
CPU SPEED
_________________________________________________________________________________________________________
Reported CPU speed:                                   2494 MHz

Note: reported execution times may be calculated based on a fixed reported CPU speed. Disable variable speed settings like Intel Speed Step and AMD Cool N Quiet in the BIOS setup for more accurate results.


_________________________________________________________________________________________________________
MEASURED INTERRUPT TO USER PROCESS LATENCIES
_________________________________________________________________________________________________________
The interrupt to process latency reflects the measured interval that a usermode process needed to respond to a hardware request from the moment the interrupt service routine started execution. This includes the scheduling and execution of a DPC routine, the signaling of an event and the waking up of a usermode thread from an idle wait state in response to that event.

Highest measured interrupt to process latency (µs):   339,918502
Average measured interrupt to process latency (µs):   5,353798

Highest measured interrupt to DPC latency (µs):       337,455324
Average measured interrupt to DPC latency (µs):       1,100948


_________________________________________________________________________________________________________
REPORTED ISRs
_________________________________________________________________________________________________________
Interrupt service routines are routines installed by the OS and device drivers that execute in response to a hardware interrupt signal.

Highest ISR routine execution time (µs):              81,187650
Driver with highest ISR routine execution time:       ACPI.sys - ACPI-drivrutin för NT, Microsoft Corporation

Highest reported total ISR routine time (%):          0,000743
Driver with highest ISR total time:                   Wdf01000.sys - Kernellägesdrivrutin för Framework Runtime, Microsoft Corporation

Total time spent in ISRs (%)                          0,00170

ISR count (execution time <250 µs):                   6542
ISR count (execution time 250-500 µs):                0
ISR count (execution time 500-999 µs):                0
ISR count (execution time 1000-1999 µs):              0
ISR count (execution time 2000-3999 µs):              0
ISR count (execution time >=4000 µs):                 0


_________________________________________________________________________________________________________
REPORTED DPCs
_________________________________________________________________________________________________________
DPC routines are part of the interrupt servicing dispatch mechanism and disable the possibility for a process to utilize the CPU while it is interrupted until the DPC has finished execution.

Highest DPC routine execution time (µs):              1442,667602
Driver with highest DPC routine execution time:       ACPI.sys - ACPI-drivrutin för NT, Microsoft Corporation

Highest reported total DPC routine time (%):          0,032259
Driver with highest DPC total execution time:         ntoskrnl.exe - NT Kernel & System, Microsoft Corporation

Total time spent in DPCs (%)                          0,123969

DPC count (execution time <250 µs):                   427372
DPC count (execution time 250-500 µs):                0
DPC count (execution time 500-999 µs):                2
DPC count (execution time 1000-1999 µs):              3
DPC count (execution time 2000-3999 µs):              0
DPC count (execution time >=4000 µs):                 0


_________________________________________________________________________________________________________
REPORTED HARD PAGEFAULTS
_________________________________________________________________________________________________________
Hard pagefaults are events that get triggered by making use of virtual memory that is not resident in RAM but backed by a memory mapped file on disk. The process of resolving the hard pagefault requires reading in the memory from disk while the process is interrupted and blocked from execution.

NOTE: some processes were hit by hard pagefaults. If these were programs producing audio, they are likely to interrupt the audio stream resulting in dropouts, clicks and pops. Check the Processes tab to see which programs were hit.

Process with highest pagefault count:                 svchost.exe

Total number of hard pagefaults                       37936
Hard pagefault count of hardest hit process:          28722
Highest hard pagefault resolution time (µs):          1941652,180834
Total time spent in hard pagefaults (%):              2,471991
Number of processes hit:                              20


_________________________________________________________________________________________________________
PER CPU DATA
_________________________________________________________________________________________________________
CPU 0 Interrupt cycle time (s):                       2,277267
CPU 0 ISR highest execution time (µs):                81,187650
CPU 0 ISR total execution time (s):                   0,025770
CPU 0 ISR count:                                      4281
CPU 0 DPC highest execution time (µs):                1442,667602
CPU 0 DPC total execution time (s):                   0,879226
CPU 0 DPC count:                                      237457
_________________________________________________________________________________________________________
CPU 1 Interrupt cycle time (s):                       1,606514
CPU 1 ISR highest execution time (µs):                9,559743
CPU 1 ISR total execution time (s):                   0,006929
CPU 1 ISR count:                                      2259
CPU 1 DPC highest execution time (µs):                99,782277
CPU 1 DPC total execution time (s):                   0,202004
CPU 1 DPC count:                                      24063
_________________________________________________________________________________________________________
CPU 2 Interrupt cycle time (s):                       1,977440
CPU 2 ISR highest execution time (µs):                3,899358
CPU 2 ISR total execution time (s):                   0,000007
CPU 2 ISR count:                                      2
CPU 2 DPC highest execution time (µs):                158,431836
CPU 2 DPC total execution time (s):                   0,697484
CPU 2 DPC count:                                      107687
_________________________________________________________________________________________________________
CPU 3 Interrupt cycle time (s):                       2,020703
CPU 3 ISR highest execution time (µs):                0,0
CPU 3 ISR total execution time (s):                   0,0
CPU 3 ISR count:                                      0
CPU 3 DPC highest execution time (µs):                104,799118
CPU 3 DPC total execution time (s):                   0,605674
CPU 3 DPC count:                                      58170
_________________________________________________________________________________________________________

24 (edited by ramses 2015-12-04 14:25:56)

Re: What is the trick to get the lowest latency with a babyface?

No question ?? Hmm funny.

I see by occasion you have a Laptop ... dont expect to find a way to disable Energy saving settings in Laptop BIOS
and also dont expect the latencies down to 1,5 µs as it is a Laptop, and all chips are designed for low energy consumption. I would more say around 40-50µs is the lowest you can get.

All the rest of performance tuning tips in the thread you can still perform when it makes sense for your setup.

Only with CPU core parking I would be at least "careful" and watch the devices behaviour now under load and latest in the summer, which is a completely different szenario. On the other hand Steinbergs Energy Profile also disables CPU core parking, and I *assume* regardless of whether the device is a desktop or latop.

But actually I am not willed to write more on this topic, as everything has been said from my side !

If you have a little clue about PCs, simply do it.
Otherwise find out whether you can do it
or simply ... dont't do it.

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub14

25 (edited by Timur Born 2015-12-04 16:23:39)

Re: What is the trick to get the lowest latency with a babyface?

Turn off the "Microsoft ACPI-Compliant Control Method Battery" via Device-Manager. This creates a DPC spike every 15s when it checks the battery load status. Laptops batteries will still load when this is disabled, but you will not get any low battery warnings anymore.

I would not turn off all C-states unless necessary. This will only run your CPU hot and draw more power. Try turning off C5/6/7 first (if available as an option), only then C3. Try C1E (E!) with C3/5/7 on and off. If your BIOS/EFI does not allow these settings you can try a free tool called "Throttlestop" for turning C1E.

The Intel RST driver (SATA) can dynamically turn C7 and C3 depending on which Windows power profile is used (or manually). That is if your EFI allows it to. If it does then you can switch between Windows "Balanced" and "High Performance" profiles to turn C-states on/off while Windows is running. Thus you can switch between an audio setup and a day-to-day setup.