How to increase vRAM for HD3000 graphics

SpacemanSpiffed

macrumors regular
Mar 27, 2013
183
265
Pacific NW
As a professional game developer, and graphics programmer, I can tell you that the "amount of VRAM" the OS sees isn't going to make a whit of difference on this generation of Intel iGPUs. The reason is that the Intel GPU maps a memory aperture (smaller) into System RAM for access. That's how it says "this chunk/these chunks of RAM are going to be used as GPU memory until I change the mapping again". It's like the old 8088 PC with 640K of RAM - you couldn't access the whole amount with a single segment (register), but you could map that segment almost anywhere in memory.

Where it matters is wherever there is dedicated video memory, like the 2011 Mini with AMD 6630 and 256MB VRAM. When you have separate Video Memory, any data you want to use for graphics has to be copied, across a bus of some sort, to the video memory before it can be used. If you have more graphical data than can fit in the (remote) video memory, eventually something has to be evicted from it to make room for newer data.

With the Intel iGPUs, nothing is actually copied - the GPU Aperture is made to point at the data, and moved if necessary.

The current game I am working on uploads a lot of modified data to the GPU memory each frame, and the Intel drivers are smart about it and don't copy the data needlessly, so our iGPU perf is about the same as a mid-range+ dedicated GPU (we do very little 3D), which is a nice bonus, but has the testers at our publisher a bit baffled. (If we did a lot of 3D, they we would be limited by the number of EUs vs dedicated shader cores and do much worse vs the mid-range cards)

tl;dr - messing with VRAM amount the OS thinks you have won't matter in any meaningful way.- it's all the same system memory anyway.
 
  • Like
Reactions: loby and Celerondon
Comment

uMBP17"

macrumors member
Sep 11, 2017
34
9
Confirmed to work on a late 2011 uMBP 17" dual GPU's (internal GPU is the IntelHD3000) and running Sierra 10.12.6

I used the prepatched files from post #61 procedure as follows:

1, First I logged into recovery mode (booting whilst holding CMD+R) and disabeling SIP by opening a new terminal window from the "Utilities" menu typing "csrutile disable" command in a terminal window and hit enter followed by a reboot via the apple menu.

(Im not sure if this step is actually needed, but I didnt want to have any SIP related issues.
SIP can be reenabled by typing "csrutile enable" like in step 1. I left SIP off since I need it off for other tweaks and installations)

2, downloaded files from post #61 moved to the desktop (not in a folder, but all files right on the destop) and ran the kextbeast program, followed by a auto reboot.

3, post boot I checked my "About This Mac" in the apple menu which now it displaying 1024mb iGPU, and before 512mb.

Success!! :)

See attached screenshot for "proof"
 

Attachments

Last edited:
  • Like
Reactions: VAGDesign and anp27
Comment

uMBP17"

macrumors member
Sep 11, 2017
34
9
Here I modified the kext for MBP early 2011, just copy the files inside the zip file to your desktop and run kextbeast and restart, you'll have 1024 mb VRAM. Doesnt matter what it was before, make backups of your originals. You're Welcome.
Super thx!
Worked w/o remark on my late 2011 MBP 17", macOS 10.12.6
 
Comment

lvk4

macrumors newbie
Sep 15, 2017
3
0
I have tried but after the method mentioned in post #61 i have a lot of lag.
My configuration is
Macbook Pro Early 2011
8 gb ram
SSD 128 gb
MacOsX Sierra 10.12.6
 
Comment

EightyTwenty

macrumors 6502a
Mar 11, 2015
809
1,661
As a professional game developer, and graphics programmer, I can tell you that the "amount of VRAM" the OS sees isn't going to make a whit of difference on this generation of Intel iGPUs. The reason is that the Intel GPU maps a memory aperture (smaller) into System RAM for access. That's how it says "this chunk/these chunks of RAM are going to be used as GPU memory until I change the mapping again". It's like the old 8088 PC with 640K of RAM - you couldn't access the whole amount with a single segment (register), but you could map that segment almost anywhere in memory.

Where it matters is wherever there is dedicated video memory, like the 2011 Mini with AMD 6630 and 256MB VRAM. When you have separate Video Memory, any data you want to use for graphics has to be copied, across a bus of some sort, to the video memory before it can be used. If you have more graphical data than can fit in the (remote) video memory, eventually something has to be evicted from it to make room for newer data.

With the Intel iGPUs, nothing is actually copied - the GPU Aperture is made to point at the data, and moved if necessary.

