|
 | |  | | Aug31Written by:D. Glen Cardenas Thursday, August 31, 2000 6:00 PM  Many things will affect the performance of digital audio software in general, and multi-track production software in particular. The performance of the disk drive being used to store the audio data is only the beginning. Naturally, this component must be of optimum efficiency in order to allow real time streaming at a high track count. However, this isn't necessarily always going to be the limiting factor in a DAW's performance. There are other places to look as well.
Modems: Having a modem plugged into a DAW's PCI bus can lead to conflicts, particularly if the modem is a voice modem. Some production software will attempt to configure the modem as a sound card. While more "aware" programs such as Cakewalk will report a modem upon finding it and allow you to ignore it as part of the sound system setup, other programs may not, and could default to a lower bit depth or sample rate as a result. Many DAW users agree that an external modem connected to one of the computer's serial ports is the safest way to go here.
Video: Likewise, using a fancy accelerated 3D "gamer's" style video card can cause significant degradation in system performance due to the high demands of the card on system timing. The fact is that DAW software is not graphic intensive and doesn't require a high performance video card unless you intend to do A/V production. If that is the case, follow the recommendations of others in the field who are using the same kind of motherboard/processor configuration as yourself and choose a video card accordingly.
Windows Settings: Sometimes turning down the hardware acceleration slider (from Control Panel double click the "Display" icon, go to the "Settings" tab and click the "Advanced" button. The slider is in the "Performance" tab) will improve performance, though it can also disable your video card's higher resolution/color functions.
Specificity: You may want to consider maintaining your DAW separate from all non-DAW operations and use another computer for internet activity, game playing and business applications. Your DAW might then contain only the sound cards, video card and an Ethernet card to allow transfers to and from the DAW and the separate system containing the CD recorder, internet access, back-up space, etc.
Simplicity: You may consider not even putting a CD drive in the DAW. You can access the CD ROM on the other system over the Ethernet as effectively as if it were a local drive. To prevent the Ethernet LAN from consuming system time, you can re-boot your system when you wish to do very demanding streaming production and at that time decline (hit ESCAPE) when asked for your network password. When your production load is not so demanding or when you want to move files around, re-boot and enter your network password to sign on to the LAN. All of this may seem a bit extreme, but it doesn't hurt to consider it.
Testing: If you wish to use one system for all of your computing needs as well as a DAW, then you will want to consider carefully each choice you make in terms of devices and software you install. After any changes you make, test your system fully for potential conflict with your sound equipment and production software. This way, if something causes trouble, you can quickly pin it down to a single item.
Screen Savers: As a general rule, do not load or configure any screen savers or activate the power saver functions of your DAW. These features consume resources and at the oddest moments. Screen savers were important in the days of monochrome displays due to screen burn-in. However, modern color monitors are not subject to this problem, so don't bother with them. Do not use a background virus scanner, although you will want to have one loaded to perform scans on demand from time to time.
2 Drives or Not 2 Drives?
There has been some debate as to the proper allocation of disk space in a DAW. For one thing, many feel it is important to keep the software and data on separate drives for fear that the system might bog down if required to access different parts of the same drive for software while data is streaming.
When you have a large executable plus DLLs, (simply) running the program doesn't always ensure that all of the bytes (for that program) are loaded into physical memory. Some "pages" of the code can remain on disk, and will be paged in on demand when certain areas of the program are executed for the first time.
For an example of this, watch what your disk does the first time you open the Staff View in Cakewalk. Then watch it again the second time you open the Staff View. Also, every program has "resources" (text, menus, dialog boxes, etc) which live on disk, paged in on demand. So unless the DAW prevents the user from manipulating the UI during playback, it is not true in general that the only disk access you'll get during streaming is from the data files.
Of course, there are ways to be clever and force things to get paged in ahead of time. This is actually easier to do under NT than on Win9x, but on a system with not a whole lot of RAM this isn't a good idea.
Ron Kuper Chief Technology Officer, Cakewalk Music Software |
The key word in the above statement is "RAM". If a DAW has sufficient RAM, then the user can open the views they intend to use during streaming before streaming starts. Those resources are then pre-loaded into memory. As for the dialogs and menus and so on, it must be understood that cranking around in the program while doing very demanding streaming isn't a very good idea anyway, even if the disk access for those resources is negligible.
The simple fact is, once a digital production program is running and streaming data, the drive shouldn't have to access the disk for more software. All the software it needs should be in RAM. With a bit of planning and prudent use of the UI during streaming, this shouldn't become an issue. Therefore, there is no drive access conflict.
Aside from being able to back up one drive to the other to guard against loosing your data to a sudden disk crash, the best reason to use two drives isn't to keep the data and software separate, but being able to put the partition holding your streaming data at the very front of a drive. This has advantages as we will discuss below, and has a much higher impact on overall performance than having the data and the software on two separate drives.
Virtual Memory
Ron Kuper also offers the following observation, "Another process which can hit the disk unexpectedly is virtual memory compaction and/or cache cleanup. Windows can decide to do this during 'idle' time. What constitutes 'idle' time? It's up to the O/S."
With the virtual memory wild card in mind, many have advocated that disabling the Windows virtual memory will provide a boost in performance because the system will no longer attempt to use the swap file on the disk, removing this possible conflict during streaming. This is not a good idea. Again, if you have the proper amount of RAM in your system to load the software you need and to buffer the data as it streams, then virtual memory will not need to swap at all.
Although preventing errant housekeeping tasks is almost impossible, you can minimize the effects. For advice on optimizing the virtual memory system, read the article Virtual Memory Optimization by José Catena. There is also good advice there on how to change your Windows cache settings to enhance performance. This article is required reading for anyone wishing to fine tune their system.
Other TweaksAnother simple tweak that helps is setting the "System Type" and "Read Ahead" optimizations. To get to them, open Control Panel and from there double click on the "System" icon. Go to the "Performance" tab and then click on the "File System" button. There is a box that allows you to select the use to which your PC will be put. The "Desktop" setting is the default and will likely be the setting you see when you look here. Changing that to "Server" gives higher priority to disk I/O, which usually helps a bit with disk intensive applications such as those found on a DAW.
You will also see a "Read Ahead" optimization slider. By default, this should be set to maximum (64 KB) We recommend that you leave it there. It might be worth noting that some audio programs recommend resetting it or even set it automatically to the minimum, but this usually results in very little improvement for those programs and noticeable degradation for others. It might be wise to check this setting from time to time to see if it has been tampered with, especially if you notice a sudden drop in performance of your system after running a new program for the first time.
Some drive optimization tricks can make a big difference. If you share a disk for audio and other data or applications, you can partition the drive such that your audio data is concentrated at the front of the disk. This area has as much as 60% faster access performance than the back of the disk. On a single drive system, one might partition (for example) a 10 gig drive with 10 MB as a C drive boot partition only, which then points to the E drive where the operating system is installed, then a D drive partition of 6 gig for audio. The back partition, the E drive, would hold Windows itself and the application software. Of course, a better option is to dedicate a drive to only audio data.
It is also true that streaming is more efficient using large cluster sizes, not the default 4K clusters generated by the Windows FAT 32 partitioning system. You can force the issue by applying the /Z:64 switch to the FORMAT command. This switch will tell FORMAT to build each cluster out of 64 sectors thus generating 32K clusters (each sector is 512 bytes). Better still, use a program like Partition Magic to reset the cluster sizes without having to reformat the drive or destroy your current data. As a side note, if the partition in question is 2 gigabytes or smaller in size, it can be partitioned using FAT 16 instead of FAT 32. For more information on optimizing your disk system, read Hard Disk Optimization by José Catena.
Finally, the autoinsert notification for CD-ROMs can hurt performance a bit because the system will periodically access the CD-ROM to test for the insertion of a disk. It is a good idea to disable autoinsert notification by un-checking that box in the Device Manager.
Application Design
Certain multitasking schedule and synchronization issues can degrade file I/O performance because audio buffer processing is a very high priority task. It can take a significant amount of available time, particularly with heavy real time effects loads. This can be minimized if disk I/O is done through bus mastering or at least DMA, and the application has been designed to optimize disk I/O throughput.
As a general rule, the ratio between audio buffer size and file buffer size is critical for such optimizing. The larger the file I/O buffer, the better. The smaller the audio buffer, the better. The file I/O buffer size should be large enough so that the typical time required to transfer a file buffer to/from disk is significantly larger (4 times or more) than the time required to playback an audio buffer. If the time ratio is low, the performance penalty will be large, and if it's below 1, it will be dramatic.
As a consumer, it is up to you to judge your application software wisely and invest in an application that has a good track record overall, and a commitment to customer support. If the software can't take advantage of the high disk throughput you've invested so much into, then you've shot yourself in the foot.
Tags: | | | | | | | |
|
|
 | |  | |
| | | | | | | |
|
 | |  | | |
|