Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

ssn637

macrumors 6502
Feb 12, 2009
452
48
Switzerland
Why bother at all?

Real VRAM exists for a reason. The HD4000 has none. Apple didn't lock this down "just because they can". A decision was made, and that decision was that the default setting was enough given the fact that the GPU is integrated. If you need more computational resources then that, you'll have to buy a bigger computer.

-SC

That decision was also made for the base configuration, so if you've got 16 GB of memory there's no harm in doubling the VRAM with plenty to spare.
 

kpkp

macrumors member
Original poster
Jun 13, 2012
39
5
@Colpeas
The kext you uploaded is patched with 20 (512MB), maybe you did not upload the right version... Maybe you should try with 30, be a bit more conservative, just in case there are some other limitations in the Air.
BTW: did someone else with an Air tried this?


@iMacC2D
What you say is theoretical or did you tried it? I ask that because I am interested in any mesurable test results, thx.

@ScottishCaptain
I see that most people here go for 1GB, but that was not even my intention, I like the flexibility, if you don't need VRAM you can lower it to 384 or even 256MB and increase you RAM, it is all about flexibility... To tell you the truth maybe we could go even higher then 1GB I did not test it, because i don't see the need, but be sure soon I will try it, you say why? Because I can and I am curious.

In the original AppleIntelFramebufferCapri.kext apple uses only 18, 20 and 30 as definitions, the top and bottom one were just my guess and since I had the feeling I got high and low enough I stopped guessing and decided to test this for good first.
 

benwiggy

macrumors 68020
Jun 15, 2012
2,382
201
The GPU is fast enough to play a certain game, say for example Minecraft. It's perfectly capable of sustaining reasonable frame rates regardless of in-game scenario. However once you apply higher quality textures, the GPU video memory buffer fills up very quickly. Modifying the driver to allow for a higher VRAM allocation resolves this issue entirely by raising the ceiling for how many textures can be stored in memory at once. The GPU is already capable of keeping up, now it has the available memory to store the textures to boot, and the game runs without issue.
This is verging on the kind of information I was asking for.

My remaining question is based on the text I've emboldened: at what point do the limits of the GPU's processing ability make giving more RAM to it redundant? There must come a point when the drip from the tap will never fill the bucket!
 

Colpeas

macrumors 6502
Sep 30, 2011
497
162
Prague, Czech Rep.
@Colpeas
The kext you uploaded is patched with 20 (512MB), maybe you did not upload the right version... Maybe you should try with 30, be a bit more conservative, just in case there are some other limitations in the Air.
BTW: did someone else with an Air tried this?

I changed to value to 40 at first, but when it didn't work, I tried to change it back to 20, but the system would behave the same regardless. Could you, please - in case you kept it - upload the original, unmodified version of that kext? Thanks.
 

kpkp

macrumors member
Original poster
Jun 13, 2012
39
5
I changed to value to 40 at first, but when it didn't work, I tried to change it back to 20, but the system would behave the same regardless. Could you, please - in case you kept it - upload the original, unmodified version of that kext? Thanks.

The uploaded kext is unchanged 10.8.3 version...
It is strange... Idk what to say, lets wait for another person to try it with the Air before we can say that it doesn't work with it.
 

Attachments

  • AppleIntelFramebufferCapri.kext.zip
    194.5 KB · Views: 809

Colpeas

macrumors 6502
Sep 30, 2011
497
162
Prague, Czech Rep.
Maybe I found the solution. Rebuilding kext caches wasn't enough, because the system would still omit the new kext, even the stock one you've uploaded. So merely out of despair, I tried to repair permissions for the whole drive and now it works just as it should... with the original kext. I will try it with a modified kext sometime, but not now.
 

Attachments

  • Screen Shot 2013-04-24 at 7.42.24 AM.png
    Screen Shot 2013-04-24 at 7.42.24 AM.png
    261.3 KB · Views: 1,058

garciausmc

macrumors newbie
Apr 22, 2013
5
0
Nice little tweak here. Works wonders when you are doing HD video editing. I have a MacBook Pro 13 (Mid-2012) and I followed you directions. Worked good for the 1024MB. I'm a little adventurous so I doubled that and changed it to 2048 (the number is 80). Since I have 16GB RAM in my MacBook, I did't think it would affect the performance too much. That is however, probably the MAX you are going to want to do. At least that was the max in my MacBook. Tried pushing it further to 3GB (3072GB or 120). Yup, thought I almost bricked my MacBook. I had to go into recovery and recover my MacBook from TimeMachine to get it to boot back up. Also, I took geek bench scores for 1024 and 2048 and the 2048 actually reduces the overall performance of the computer because it takes away from the physical RAM the computer uses and allocates it to virtual RAM. However, I do a lot of HD video conversion with Handbrake and it reduced the conversion time by a few HOURS with 2048. Thanks!
 

