Does increased RAM lead to increased accuracy?
Submitted by markr on Sat, 03/29/2008 - 22:04.
My set up: Athlon dual core 3700 processor, 2 gigabytes DDR RAM, Sennheiser M. E3, Andrea a USB pod for microphone input, windows XP who
I was generally pretty satisfied with my set up until I started writing about four hours a day. I do my writing as straight dictation. It seems to me that I'm getting a lot more errors and I used to.
I recalibrated I microphone just about every time I take a big break.
Is this anything that can be improved by getting an additional one to 2 MB? Or does that just help a speed? Any suggestions or accuracy?
Thanks so much,
Mark



More RAM when you already
More RAM when you already have 2GB won't help your accuracy or speed. Its likely you're getting lazy in your usage, which is typical when you increase your usage. Most productive for you would be to describe in as much detail as possible how you dictate, correct, etc., and let people suggest improvements in your practices.
However, I would start by suggesting you playback every error to hear what you actually said and only correct when you actually said what you thought you said. Otherwise, just re-dictate.
HTH,
Bruce
RAM and DNS speed/accuracy
I had the same question, of how to increase the speed and accuracy of dragon speak medical 9.5 on a new laptop (Toshiba Satellite with AMD dual core 2 GHz processors and 2GB of RAM running Vista home premium).
When I first loaded up dragon speak, I was disappointed with the speed, and did not know whether it was due to Vista (which I had heard was much slower than XP) or whether it was inherent in the new version of dragon speak, or whether it was due to hardware limitations.
So, I went on-line and found a list of 15 tricks/tips to speed up Vista, by searching for those keywords.
Essentially, these steps inactivate most of the "look and feel" features of Vista that try can mimic the elegance of Apple OS's, but at the expense of degrading performance.
With these features turned off, Vista looks and feels a lot like XP, and runs considerably faster than it did before.
Next, I swapped out one of my two 1GB RAM modules and replaced it with a 2 GB module ($99 from Toshiba), giving me 3 GB of RAM.
This is apparently the maximum amount of RAM that Vista Home Premium is pre-programmed to recognize/work with.
This upgrade made Vista work faster with all programs, including dragon speak.
Also, it allowed me to leave some other programs open, including my web browser, while running dragon speak, without slowing voice recognition performance.
An additional feature of Vista that is well worth exploring is Ready Boost.
As I understand it, this allows the use of a USB flash memory drive to function as a sort of "accessory RAM" by letting Vista determine whether to use the hard drive or the flash memory unit for "on the fly" reading/writing of relatively small bits of data for the programs that are frequently run frequently.
Apparently, using flash memory for this purpose is quicker than using the hard drive.
This is apparently especially true on laptops, where the spin rate/access time is not as favorable as on a desktop unit hard drive.
So, I used a Sony Micro-Vault 1 GB memory stick that I had around, and it seemed to speed up lots of programs.
I can see the activity light on the USB drive blinking furiously away, when I am doing virus scans and other time-consuming tasks.
Completion times for such programs can be readily compared in terms of speed, with and without the memory stick plugged into the USB port.
As I understand it, the ideal size of the Ready Boost compatible flash memory is between 1 and 3 times the amount of RAM available inside the computer.
However, there is also a comment in Windows Help that there is 4 GB limit on how much flash memory that Ready Boost can recognize/work with.
So, I have just ordered an Apacer Steno 4 GB USB flash memory drive ($70).
This unit was rated as one of the fastest among the thumb drives that were bench-tested with Ready Boost.
I will keep you posted as to whether this additional 3 GB of flash memory makes any difference with dragon speak.
If nothing else, it will encourage me to keep the thumb drive plugged in for doing periodic dragon speak user file backups there, in addition to the regular backups I already do onto the hard drive, in case of of Vista meltdown and need to restore, etc.
MarkO
Increasing the amount of RAM and using Ready Boost Speeding up D
MarkO,
Keep in mind that increasing the amount of RAM or utilizing Ready Boost does not have a direct impact on Dragon NaturallySpeaking. In other words RAM and Ready Boost do not speed up applications. What they do do is speed up the performance of Windows. When Windows runs faster, then so do all your applications.
Also, Windows is not limited to 3 GB of RAM. If you have 4 GB of RAM installed, Windows uses the 4th gigabyte for itself and peripherals that you add to your system. In other words the 4th gigabyte of RAM is used primarily by Windows for itself. This gives you 3 GB of RAM available for applications. However, if you only have 3 GB installed, Windows requires approximately 3/4 to 4/5 of that for the same purpose. Therefore, you end up with approximately a little more than 2 GB of RAM available for applications. Or, in other words, if you follow the 3 GB limit thinkers, you lose a gigabyte of RAM availability. So, keep in mind Murphy's first rule of life: Once you pull the pin, Mr. grenade is no longer your friend.
Be wary, there are a lot of so-called "anything experts" that divulge a great deal of information that just plain "ain't so."
Chuck Runquist
Former Dragon NaturallySpeaking SDK & Senior Technical Solutions PM for DNS
"It ain't what you don't know that gets you into trouble. It's what you know for sure that just ain't so." -- Mark Twain
Speed and Accuracy of DNS on Vista
Chuck,
Thanks for your comments.
Admittedly I am newbie to Vista and DNS, so your comments are well-taken.
I am just trying to bring by home Vista laptop system up to the performance of my office system with DNS 9.5 on XP with only 1GB of RAM, running other applications through a server, but DNS locally.
Probably more of a commentary on how slow and RAM-hungry Vista is compared to XP, than anything having to do with DNS.
MarkO
markr wrote: My set up:
My set up: Athlon dual core 3700 processor, 2 gigabytes DDR RAM, Sennheiser M. E3, Andrea a USB pod for microphone input, windows XP who
I was generally pretty satisfied with my set up until I started writing about four hours a day. I do my writing as straight dictation. It seems to me that I'm getting a lot more errors and I used to.
I re-calibrated I microphone just about every time I take a big break.
Is this anything that can be improved by getting an additional one to 2 MB? Or does that just help a speed? Any suggestions or accuracy?
Thanks so much,
Mark
Bruce is basically correct. However, allow me to clarify a couple points even though this issue has been discussed numerous times in the past and you can find all the discussion threads if you do a search on this and other forums.
First, increasing RAM has virtually nothing to do with DNS. DNS already loads everything into RAM when you launch your profile.
Second, what increasing RAM does is increase the speed and performance of Windows. The faster and more efficiently Windows runs, the faster and more efficiently DNS will run. So the consequence of adding RAM, wherein it increases the performance and speed of Windows, indirectly "CAN" indirectly increase the performance and speed of DNS. In an of itself, however, it does not directly impact on DNS. What does improve the performance of DNS is the amount of L2 cache available, which I will explain in a moment.
Third, and I have never gone back and discussed this thoroughly in the last couple of years, the DNS recognizer (MREC.dll) does not use the CPU to perform its analysis and conversion of speech to text (dictation to transcription). That function is performed by the FPU (Floating-Point Processor or coprocessor as it used to be called many years ago). What made speech recognition possible on PCs was the incorporation of the FPU as part of the processor unit with the advent of the building the coprocessor into the CPU chip that came about with the advent of the 486 and the AMD K-6. When this happened, Microsoft introduced MMX, which automatically channeled mathematical computations through the FPU. Since recognition is entirely a mathematical process, the entire process of converting speech into a mathematical model (Acoustic Model) and comparison to the Vocabulary and Language Models is performed in the FPU, not the CPU. This is because the entire process is based on the mathematical models used in the HMM (hidden Markov models) that comprise the Acoustic Model and the Language Models.
Fourth, and this goes back to the second point, each step along the process saves its results to the level 2 cache (L2 cache) for quick access by the FPU when the next step in the process is executed and requires the results of the previous process. For example, when you dictate something (each separate utterance) the Acoustic Model compares your pronunciation to the phonetic table contained in the Vocabulary (i.e., the active Vocabulary that is loaded into RAM). It then takes this parsed set of phonetic strings and converts them to a statistical probability model based on the algorithms associated with creating an HMM equivalent. DNS then takes this converted HMM model based on your dictation and searches all of the possible HMM equivalents already encoded in the Language Models. This process is governed by the position of the Speed vs. Accuracy slider in the Miscellaneous tab of the DNS Options dialog. This is basically a timer and determines how long DNS searches through the various statistical and probability combinations of words (this is not a database of words it is a statistical model that is based on probability coefficients relative to parse strings not words). Because this is a mathematical computation and uses the FPU it is extremely fast (i.e., basically in milliseconds). DNS then selects the top 9 highest probability results from the Language Models. The result of this computation is then passed back through the L2 cache and is accessed by the CPU in order to compare it to the Vocabulary for the parsing of the binary phonetic results and conversion into words that are then passed through SAPI back to the application into which are dictating. So, basically all of the computations are done by the FPU, but the transcription process (i.e., converting the results to text) is performed by the CPU because only the CPU can execute Windows instructions, and SAPI is a set of Windows instructions specifically designed for speech. That is, passing speech information back and forth between applications whether dictation or commands.
Therefore, the end result is that the amount of RAM has very little to do with this process. It does have a great deal to do with how efficiently Windows performs. Windows consumes about one half to two thirds of your available RAM for its own purposes. If you have only 1 GB of RAM, some of the RAM has to be converted for use entirely by Windows, some of the RAM is allocated to applications that are active and loaded, some of the RAM is allocated to resources (i.e., tracking everything that is running), and some of the RAM is allocated to those resources necessary for keeping track of user and graphical user interfaces. What you have left over is then accessible to applications. In the case of 1 GB of RAM, you can end up with insufficient RAM to adequately handle all the applications that you may be working with in any one given point in time. You also have to take into consideration all of the background tasks that are working any given point in time. For example, if your antivirus is running a scan or if you are manually defragging your hard drives, this will reduce the amount of RAM as well as decreased the speed and performance of Windows itself. The end result is that DNS also slows down. In addition, and in your case, if you're dictating for long periods of time, particularly into a single application like Microsoft Word, Windows gradually requires more and more resources (RAM) to handle the amount of text that you're entering into a document. Over time, this can slow DNS down because it slows Windows down. With less than 2 GB of RAM, the result will eventually be that Windows has to swap out something to the pagefile in order to provide sufficient RAM for everything that is currently being used (active).
On the other hand, once you have at least 2 GB of RAM, and preferably 3 GB of RAM in Windows Vista because Vista is more resource intensive than XP, increasing your RAM generally does not improve the performance of Windows, and therefore the performance of DNS. However, if you change your system configuration to one that has, as in the current Intel Core2™ Duo E8400 chips or the Core2™ Extreme Quad Core QX9650 quad core processors, you are now working with 6 MB to 12 MB of L2 cache, as opposed to your Athlon which is only running 512 kilobytes of L2 cache. Don't be deceived by AMD systems that are running 2 MB of L3 cache because the L3 cache is solely for the purpose of storing interim results to be passed to applications and doesn't really have as much of an impact as L2 cache does. The current AMD processors are simply less efficient than the current Intel processors, and by current I mean most recently introduced. This includes the new AMD quad core processor. There was a previous post on another forum that disagreed with my analysis of L2 cache and DNS performance referencing a blog by an individual who is known to be well-versed in processor performance. However, none of the benchmarks used in that analysis have anything to do with the way that DNS or any speech recognition performs. The result is that their claims to the contrary relative to mine end up being a non sequitur. That is, they weren't applicable to the way that DNS works.
Lastly, once you have reached the 2 GB level of RAM, the only way to increase the speed and performance of DNS is to upgrade your system to one of the more current processor sets. Keep in mind that AMD references to speed (+3500) is not a reference to the true processor speed but to the enhancement to true processor speed based on their processor enhancement technology. You can see this if you go into your BIOS because the BIOS will tell you what the actual processor speed is. AMD is typically anywhere from 500 to 800 MHz slower in terms of true processor speed provided by the technical specifications for any particular CPU. Currently, AMD does not compete well with the latest Intel chips, particularly as regards to DNS.
Nevertheless, your problem is not a RAM problem, it's a loss of Windows performance because of the increasing amount of resources required by Windows when dictating over long periods of time. There are a couple of things you can do to reduce this propensity to slow down the transcription process under your conditions.
1. Rerun the Audio Setup Wizard as you currently are doing.
2. Periodically close your user and relaunch. This has the effect of flushing buffers and clearing out the RAM that may be becoming fragmented as a result of your continued dictation. Particularly in DNS 9/9.1/9.5, the amount of RAM and resources used by DNS gradually increases over time starting at about 180 MB an increasing to as much as 350 MB depending upon whether or not you're using DNS Preferred or one of the professional series (Legal, Medical, Professional). Since RAM is like your hard drive, the assignment of RAM to a particular task can become fragmented. However, don't use of RAM defragger program like some users attempt to do because this only exacerbates problems that you can have with DNS. It is much simpler and more effective to simply close your user and relaunch it after dictating for about two or 3 hours or when you detect a slowdown, or are you seem to be finding that your accuracy is being affected (although this is more likely due to fatigue and dictating over a long period of time which changes, or tends to change, your dictation style and quality of your enunciation/pronunciation).
3. Save your working data (documents) and close those applications, close and restart Dragon NaturallySpeaking and then reopen your applications. This is a drastic move, although less drastic than rebooting, but this tends to free up all memory so that every application has to be reassigned its own specific set of memory addresses. Because DNS must be loaded before Select-and-Say enabled applications into which you want to dictate, DNS gets for shot for memory allocation.
These techniques tend to refresh the way RAM is allocated and by applying any or all of these you will find that your dictation returns to a more stable and more accurate. Also, keep in mind that most dictation errors (when they increase) are a result of either less than optimal hardware or changes in your dictation style, such as mumbling, slurring your words, running words together, let's clear enunciation and/or pronunciation, etc.
Basically, it's important that you remember that the way you hear yourself is not necessarily the way that DNS hears you. I hate putting it that way because it tends to anthropomorphize speech recognition, which is far from the case. However, it does help to explain, in most cases, why dictation accuracy degrades over time. Consider it in this way. You do not sound to your self the way you sound to others. As a result, you can't rely on what you hear in your own dictation in order to understand what may be going on behind the scenes. The only way that you can do this is to dictate several pages saving the audio (you can only do this with the professional versions) so that you can listen to your dictation over a longer period of time by playing it back completely from beginning to end. This helps you to understand how your dictation changes over time and what possible problems your style may be creating as a result of fatigue or strain from dictating for several hours. This technique is helpful because you can review the text while you listen to your dictation, and often can point out where you are making your mistakes. It's not possible to do this effectively with short bursts of playback (i.e., a couple of sentences or a paragraph, or in the correction window/spell dialog).
Chuck Runquist
Former Dragon NaturallySpeaking SDK & Senior Technical Solutions PM for DNS
"Any sufficiently advanced technology is indistinguishable from magic." -- In memoriam of Arthur C. Clarke who passed on this week. (1917-2008)
Cache and DNS performance
Though I can't comment on the newest AMD chips with Level 3 cache, I can verify Chuck's description of the core 2 duo chip's power for DNS. I've got a macbook pro with a 2.4 GHz core 2 duo at home and an AMD dual CPU dual core opteron 290 workstation at work. Despite my being an AMD fan, I assert that Chuck is right on: the 2.4 GHz core 2 duo is much faster than even 2 dual core 2.8 GHz opterons.
But here's the kicker: The accuracy and speed of DNS 9.5 dictation is faster running on a *virtual machine* on the macbook (vmware fusion) than it is running natively on the opteron box. Of course it's a bit faster yet running natively on the mac via bootcamp, but the idea that a virtual machine on a core 2 duo would beat native speed on a 4 core machine is quite surprising, at least to me, and lends support to Chuck's highly informative note.
matthewls wrote: Though I
Though I can't comment on the newest AMD chips with Level 3 cache, I can verify Chuck's description of the core 2 duo chip's power for DNS. I've got a macbook pro with a 2.4 GHz core 2 duo at home and an AMD dual CPU dual core opteron 290 workstation at work. Despite my being an AMD fan, I assert that Chuck is right on: the 2.4 GHz core 2 duo is much faster than even 2 dual core 2.8 GHz opterons.
But here's the kicker: The accuracy and speed of DNS 9.5 dictation is faster running on a *virtual machine* on the macbook (vmware fusion) than it is running natively on the opteron box. Of course it's a bit faster yet running natively on the mac via bootcamp, but the idea that a virtual machine on a core 2 duo would beat native speed on a 4 core machine is quite surprising, at least to me, and lends support to Chuck's highly informative note.
Interestingly enough, the AMD L3 cache is kind of a kludge approach. AMD relies on its speed up technology and only 2 MB of L3 cache really doesn't improve performance, particularly with regard to DNS. So, my guess would be that even the new quad core AMD's are not going to function as well as the latest Core2™ Duo and Core2™ Quad processors.
For example, I've had a chance to test the new slim Mac Airbook in the same manner as described above against my Core2™ Duo E8400 3.0 GHz with 6 MB of L2 cache and my Core2™ Extreme Quad Core QX9650. The Core2™ Extreme Quad Core QX9650 outperforms the Mac running DNS using either boot camp or fusion. However, the Core2™ Extreme Quad Core QX9650 is running at 3.2 GHz with 12 MB of L2 cache, all of which can be used interchangeably by any of the cores. The Core2™ Duo E8400 is just ever so slightly faster than running DNS on the Mac. That is, it's noticeable but not significant. Nevertheless, the Mac seems to make more efficient use of the execution of DNS, something that Microsoft ought to take notice of. I know that Intel is paying attention to this. In fact, it appears that running DNS in a virtual environment seems to function better all the way around, even on a Windows machine. Therefore, it seems that the virtual environment executes everything a little bit more smoothly and efficiently. I can't be certain of this, but this has been my observation.
Chuck Runquist
Former Dragon NaturallySpeaking SDK & Senior Technical Solutions PM for DNS
If computers get too powerful, we can organize them into a committee - that will do them in. - Bradley's Bromide
My set up: Athlon dual core
My set up: Athlon dual core 3700 processor, 2 gigabytes DDR RAM, Sennheiser M E3, Andrea a USB pod for microphone input, windows XP
From anecdotal experience it seemed to me at least when I only had 1 MB of RAM that the more programs like that running the slower I could dictate in DragonPad. It also seemed to be this way with 2 MB. Is that true from a technical standpoint with memory?
Mark
FPU vs. CPU
Is not the FPU part of the CPU in all modern processors?
The FPU and the CPU are not the same
Is not the FPU part of the CPU in all modern processors?
Unfortunately, that is a little bit like asking "is not the air conditioner in your car part of the engine."
Yes, the FPU is part of the chip, but the FPU is not part of the CPU just as the L2 cache is not part of the CPU. All of these components are contained within the onboard CPU chip, but they are not the same. The FPU, or floating point processor, does not do anything other than perform complex mathematics, or basically floating point math.
It is, in fact, a separate processing unit from the CPU itself. The benefit to DNS is that speech recognition is entirely a complex mathematical process, something which the CPU itself does not and cannot do.
Chuck Runquist
Former Dragon NaturallySpeaking SDK & Senior Technical Solutions PM for DNS
"It ain't what you don't know that gets you into trouble. It's what you know for sure that just ain't so." -- Mark Twain