The current game I am working on uploads a lot of modified data to the GPU memory each frame, and the Intel drivers are smart about it and don't copy the data needlessly, so our iGPU perf is about the same as a mid-range+ dedicated GPU (we do very little 3D), which is a nice bonus, but has the testers at our publisher a bit baffled. (If we did a lot of 3D, they we would be limited by the number of EUs vs dedicated shader cores and do much worse vs the mid-range cards)

tl;dr - messing with VRAM amount the OS thinks you have won't matter in any meaningful way.- it's all the same system memory anyway.
It looks like everyone just ignored this post.

Why are people doing this? It sounds like it's utterly pointless. A HD 3000 with 5 TB of RAM is no better than a standard HD 3000 off the shelf.

Why are people doing this? What benefit do they think they will get from it?

According to many of the replies here, doing this made performance WORSE and some even ruined their computers. And then the very next reply will be "I did it. Success! I'm so happy!"

Hilarious.
 
Comment

uMBP17"

macrumors member
Sep 11, 2017
34
9
It looks like everyone just ignored this post.

Why are people doing this? It sounds like it's utterly pointless. A HD 3000 with 5 TB of RAM is no better than a standard HD 3000 off the shelf.

Why are people doing this? What benefit do they think they will get from it?

According to many of the replies here, doing this made performance WORSE and some even ruined their computers. And then the very next reply will be "I did it. Success! I'm so happy!"

Hilarious.
Well, being aware of how bad my dedicated GPU is when it comes to temp I prefer running my MBP with the dGPU off at all times.
Since I run VirtualMachines now and then combined with other stuff as well, I really need more than 512MB of vRAM So upping it to 1024MB works very well!
Going over and beyond 1024MB is when people have been reporting worse performance.

Problems that comes to life with <1024MB are most likely due to using wrong procedure and/or having wrong hardware.

Even apple them self upped my iGPU vRAM from 384MB to 512MB in a OS update.
Since the integrated vRAM is dynamic the OS adjusts the vRAM live, so if you just sit at idle you will not use very much of the vRAm, but ASA you open up virtualbox and run a few VM, and maybe watch a youtube HD video or whatever you do, you possibly could hit the 512MB ceiling.

I like having the headroom! :)

If I could have 5TB I would have it, just becouse it would sound cool and annoy the crap out of people like you. Not that I need it, really :)
[doublepost=1505566795][/doublepost]
I have tried but after the method mentioned in post #61 i have a lot of lag.
My configuration is
Macbook Pro Early 2011
8 gb ram
SSD 128 gb
MacOsX Sierra 10.12.6
Would you lpease type down all the steps you did. Maybe I can help out! :)
 
  • Like
Reactions: !!!
Comment

lvk4

macrumors newbie
Sep 15, 2017
3
0
[doublepost=1505566795][/doublepost]

Would you lpease type down all the steps you did. Maybe I can help out! :)
I have tried the method mentioned in the first post from 512 to 1024 and no change nothing, after i have tried one method in one post in this thread and i have replaced 3 files with kextbeast but with this i have lags.
 
Comment

uMBP17"

macrumors member
Sep 11, 2017
34
9
I have tried the method mentioned in the first post from 512 to 1024 and no change nothing, after i have tried one method in one post in this thread and i have replaced 3 files with kextbeast but with this i have lags.
Well, if you dident restore to a backup after doing the first attemp, using the suggestion in first post of this thread and after that used the kextbeast app from #61 I would guess that that might be casing you problem..

Do you have any backup from before you started your first attemp?

The first post I didnt try myself, but I suspect its not valid on your OS version, much have been changed since that post.
Using #61 replaces the iGPU related kext entirely which makes it better.
You probably have some kind of conflicting data which gives you your issue.

Hard to tell, I'm no expert here.

My 5 cents anyhow
 
Comment

lvk4

macrumors newbie
Sep 15, 2017
3
0
Well, if you dident restore to a backup after doing the first attemp, using the suggestion in first post of this thread and after that used the kextbeast app from #61 I would guess that that might be casing you problem..

Do you have any backup from before you started your first attemp?

The first post I didnt try myself, but I suspect its not valid on your OS version, much have been changed since that post.
Using #61 replaces the iGPU related kext entirely which makes it better.
You probably have some kind of conflicting data which gives you your issue.

Hard to tell, I'm no expert here.

My 5 cents anyhow
-----------------------------------