kpkp

macrumors member
Original poster
Jun 13, 2012
39
5
Nice little tweak here. Works wonders when you are doing HD video editing. I have a MacBook Pro 13 (Mid-2012) and I followed you directions. Worked good for the 1024MB. I'm a little adventurous so I doubled that and changed it to 2048 (the number is 80). Since I have 16GB RAM in my MacBook, I did't think it would affect the performance too much. That is however, probably the MAX you are going to want to do. At least that was the max in my MacBook. Tried pushing it further to 3GB (3072GB or 120). Yup, thought I almost bricked my MacBook. I had to go into recovery and recover my MacBook from TimeMachine to get it to boot back up. Also, I took geek bench scores for 1024 and 2048 and the 2048 actually reduces the overall performance of the computer because it takes away from the physical RAM the computer uses and allocates it to virtual RAM. However, I do a lot of HD video conversion with Handbrake and it reduced the conversion time by a few HOURS with 2048. Thanks!

Thx, for the great info... Did not know Handbrake was so heavy on VRAM, maybe that is the testing tool I was looking for.
My script isn't meant to take 3 digits, that messes all up. Also dont forget that the numbers you are changing aren't decimal but hexadecimal (hex), so teoreticaly for 3GB you should enter C0 not 120.

But then again, idk if there is a hardware limit of how much VRAM the HD4000 can address.
 

Jig3n

macrumors member
Oct 24, 2012
33
0
You could tell a bit more what you did and include the kext you patched...

Sure!

First I copied 'AppleIntelFramebufferCapri.kext' to the desktop and made a backup of that copy,

then I copied the patch code and replaced ?? with 40 and ran it in terminal,

then I installed the patched kext file with kext wizard, repaired permissions / rebuilt the cache and finally rebooted.

I tried it a few times and there wasn't any change in the system information 'about this mac' window.

Here's a link to the kext:

https://dl.dropboxusercontent.com/u/85554647/Jig3n-AppleIntelFramebufferCapri.kext.zip


Mac mini Late 2012
Processor 2.3 GHz Intel Core i7
Memory 16 GB 1600 MHz DDR3
Graphics Intel HD Graphics 4000 768 MB
Software OS X 10.8.3 (12D78)
 

kpkp

macrumors member
Original poster
Jun 13, 2012
39
5
Sure!

First I copied 'AppleIntelFramebufferCapri.kext' to the desktop and made a backup of that copy,

then I copied the patch code and replaced ?? with 40 and ran it in terminal,

then I installed the patched kext file with kext wizard, repaired permissions / rebuilt the cache and finally rebooted.

I tried it a few times and there wasn't any change in the system information 'about this mac' window.

Here's a link to the kext:

https://dl.dropboxusercontent.com/u/85554647/Jig3n-AppleIntelFramebufferCapri.kext.zip


Mac mini Late 2012
Processor 2.3 GHz Intel Core i7
Memory 16 GB 1600 MHz DDR3
Graphics Intel HD Graphics 4000 768 MB
Software OS X 10.8.3 (12D78)
Everything seems right, I did not have a chance to experiment with the "desktop" definitions of the driver so can't be of much help here.

But more feedback specially from people with Airs and Minis would be appreciated, so that we can confirm or deny it working on those machines, or better said if the "problems" are universal or more isolated.
 

hamiltonDSi

macrumors 68000
Jul 29, 2012
1,588
273
Romania
Does someone know how to tweak the HD3000 ?
I have a i5 Late 2011 Macbook Pro with 8Gigs of Ram and Intel HD3000 512MB
 

Donut4000

macrumors member
Aug 28, 2009
46
1
Seems to be working..

