Jump to content

For David: Loaded RAM's Impact on CPU


Recommended Posts

All are welcome to comment, but I've pursued this question elsewhere with some vigor and never gotten to the root of it. I'm hoping David can weigh in.


David, I've got 6.5 GB total in a Mac dual 1.8 running 10.4.5, with Logic 7.1.1. I'm using orchestral samples in both EXS and VI at the same time.


Now here are two puzzling observations, and I believe they're related.


As RAM fills, I notice that my dual CPU meters reading at about 60 and 40% when I hit play. But this is with no performing regions. Imagine that you're putting the SPL in motion at the very end of your song, and all the music is now to the left of the SPL. No MIDI, no audio files. Just the SPL trotting along an empty space. That requires 60 / 40 % of two CPU's respectively. It's a lot of lost power right out of the gate.


And that's with 3 GB still free overall.


If I dump all the RAM, I return to about 6GB total free. Now when I hit play, the CPU meter hardly registers.


A second puzzle. When I creep near a 3 GB total loaded RAM (split about evenly between VI and EXS), core audio overloads emerge. These stop playback even at portions of the song that were playing fine as I was building the cue. But as I continued on, loading more sounds, and RAM slowly filled, the core audio overloads grow more frequent. The polyphony of the troublesome sections did not change, but my computer's ability to process them most certainly did. Eventually, the song is nearly unplayable.


And again, that's still with about 3 GB free overall.


I downloaded iFreeMem last night and used it to win back about 1 GB of "inactive" memory. But that did not improve playback.


So my overall question is, what is it about filled RAM that requires CPU? I'm guessing that the more sounds that are loaded, the more Logic has to "prepare" something on the chance that you play it.


Thanks for any insight.

Link to comment
Share on other sites

Well most of the time when you have something in RAM that's because it needs live processing such as pitch shifting in the case of samples in a sample instrument... and also timestretching in the case of an Apple Loop.


So the more stuff you have in RAM, the more you're hitting your CPU.


The theory is that each app in Mac OS X can use up to 4GB. Some of those 4GB are common libraries used by several apps, and don't appear in your readings, so aside from those libs, one app can have about 3 to 3.5GB of RAM.


You can use more RAM by using another host, such as Plogue Bidule.

Link to comment
Share on other sites

Thanks, David. You've confirmed things for me. I must say, I'm surprised I don't hear more about this issue, because people are quoting statistics and leaving out this key dynamic.


"...one app can have about 3 to 3.5GB of RAM."


Right. On paper, that's true. I can get 3.5 GB in EXS and VI respectively, the latter being a plug-in. That's why I bought the extra RAM.


But now comes a HUGE caveat for those with lesser powered computers. Namely, if you've got that much RAM in use, you're taking a prohibitive CPU hit on a slower Mac right out of the gate. I lose nearly one processor just to accommodate what I MIGHT play when I hit play.


And if I load my orchestra up to more than 3GB, the scope of what I MIGHT play is so enlarged, Logic's capacity to play what has already been recorded is greatly diminished.


Obviously, I can have more sounds on line at the same time, but the caveat is, I can use even fewer simultaneously. I still have to bounce, sub-mix, solo, unload, etc. -- the same things I bought more RAM to avoid.


I hope this helps someone as a cautionary tale. Everyone's talking about RAM limits, but this is a significant gotcha for slower computers. I'm going to assume that the CPU hit of loaded sample RAM on a quad-core Mac is far less prohibitive.


"You can use more RAM by using another host, such as Plogue Bidule." Well, I'd think RAM loaded anywhere in any program would have to be "live" to the CPU, and that the mere diverting of samples to Plogue would not address the fundamental truth that loaded RAM samples "pre-require" the CPU's power. But I haven't tested that.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...