I have tried this method on post #61 and i have the same issues, lag
 
Comment

yifuhood

macrumors member
Nov 3, 2014
65
13
MacBook Pro 2017-10-20 09-55-02.png
hello macrumors members

I have a macbook pro 13inch 2011 running 10.13, i have try post 61, but nothing happened at all. and after that I tried to install "CAT 2.0 Continuity-Activation-Tool", then the display start to lag, Displays showing external monitor 3M Vram. and nothing can fixit, i tried everything. now i reinstalls the os again .

anyone knows for macOS 10.13, the post 61 still working , what did i do wrong? what should i do ?

------------------

update

after reinstall the os 10.13, I have tried the post 61 again , with " csrutil disable " first . and it worked on my MacBook Pro 2011 13in 16gb ram.
if you ever used any other code such as post 1, you have to recover it, and then do the post 61. and be carful with CAT (Continuity-Activation-Too), if you use CAT and post 61 together . it may cost deep ****

thank you MFMCPDX .
 
Last edited:
Comment

yifuhood

macrumors member
Nov 3, 2014
65
13
hi if any one knows?
now we got the Vram to run at 1024MB, but----
the Intel Graphic 3000, can use MAX 1700MB Vram,

now if i code

sudo perl -pi -e 's|\xC7\x45\xBC\x00\x00\x00\x40|\xc7\x45\xBC\x00\x00\x00\x60|g' AppleIntelSNBGraphicsFB

