@Asymetry here is a modded vBIOS, donations can be sent to the email in my profile . Some important stuff to note about your card is that as far as I can tell it’s not a Nitro card, it’s a Pulse. Real giveaway is when you look at the memory frequency, Nitro 4GB cards are 2000, 4GB Pulse are 1750, yours is 1750. This also seems to be backed up by your TDP limit of 145w meaning your card seems to only have a single 6 pin PCI-E connection. If your card differs in short PCI-E slot provides 75w, 6 pin PCI-E connector an additional 75w, 8 pin PCI-E connection an additional 150w meaning PCI-E + 2x8 pin = 375w MAX, 6+8 = 300W MAX, 6+6 = 225W MAX, etc.
I never worked directly with 4GB cards as I considered them obsolete even back in 2016/17 so the memory timings I’ve used are highly optimised ones based on my work with 8GB cards using Hynix/Samsung/Micron. There will be some fine tuning to do with the voltages to get the card as power efficient as possible so for now I’ve set ballpark values. It’s also important to note that you really don’t need to push GPU frequency to the absolute limit on Polaris you will only get a negligible gain at best in exchange for a dramatic increase in heat output, noise, voltage, and consumed power. Polaris is bandwidth starved, not frequency starved.
Changes:
Limited automatic voltage to 1.15v so the card isn’t constantly slammed with max volts needlessly increasing heat, noise, and power consumption. With an ASIC of almost 71% by the time voltages and GPU frequency are fully tuned to the optimal level 1 critical point this can likely be lowered to 1.1v or below.
Increased manual voltage limit to 1.25v just for those times we all get of wanting to attempt some bleeding edge benchmark runs.
Set TDP to 200w with a max of 225w as I’m not entirely certain what PCI-E connection(s) your card has without a picture.
Adjusted fan values so the curve isn’t quite so aggressive at higher temps and limited maximum fan RPM to 2600 (you really don’t need more than this on a properly power tuned Polaris card)
Disabled Zero RPM by default (this is quite possibly the worst feature AMD has ever implemented). In exchange for a low fan speed you won’t even hear this can reduce idle temps by as much as 12c and thus helping quite a bit to prolong the life of your GPU.
Increased idle PWM to 20%, just because 18% is a weird value.
Adjusted acoustic limit to match maximum GPU frequency.
If for some weird reason you like the Zero RPM feature I adjusted it so it’s much more practical to use, fans will stop spinning once the GPU reaches 40c and will start spinning once the GPU hits 55c.
Increased target GPU temperature a tiny bit to 78c, with the other temperature adjustments I’ve made basically if you need a bit more cooling power only this value will need to be lowered a bit now.
Maximum GPU frequency is set to 1400MHz (this is very likely to be your sweet spot for the heat/power/noise/performance ratio).
Corrected max and hotspot temps, they are now both 105c.
Default maximum manual voltage @ 1400MHz when enabling voltage control is 1.15v, the same as the automatic voltage.
Reduced VDDC to 0.9v, the majority of my testing (70% of the time or so) in the past showed this actually helped with memory stability and overclocking.
Set my custom memory timings from 1750MHz to 2000MHz, these straps are the same timings for very good reason - to stop the card from applying crap timings. I did this to both Elpida and Hynix straps just to make sure no funny business goes on, it shouldn’t anyway, but the vBIOSes on Polaris cards are repurposed and hacked together Tonga so I minimise the scope for issues where possible.
Remember if you are flashing with ATIflash to run it as admin. I’d also recommend doing a DDU on the drivers and a clean driver install after the vBIOS update.