I followed the instructions in the initial post by kpkp, and got into a wee spot of bother. I had dropped the modified kext (using the 40->1024 script option) back into the Extensions folder, rebuilt the caches using Kext Wizard, then rebooted. My Mac (a 2012 13" MBP) passed its POST test, but sat at the wee rotating animation below the Apple logo for several minutes till I switched it back off. Second time round, I booted holding Shift down to get it into safe mode, which mercifully it did. I was able to reverse all the changes using a backup version of the original kext, and again, rebuilt the caches >and< repaired the permissions. This last step flagged loads of problems with the kexts in my Extensions folder. Once complete, I managed a reboot back to my desktop without further incident.
That was last night, and I got all itchy to try again this afternoon, which I did; this time rebuilding caches then running a permissions check. Also, I used Kext Wizard to install the kext rather than just dumping it into the Extensions folder by hand. That seemed to make the difference, as I am now typing all this from my Mac, which is showing 1024Mb VRAM. Its a bit early to say if there is any benefit, or problems/bugs, but I'll post back here if there is anything to say. I feel pretty confident I'll be able to put things back the way they were if I do hit any problems.
A final thankyou very much to kpkp for posting the methods used here!
 

msarro

macrumors newbie
Apr 25, 2013
14
0
Is the HD 4000 even capable of handling that much address space? I mean, while the idea that "more is better" is often true, if the GPU doesn't support beyond a certain amount, you're just sacrificing RAM the system could use elsewhere.
 

hackerwayne

macrumors 6502a
Feb 17, 2012
789
13
Kuala Lumpur, Malaysia
This tweak is useless. Intel HD 4000 can't even use anything close to 1024MB of RAM. Why bother? Like the above poster just said, do you guys have too much RAM to waste by limiting 1GB ram to the GPU? C'mon. Whats the point? Apps doesn't run faster after you did this.
 

kpkp

macrumors member
Original poster
Jun 13, 2012
39
5
This tweak is useless. Intel HD 4000 can't even use anything close to 1024MB of RAM. Why bother? Like the above poster just said, do you guys have too much RAM to waste by limiting 1GB ram to the GPU? C'mon. Whats the point? Apps doesn't run faster after you did this.
Can you back up your claims with anything beside your ignorance?
In Windows HD 4000 can dynamically allocate up to 1692MB of VRAM and that is not me saying that but Intel.

Now if you and the "above poster" do not find any use for it, why even bother responding to this thread? Or if you think that VRAM is that useless for what you use your Mac, then you can reduce it to 256MB and have more RAM available, I really dont understand people that just see 1GB...

garciausmc found a good use for the big amounts of VRAM and I agree that most of the time even 512MB of VRAM is useless, but if in future OSX or apps will use OpenCL more heavily that might change.
 

justperry

macrumors G5
Aug 10, 2007
12,558
9,750
I'm a rolling stone.
Can you back up your claims with anything beside your ignorance?
In Windows HD 4000 can dynamically allocate up to 1692MB of VRAM and that is not me saying that but Intel.

Now if you and the "above poster" do not find any use for it, why even bother responding to this thread? Or if you think that VRAM is that useless for what you use your Mac, then you can reduce it to 256MB and have more RAM available, I really dont understand people that just see 1GB...

garciausmc found a good use for the big amounts of VRAM and I agree that most of the time even 512MB of VRAM is useless, but if in future OSX or apps will use OpenCL more heavily that might change.

I have a 2012 Ma Mini-Base model, tried a few times, does not work on my Mini.
 

kpkp

macrumors member
Original poster
Jun 13, 2012
39
5
I have a 2012 Ma Mini-Base model, tried a few times, does not work on my Mini.

It seem there are some differences with the Mini's... I have a question that might help me understand them:
Does the mini also change the amount of VRAM according to the RAM that is currently installed or is always "stuck" at 512MB?

Unfortunately I do not have the hardware so all I can do is "educated guesses" based on the differences I see in the driver definitions and the feedback I get from you.
 

justperry

macrumors G5
Aug 10, 2007
12,558
9,750
I'm a rolling stone.
It seem there are some differences with the Mini's... I have a question that might help me understand them:
Does the mini also change the amount of VRAM according to the RAM that is currently installed or is always "stuck" at 512MB?

Unfortunately I do not have the hardware so all I can do is "educated guesses" based on the differences I see in the driver definitions and the feedback I get from you.

The 2012 Mini has 768 MB set aside, I don't know if this changes if it has less RAM, mine has 8 GB currently, think 4 standard, maybe I will try one stick of 2 GB later.
 

kpkp

macrumors member
Original poster
Jun 13, 2012
39
5
The 2012 Mini has 768 MB set aside, I don't know if this changes if it has less RAM, mine has 8 GB currently, think 4 standard, maybe I will try one stick of 2 GB later.

Then probably it changes according to the RAM amount, since the original driver allocation is 512MB.

Maybe somehow that gets "bypassed/overwritten" when you have more ram and that's why it isn't effective.

I asked someone with a desktop hackintosh with a HD4000(that uses the minis driver definition) to try it, then I will see if it does something for him.
 

justperry

macrumors G5
Aug 10, 2007
12,558
9,750
I'm a rolling stone.
Then probably it changes according to the RAM amount, since the original driver allocation is 512MB.

Maybe somehow that gets "bypassed/overwritten" when you have more ram and that's why it isn't effective.

I asked someone with a desktop hackintosh with a HD4000(that uses the minis driver definition) to try it, then I will see if it does something for him.

Yes it does, from everymac:

Standard VRAM: 512 MB* Maximum VRAM: 768 MB*
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.