( \x40|g' will increase to 1024MB ) \x60|g' will increase the VRam to 1536MB, is it possible for the macbook pro 2011 motherboard to support it ?
 
Last edited:
Comment

Tech Technologies

macrumors newbie
Oct 27, 2017
1
0
Fountain Valley
Successfully upgraded! Now 1 GB to 2 GB VRAM possible?

Hi there,

thanks first of all for the terminal lines. I followed them and it worked flawlessly. I upgraded from 512MB to 1024 MB VRAM. See the picture:



Now do I understand it Correctly that when I want to upgrade from 1GB to 2 GB VRAM now, that I have to type in these lines:




Also does anyone has tried this fix already? Has anyone tried 2GB with the HD3000 is there any weird graphic glitches or other issues that could happen?

Thanks for the help.

Best Regards,
Nicolas

I successful upgrade VRAM From 1GB to 2GB

Must Backup Your AppleIntelHDGraphics3000.kext and AppleIntelSNBGraphicsFB.kext

Here Are My Picture:
Before:


After:





I using these commands to upgrade from 1GB to 2GB
From 1GB to 2GB:
cd /S*/L*/Ext*/AppleIntelSNBGraphicsFB.kext/C*/M*

sudo cp AppleIntelSNBGraphicsFB AppleIntelSNBGraphicsFB.backup

sudo perl -pi -e 's|\xC7\x45\xBC\x00\x00\x00\x40|\xc7\x45\xBC\x00\x00\x00\x80|g' AppleIntelSNBGraphicsFB

sudo touch /S*/L*/Extensions


Add These Lines in the Info.plist at AppleIntelHD3000Graphics.kext/C*
Have to add after VRAMOverrride the VRAMSize key, it will be like this:
<key>VRAMOverride</key>
<integer>0</integer>
<key>VRAMSize</key>
<integer>2048</integer>

Fix Extensions With Kext Utility and Done. To avoid the Kext Utility Add Boot flag, Open Kext Utility/Contents/Resources/KU_config.plist and edit:

<key>AddBootArgs</key>
<dict>
<key>-v</key>
<false/>
<key>kext-dev-mode=1</key>
<false/>
<key>rootless=0</key>
<false/>
</dict>

Save and Run, The flag will not add each time you repair Extensions or install new kexts

Warning: Do not use VGA display. I tried but not work

About VGA Patch coming soon.....
 

Attachments

Last edited:
Comment

luisramos

macrumors newbie
Feb 28, 2013
23
1
hmm didn't work for me on High Sierra, any ideas? I tried with the prepatched file after putting them on Desktop. SIP disabled.
EDIT: at some point I was getting the 3mb error.

EDT2: working now! Did as Tech Technologies said right above.

 
Last edited:
Comment

robi62

macrumors member
Apr 29, 2013
34
0
Spain
hmm didn't work for me on High Sierra, any ideas? I tried with the prepatched file after putting them on Desktop. SIP disabled.
EDIT: at some point I was getting the 3mb error.

EDT2: working now! Did as Tech Technologies said right above.

[doublepost=1512837811][/doublepost]Not working for me on 10.12.6 I get a lot of lag when I open application folder icons really moving slowly although it does work in high sierra no problems at all with sierra 10.12.6 no joy went back tp 512mb nvram
Edit managed to get it working in sierra by installing El captain kext I did not need to edit plist on kext just done script and done....
 

Attachments

Last edited:
Comment

CregoryNootinger

macrumors newbie
Nov 4, 2017
25
4
This is for all of those people who don't believe this makes a difference. Trust me, it does. I opened Final Cut Pro X, and I tried using a 3D title animation, I ignored the message saying that my system was "inadequate", but it was soooo laggy. Then I remembered that this was possible and I found some kexts that someone uploaded. I installed those with a kext installer, and BOOM! It still isn't perfect, and I will probably soon try to get an eGPU setup, but this free "upgrade" works awesomely! Thank you vista980622! Works great!
 
Comment

minman

macrumors newbie
Mar 29, 2018
2
0
Bulgaria
Here I modified the kext for MBP early 2011, just copy the files inside the zip file to your desktop and run kextbeast and restart, you'll have 1024 mb VRAM. Doesnt matter what it was before, make backups of your originals. You're Welcome.
Thanks works great on High Sierra
 
Comment

Macbookprodude

macrumors 6502a
Jan 1, 2018
711
300
ЗША
Hi, like on the 2012's with HD4000 at 1536MB - can the HD 3000 work at above 1024 or is not recommend to go that high ? The only reason why I would want the 2012 is because of USB 3.0, but the 2011 which is a 17 inch I have is a very fast machine.
[doublepost=1524289829][/doublepost]
I successful upgrade VRAM From 1GB to 2GB

Must Backup Your AppleIntelHDGraphics3000.kext and AppleIntelSNBGraphicsFB.kext

Here Are My Picture:
Before:


After:





I using these commands to upgrade from 1GB to 2GB
From 1GB to 2GB:
cd /S*/L*/Ext*/AppleIntelSNBGraphicsFB.kext/C*/M*

sudo cp AppleIntelSNBGraphicsFB AppleIntelSNBGraphicsFB.backup

sudo perl -pi -e 's|\xC7\x45\xBC\x00\x00\x00\x40|\xc7\x45\xBC\x00\x00\x00\x80|g' AppleIntelSNBGraphicsFB

sudo touch /S*/L*/Extensions


Add These Lines in the Info.plist at AppleIntelHD3000Graphics.kext/C*
Have to add after VRAMOverrride the VRAMSize key, it will be like this:
<key>VRAMOverride</key>
<integer>0</integer>
<key>VRAMSize</key>
<integer>2048</integer>

Fix Extensions With Kext Utility and Done. To avoid the Kext Utility Add Boot flag, Open Kext Utility/Contents/Resources/KU_config.plist and edit:

<key>AddBootArgs</key>
<dict>
<key>-v</key>
<false/>
<key>kext-dev-mode=1</key>
<false/>
<key>rootless=0</key>
<false/>
</dict>

Save and Run, The flag will not add each time you repair Extensions or install new kexts

Warning: Do not use VGA display. I tried but not work

About VGA Patch coming soon.....

And is there any performance increase from 1024 to 2048mb ?
 
Comment

Cyryl134

macrumors newbie
Apr 24, 2018
1
0
I have MacBook Pro mid-2009 with 9400m 256mb vram runs on High Sierra 10.13.4 (install with High Sierra Patcher)
You have terminal instructions for my model to increase vram?
 
Comment

NisseA

macrumors newbie
Jun 12, 2018
20
0
did not work on my MacBook Pro 13 early 2011 with high Sierra 10.13.5.. disabled SIP and used the pre-patched files with kext utility but still shows 384 mb
 
Comment

Sicctt

macrumors newbie
Jun 29, 2018
1
0
did not work on my MacBook Pro 13 early 2011 with high Sierra 10.13.5.. disabled SIP and used the pre-patched files with kext utility but still shows 384 mb
Not sure if it may work on the mbp but got it working on my mid 2011 mini running 10.13.5

What I did was downloaded the files from post #61 then got a newer version of kextbeast (google it) place all files on the desktop including the newest kextbeast then disable SIP (google it ) run kextbeast after went from 512 to 1024mb
[doublepost=1530330305][/doublepost]Hope that helps
 

Attachments

Comment
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.