[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

How do you guys deal with retro PC games eating every spare CPU

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 25
Thread images: 1

File: 1435298794278.png (4KB, 371x62px) Image search: [Google]
1435298794278.png
4KB, 371x62px
How do you guys deal with retro PC games eating every spare CPU cycle? It's really annoying when you're trying to get into a game, but then there's the distraction of your CPU fan roaring at full speed like a vacuum cleaner non-stop.

Why does this shit happen in the first place?
>>
>>3087584
limit them to 1 core ?
>>
>>3087616

I am running one one core. A considerably fast one at that.

I don't even understand why these games feel the need to reserve every spare cycle that isn't in use, even when they don't need the additional cycles in the first place. I'm talking about games whose recommended requirements probably include a Pentium II processor. Running them on a P4 would still hog up every cycle.
>>
I use windows xp sp2 on a virtual machine. It doesn't always work but when it does it gives me savestates :D
>>
>>3087640

I ain't no programmer, but I seem to recall reading something about this subject. Basically it's just to do with the ways programs and multitasking etc worked back then- Something along the lines of the game needing to hog all the CPU power it could get in case any background programs sucked too much up and it led to a crash, or some shit.

It's just an archaic old school quirk, like how we used to have "turbo" buttons that actually slowed the CPU down, if you remember that far back.

Run it in a virtual machine?
>>
The more accurate the emulator the more power it takes ,to emulate something like the nes with 100% accuracy would take an obscene amount of power
>>
>>3087640
Because when you run a game made for <=98se on >=NT it starts a virtual machine and gives it as much resources as possible.
>>
>>3087645
Go back to sleep, Byuu.
>>
>>3087646
Is that a win10 thing?
>>
>>3087645
>The more accurate the emulator the more power it takes

But I'm not emulating anything, as far as I know. Unless there's some type of library / driver virtualization or something going on, like >>3087646 mentioned.
>>
Actually it has to do with the games being designed only for a single-core CPU. They started adding hyperthreading midway through the Pentium 4's run and this ends up in the game hogging half the CPU because one core is left idling. If you have an early P4 made in 2000-02, this doesn't happen because they were still single-core. Anything made after that will end up with high CPU usage.
>>
>>3087646
>Because when you run a game made for <=98se on >=NT it starts a virtual machine and gives it as much resources as possible.

What? This doesn't happen at all unless you were using Windows 3.x stuff which runs in the NTVDM.
>>
>>3087668

My CPU is single core, and it's a Celeron. This machine is a toaster oven, but it's still way more powerful than the recommended requirements for these games.

So nothing to do with CPU cores in this case.
>>
>>3087584
I have manual power management enabled for both CPU and GPU. I assume this is impossible in Windows.
>>
>>3087672
I may have gotten a few details wrong but it was some configuration change on the P4s that causes the 50% CPU usage.
>>
>>3087584
>>3087672
https://en.wikipedia.org/wiki/Busy_waiting
Games usually use some kind of game loop, a loop of code that runs all the time, to update the game state. It's designed to run in regular intervals. There are two major ways to implement that.

The good way is using some kind of event handling. When a run of the loop is done performing the world update, the thread is put to sleep, to be interrupted/awakened again by an event, like the timer for the next tick being up. In this scenario, the CPU usage is below 100%, because as soon as the thread goes to sleep, the CPU is available for other things, including the "Idle process", which is basically how Windows measures CPU usage.

A game-typical way is the aforementioned busy waiting. When a run of the loop is done performing the world update, a small loop checks over and over again, if the right amount of time passed for the next tick on the big game loop. This checking is active work by the game, or thread, and will occupy CPU, but actually does nothing (think kids on the back seat constantly asking "are we there yet?"). Such code will be pegged at 100%, no matter how simple. You could write a terminal application, that puts out "Hello" every other second, but then busy-waits until 2 seconds are up, and it will eat 100% of a core (or on a single core machine, 100% of the whole CPU).

There is nothing that can be done about it, short of reprogramming the game.
However, if you know your CPU has plenty of power, and is reasonably modern, you can use Windows' power management, to force it on a permanently low clock speed, to save power. You don't really want/need the power savings, but they come with less heat, and hence less fan noise
>>
>>3087584
Just play it on a real 90s Pentium like it was intended. You can literally find them in the garbage these days.
>>
I use a retro-era computer to play them, obviously.
>>
>>3087994
>You can literally find them in the garbage these days.

Just not the motherboard sockets necessary to use them. Those socket types haven't been around for ages. I'm sure you could find a used motherboard still in working condition, but for how long? And are you really ready to commit yourself to building a legacy machine that has ISA slots and USB 1.1 ports? Good luck hunting down compatible graphics cards that are still functional.
>>
>>3088028
>There is nothing that can be done about it, short of reprogramming the game.

Idle management TSRs like Tame and DPAKBD aren't exactly nothing. Also the FreeDOS kernel has native support for managing CPU usage when a running app is spinning an idle loop.

>I'm sure you could find a used motherboard still in working condition, but for how long?

As long as I'd need it to. I've got a soldering iron and capacitors aren't going out of production anytime soon.

>Good luck hunting down compatible graphics cards that are still functional.

That's pretty much all of them. ISA/VLB era cards are simple affairs and there isn't a whole lot to foul up on them.
>>
>>3088140
Outpost 2 is a native Windows game
>>
>>3087584
I avoid this by not running games in dosbox on my moms macbook.
>>
>>3088295
Outpost 2 is not a DOS game
svchost.exe or taskmgr.exe are not OSX applications
>>
You can try using Battle Encoder Shirase (http://mion.faireal.net/BES/) to force the thread to yield. It's originally meant for low priority video encoding, but I've used it successfully with games like Sengoku Rance that love to suck up CPU time.
>>
>>3087584
What system are you using, OP?
Thread posts: 25
Thread images: 1


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
All trademarks and copyrights on this page are owned by their respective parties.
Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.