EXS in L8 versus L7: no more 3.5 GB RAM limit (with screen grabs)

okay

i’ve done some testing of EXS in Logic 7.1.1 and Logic 8. while all of this testing originated in the “is logic 64 bit” thread, i’ve started a new thread to post these results since, honestly, i really have no idea where to post in that old thread anymore. suffice it to say that Orren and Rohan are absolutely correct -- if we use Virtual Memory in EXS in Logic 8, we are no longer limited by Logic's 3.5 GB RAM limit for EXS and we can now use all of the RAM in our computers with EXS and Logic.

a couple of notes:

1. all songs were created and/or opened on a fresh system directly after a reboot. i never reopened a song or switched songs without a reboot in between. and all testing was done on my dual G5 with 8 GB of RAM, OS 10.4.10, Logic 7.1.1 or Logic 8.

2. i never had any programs other than Logic, Activity Monitor, and Grab open.

3. all testing was done with the EXS Virtual Memory option Active and set to “disk drive speed: slow” and “disk recording activity: extensive”. one of the confusing things in reporting this testing has always been that both EXS and Activity Monitor have a thing called “Virtual Memory” and they are not the same thing. i use Activity Monitor VM as my “how much RAM is this program using” reference because it is the one consistent figure i can find: when Logic hits 3.55 GB of Virtual Memory space in Activity Monitor, it crashes. but Activity Monitor’s Virtual Memory figure is a completely separate thing from the EXS Virtual Memory option. so from here on, when i refer to VM, it is the figure as reported by Activity Monitor. please know that the EXS VM option was active for all testing reported here.

so i started by creating a song in Logic 7 and i added EXS instruments (and ONLY EXS instruments) to the song until i was about to hit the 3.5 GB Virtual Memory limit. as you can see in this screengrab...

User uploaded file

...once i had loaded 18 EXS Vienna Symphonic Library instruments, Logic’s Memory figures in Activity Monitor were:

Logic Pro 7.1.1

Real Memory: 3.08 GB
Shared Memory: 47.4 MB
Virtual Memory: 3.42 GB

the system was using 4.15 GB of RAM, leaving 3.85 GB of RAM free. when i tried to load a 19th EXS VSL instrument, the program crashed.

so i then rebooted and opened this same song in Logic 8. as you can see in the screengrab, the memory figures as reported for Logic 8 are very different:

User uploaded file

Logic Pro 8

Real Memory: 1.94 GB
Shared Memory: 562 MB
Virtual Memory 2.45 GB

Logic’s Real and Virtual memory figures are much smaller, but the Shared memory figure is much larger. also, the system is using almost the exact same amount of RAM: 4.13 GB (leaving 3.87 Free).

i then proceeded to add EXS instruments (and ONLY EXS instruments) to this song (it has a new name because i didn’t want to save over the original song) until the System RAM was almost all used. as you can see in the following screengrab, the song now has 32 EXS VSL instruments loaded and the system is using 7.68 GB of RAM.

User uploaded file

what’s interesting is that despite all of the added EXS instruments, Logic’s memory figures have seen little change. they are:

Real Memory: 2.12 GB
Shared Memory: 571 MB
Virtual Memory: 2.62 GB

and while Activity Monitor isn’t showing a process that is responsible for storing the EXS samples, all 14 of the new EXS instruments are playable (as are the original 18).

so clearly what Rohan and Orren reported about EXS in Logic 8 is true -- we can now load/stream more instruments in EXS in Logic 8.

to test further, i removed a couple of instruments from this song so that i wouldn’t be running quite to the edge of my system RAM, saved it, rebooted and reopened the song. as you can see in this screengrab...

User uploaded file

there are now 28 EXS instruments open and Logic’s memory figures are reported as:

Real Memory: 2.07 GB
Shared Memory: 562 MB
Virtual Memory: 2.52 GB

The system is using 6.75 GB of RAM, leaving 1.25 GB free.

so then i added 7 Altiverb plug ins to 7 channels in Logic 8 (different settings for each altiverb instance so they were each using their own RAM).

User uploaded file

as you can see, not only has the System used more RAM, but Logic’s memory figures have increased as well because Altiverb is loaded into Logic’s RAM. Logic’s RAM figures now are:

Real Memory: 2.63 GB
Shared Memory: 582 MB
Virtual Memory: 3.15 GB

so i then proceeded to add two more EXS instruments to this song and you can see that the System is now using a lot more RAM (around 750 MB more RAM) but Logic’s memory figures have remained almost the same:

Real Memory: 2.65 GB
Shared Memory: 587 MB
Virtual Memory: 3.16 GB

User uploaded file

and, of course, all 30 EXS instruments are playable. how well they will perform in real world use remains to be seen. but they all work.

finally, as near as i can tell, Logic 8 doesn’t let EXS have its own memory space until Logic hits around 1.75 GB of Virtual Memory (as reported in Activity Monitor). before that point, it appears to me that Logic keeps EXS “inside” the Logic memory space. the “real” and “virtual” memory figures for Logic continue to rise as EXS instruments are added and the “shared” memory figure for Logic stays at around 40 MB.

but after 1.75 GB of VM, the “shared” figure starts to rise with each instrument until Logic hits around 2.4 GB of VM, at which point, all EXS appear to be loaded into non-Logic RAM because the “used” System RAM increased but all Logic figures remain almost the same. (i’m sorry if describing this is confusing -- i’m doing the best i can)

anyway, i apologize for the long post, but i wanted to clarify as best i could what the state of EXS is on Logic 8 for anyone still curious.

while i certainly make no claim to know how or why this is happening, i can say that on my system, what Rohan and Orren have reported is correct: EXS in Logic 8 is no longer limited to Logic’s 3.5 GB RAM limit so long as you have the EXS Virtual Memory option active (if it isn’t active, the old RAM limit remains).

thanks to all who helped get to the bottom of this. i hope this post is helpful in demonstrating what EXS can now do in Logic 8. if not, well, i tried. 😉

cheers

Posted on Sep 18, 2007 12:49 PM

Reply
103 replies

Sep 26, 2007 5:43 AM in response to Rohan Stevenson1

32 bit apps can't access 64 bit memory. They can run a separate process or app and access memory by sending data back and forth as a workaround.

64 bit apps can simply access 64 bit memory without having to resort to the workaround.

Logic (and 10.4) have a specific memory limitation, namely that extended memory can't be used transparently. It can be worked around. But I don't see an existing workaround as a reason for apple not to lift that limitation. If developers prefer to stick with their workaround after it is no longer needed, they can certainly still do that if they want.

Working around a limitation and removing the limitation so that all third parties *don't have to work around it* aren't mutually exclusive.

Rohan, I don't know if you don't understand what the word "hype" means or if you're intentionally being dishonest in your use of it. But apple has said that 64 bit code provides a specific benefit. Many users need that benefit. Are you saying that apple is lying, and that going to 64 bit won't provide that?

The so called "hype" is just a claim from apple that 64 bits accomplishes something, and you have provided no reason to believe that it doesn't accomplish that. Assuming it actually does what they say it does (are you disputing their claim?), that's not hype, it's simple fact.

For the record, when apple ships a 64 bit version of Logic, I want it to be a fat binary that also contains the 32 bit version of the app (which they'll have to do anyway if they want to keep supporting all the machines that are currently supported), and provide a way for those with 64 bit hardware and OS to run the app in 32 bit mode if they're afraid of issues of performance, compatibility, or whatever. If apple were to do this, I see absolutely no reason for anyone to object to apple doing a 64 bit update.

Sep 26, 2007 5:08 PM in response to Rohan Stevenson1

sorry, justin i don't have time to go into detail


Oh no, that is more than enough info. Thanks. I was really curious where it came from and your description response provided more than enough info. I really didn't read through everything around this (and the related to the threads). I tried to at one point but the discussion just got out of hand.

As far as whether 7 was working around 32 bit addressing limits, I never considered it and simply assumed it was not being performed esp. after all the reports of people hitting the ceiling.

it was also made clear that 3rd party developers have 'all the information' they need


This is (without knowing firsthand by spending considerable time developing test programs of my own) entirely possible considering what I have read about OS X -- straight out of the Developer docs that have been available to every developer (and users who sought it) for years. I mean this on a higher level, as in, Apple has outlined the process but never provided an example exactly for this application. Some apps (Science comes to mind) took advantage of it early on, the same techniques can be used. In this regard, I am referring to a 64 bit 'helper' process - though secondary 32 bit subprocesses may be a better choice. Secondary processes has been a possibility for years as well.

Another factor (which I don't know if it has been mentioned) is that a 64 bit version, if released, would not be terribly usable for end users because we should assume (if Leopard were available to us and the technology easily available to every developer) there are many 3rd parties which are not necessarily 64 bit ready. Whether hosts find clever ways to load 32 bit plugs or we need 64 bit capable plugs for each host remains to be seen. I am just under the assumption that we should expect the minimum, a 64 bit plugin to run in a 64 bit host (as a 32 bit version runs in a 32 bit host these days). AFAIK, AUs can be leveraged for this purpose - (similar to how Nodes are used today). Multiple apps under multiple architectures using multiple streams.

Best,

J

Sep 26, 2007 5:20 PM in response to Mike Connelly

Rohan, I don't know if you don't understand what the word "hype" means or if you're intentionally being dishonest in your use of it. But apple has said that 64 bit code provides a specific benefit. Many users need that benefit. Are you saying that apple is lying, and that going to 64 bit won't provide that?


It's used in marketing... Totally common. It can be put to good and bad use and in marketing you are shown 'best case far fetched yet semi-real world scenarios' in order to get you excited about new products. It depends on which point you are getting at but most apps don't need anything near 64 bit addressing and would suffer by 'hitting that switch'. There is hype. I do not mean to say there is nothing to be excited about (and that there is not progress) and that all companies base their decisions on how they can get your next paycheck. There is progress, evolution, and hype. Informing yourself is the defense (well, IMO).

J

Sep 27, 2007 5:44 AM in response to Justin C

"It depends on which point you are getting at but most apps don't need anything near 64 bit addressing and would suffer by 'hitting that switch'. There is hype."

Absolutely. But Logic is one of the apps that would benefit from 64 bit addressing. People insisting that TextEdit should be updated to 64 bit are buying into hype, in the case of this app the potential benefits are known.

Sep 27, 2007 6:01 AM in response to Mike Connelly

in the case of this app the potential benefits are known.



well i don't know of any.

cons:
• logic uses 64-bit where appropriate anyway
• 32-bit plugs won't work in a 64-bit plug (as far as we know)
• it is not necessary to make the app 64-bit to access more RAM
• a 64-bit program would virtually halve the track count, and slow the GUI to a crawl.

the only benefit to going 64-bit is to access more memory, something has been shown over and over here and proved by s8t not to be necessary.

Sep 27, 2007 7:21 AM in response to Mike Connelly

Well, you guys who want Logic to be 64 bit can debate it all you want here but as I posted in another thread Dr. Lengeling told me personally at NAMM last year that Logic will NOT become a totally 64 bit app in the future because he believes it creates more problems than it solves and the issues like addressing more ram that it does help can be achieved other ways, which apparently they did in this matter.

Sep 27, 2007 7:43 AM in response to Rohan Stevenson1

"well i don't know of any."

Then you're either not paying any attention and don't understand 64 bits at all, or are being intentionally obtuse.

It would allow the app and plugins hosted by it to access more than 4 gigs of ram without needing to work around the current limitations by running separate apps or processes.

Obviously there are potential downsides to 64 bit code, but those don't cause the advantages to not exist.

And while you keep insisting that it's not necessary, it would provide a way for third parties to do this within the app without having to resort to workarounds like running separate processes. Call me crazy, but I think giving programmers more options, especially ones that could potentially make implementation simpler, cleaner, and more standardized is a good thing. You obviously don't agree and think that programmers should be forced to hack their way around limitations. You've made that clear.

Rohan, if you're so sure that 64 bits would halve the track count, why aren't sonar 64 users seeing that now? I'm dying to see what your response will be when apple ships a 64 bit version of logic and it actually does allow using more ram in third party plugs and doesn't halve track counts. You're obviously have made up your mind and aren't going to be convinced by anything less than seeing how it works when it finally ships.

Asher, I don't really care if it's fully 64 bit as long as it can host 64 bit plugins somehow. Apple is going to need to provide a way to use the additional ram - when other host apps start doing it and Logic can't, they will have a hard time competing. And if that's really Dr. L's plan, he should get his act together and communicate that to third parties so that they know what to develop for.

Sep 27, 2007 8:11 AM in response to Mike Connelly

Then you're either not paying any attention and don't understand 64 bits at all, or are being intentionally obtuse


mike, i think you are most definitely being intentionally obtuse. what you are describing as 'workarounds' is actually efficient implementation.

you are not paying attention to what far more informed individuals than me have been saying and far better qualified ones are either. again you personalize your repsonse with:

Rohan, if you're so sure that 64 bits would halve the track count, why aren't sonar 64 users seeing that now?


well, that's not what i am saying. it's what i am repeating. orren has made it clear and given you an extremely detailed explanation and justin has pointed to his understanding of it which ought to count as substantiation even if you are disinclined to believe orren.

trying to argue differently is to assume that you know better than the developers of logic itself. asher has been able to tell you what the horses mouth has said. you need to understand that they have a far better grasp of these issues than you do. they have their reasons for doing things this way, and those reasons have been explained.

logic will undoubtedly become a 64-bit or maybe even an 128-bit program, but not in the near future. at least that is the information we currently have by word of mouth from people who really do know what they are talking about, even if you don't like what they have to say.

I respectfully suggest that at this point, you let it go and make some music.


hear, hear. i'm off to do the same.

Sep 27, 2007 8:24 AM in response to Rohan Stevenson1

"what you are describing as 'workarounds' is actually efficient implementation."

Your opinion. I don't agree. And for something that's supposedly "efficient" it's not being used by many third parties, is it?

"well, that's not what i am saying. it's what i am repeating."

Why? I read what orren said and I responded to it. I don't see the point of repeating other people's posts if you have nothing to add to them (other than ad hominems). And I agree with everything Justin has said, the fact that you seem to think he is contradicting me just seems to show that you're parroting comments from others without understanding them.

With all due respect to the logic developers, I don't think they have always made the best choices about what is best for Logic. I think that would be obvious from the reaction to 8 on this board and elsewhere. Hopefully they've given the issue more thought in the year that has passed since Dr. L made that comment, and now that they have a final, fully 64 bit OS to take for a spin.

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

EXS in L8 versus L7: no more 3.5 GB RAM limit (with screen grabs)

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.