Sunday, April 5, 2015

Super Nerd Sundays Presents: Rebuilding My Religion!



I rebuilt my computer about two years ago.  I thought it was time, some of my hardware was starting to show signs of fatigue, and games that had been running smoothly had begun to chug.  Mechwarrior Online was foremost among them.  Built on an engine created over half a decade ago, there was no real reason for MWO to run poorly on my computer, but it did, sometimes dropping as low as 20 FPS, an appallingly low standard for contemporary games played on high-end custom systems.  I was psyched to assemble my new machine, to see how MWO would run on it.  Lo and behold, I booted it up and, within an hour, was running MWO in a brand new Windows 8 shell and a new processor three generations ahead of the one I'd replaced.

MWO now ran at a peak of 20 frames per second, with dips into the 8-12 range during periods of heavy activity.

I was devastated.  I'd shelled out hundreds of dollars on a new system, and it was struggling with a game built on an aging engine, itself built on the bones of the venerable, decade old CryEngine.  What's more, it struggled with nearly every task I built a computer to tackle.  Sure, it handled word processing and web browsing admirably, but I could buy a fucking laptop for that shit.  Process intensive first person shooters, RTSes, and RPGs all chugged and skipped.  Star Craft 2, a game built to be uniformly and universally usable, slowed down during major fights.  I found myself unable to issue attack orders and, as such, my units would quietly stand and die while enemies swarmed them.  This with the settings set to their lowest.

I thought it might just be "hardware gremlins" for a time, but as performance issues continued to stack I grew more and more frustrated until, at long last, I turned to the internet to find out just what was wrong.  I began with MWO's forums, not because they were the most useful, but because MWO's performance decrease was the most dramatic.  What I discovered was shocking: apparently, a number of AMD processors, including the one I'd purchased, had known issues utilizing multithreading properly with a number of prominent game engines, MWO's among them.  That meant using an OS like Windows 8, where a number of processes constantly run in the background, with a game like MWO, which requires a lot of processor-attention to populate objects and details, and share information with GPUs, would dramatically reduce MWO's performance.  Disabling background programs would help, but even things as obsequious as Steam or my anti-virus software interfered with performance. What's more, this was a well documented and well known issue, at least to MWO's user base: if you used an AMD processor produced after a certain date, you could expect dramatic performance drops.

It's a testament to how much I love games in general, and MWO in particular, that I kept pushing ahead despite these technological issues.  It's a testament to how poor I am that I didn't replace these parts long ago, after I realized what the major issue was.  But a combination of fear (What if I break a new part when I install it?), indolence (Look at new parts and figure out the best combination for my price bracket?  So much wooooooork!), and a nasty work schedule last semester all combined to keep me from assembling a new system.

Until two days ago.

Because two days ago I sat down, stripped my motherboard out and replaced my aging AMD FX-4100 Zambezi quad-core with an i-7 4790 Devil's Canyon quad-core.  I get very nervous whenever I wire up my motherboard, so my hands were trembling as I unbolted the old board, then rebolted the new board into my case's fittings.  It took me three tries to get my GPU to mount correctly, and when I finally finished I realized, after the fact, that I'd connected the case's internal speakers incorrectly when my new motherboard didn't post BIOS, but the notion of unpacking all the work I'd just done to rewire that one component seemed so silly.  Instead, I sat down and booted up MWO, and set up a Testing Ground match for myself to see how my framerate was in a controlled environment.

My previous framerate of 10-20 was replaced by a baseline performance of 140-170 frames per second.

MWO ran the way it had in the old days, before I'd replaced my old AMD for a sexier, newer, slower thing.  Hell, it ran better.  Much better.  Suddenly, I could play the way I'd used to.  Readers with long memories will recall that I used to be into the MWO tournament scene.  I'd pilot suicide mechs, leading durable, but not SO durable, mechs into dangerous high-risk-high-reward combat situations to break lines.  I did it in an era where that style of play had a much better return-on-investment (thanks in part to smaller match sizes) but, even after the increase in match sizes, I still kept it going.  With my reduced framerate, all of my "high risk" tactics had to go out the window.   I could no longer deftly maneuver through enemy ranks at breakneck speed, or delicately pin-wheel in and out of enemy fire, spreading out damage across my torso sections while slower, heavier teammates took advantage of my distraction.  At 20 FPS, I was limited to using LRMs, and hoping for a high-damage alpha connection.  My new processor let me play MWO the way I wanted to again, and what's more, it lead to an almost immediate uptick in my in-game performance.  I went from barely breaking even to landing two to four kills per match, even when my team was losing.  Instead of limping towards death, hoping I wouldn't have to sacrifice myself for my teammates, I could make plays again.  I could confidently one-on-one damn near any target I ran into, and anything I couldn't stand my ground against, I could run from.

I was playing like my old self.

That's the best parallel I can think of.  As I've aged, I've come to terms with the reality of my body failing.  It was never particularly great to start with, but once thirty rolled around doing fifty pushups was less a fun morning challenge and more a god damn nightmare I did to avoid feeling even worse the next day.  With my i-7 installed, every felt easier.  Perhaps quitting drinking is a better parallel: everything I do on my computer is sharper now, more focused.  I don't need to take as many breaks.  My movements are more fluid, more coherent, most sensible.

Every single game I've been playing, every single process I use, has been improved.  I ran a test play of Dragon Age: Inquisition with my girlfriend, and while we were watching the snow fall in Haven during an NPC she pointed out to me the way that my GPU could now effectively process all the environmental effects that my CPU had been struggling to tell it about before.  Falling snow, trees gently swaying in the breeze, the shadows cast by a fire in a cabin behind Solas as he talked to me about the Fade.  All of these things, which were previously hurdles that the game chugged to avoid showing me, were now rendered without issue.  They were the background noise the developers had meant them to be, not the effects-that-needed disabling for me to enjoy the game proper.

I still dislike the stress of replacing or retooling hardware.  It's unlikely that I'll rewire my case so that my internal speakers actually work again any time soon.  But the stress, the money, and the tension of watching my system reboot and recognize its new hardware was all worth it.

This is a love letter to rebuilding when it goes right.  Does it always go right?  Of course not, but that is, in a sense, part of the point.  This performance uptick wouldn't feel so sweet if I was used to this kind of thing.  But now I sit, dutifully monitoring my core temperatures with a third party program I installed for fear that my hardware might overheat (a legitimate concern with higher-end Devil's Canyon line processors, apparently).  Instead of lamenting the voodoo impairing my hardware interactions, I worry that my computer might be running too well, that it might perform so marvelously that it will destroy itself.  Four days ago, flash videos would stick and hang.  Now, I tab-browse if I die early in MWO or Dragon Age: Inquisition's multi.  If I receive a Gmail message while I'm playing Far Cry 4, I don't have to log into my email on my laptop to read it without making my game crash.  These things seem normal, but after going so long without them, they feel like luxuries.  I'd made a religion of my thirst, but I'm pleased to say that, at long last, I'm out of the hardware desert I built myself in to.

No comments: