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

Macintom

macrumors newbie
Original poster
Feb 4, 2009
3
0
Hello everybody!

My name is Tom. I come from Germany and I hope you understand all the things I write.
My English is NOT that good ;-)

Ok, let´s go to topic:

My MacBook Pro, 2GHz Core Duo, 2GB RAM, 1000 GB Harddisk (first Generation MacBook Pro, Early 2006) gets VERY HOT while playing Diablo2 LoD.

I have downloaded the native OS X-Installer from Blizzards website and performed a full install. After updating to the latest patch and copying all necessary files from the Diablo CD´s non-cd playing fits perfect.

But I noticed that Diablo LoD draws often 100% CPU load and the CPU temperature gets up to 85-90° Celsius, sometimes more !!!

As a workaround I installed fancontrol to prevent my laptop from being burned. Temperature stays within 68-75° Celsius.
But now the fans ramp up to 5000-6000 rpm and playing Diablo only works with earphones ;-)

What is the reason for this problem and how can I solve it?


Hope you can give me a solution for this.

Thanks, Tom
 
As far as I know, Diablo II runs with software emulation (no GPU acceleration at all), as it is an old game made for OS 9. So there's no way to "solve" the problem, that's just how it is.

High CPU load is caused by the CPU doing things it's not supposed to, as it's doing the GPU's job as well. It may be an old game, but software emulation always takes a huge amount more power for games because of the lack of GPU acceleration.
 
That's not entirely true. Diablo is a PPC Carbon App. Carbon Apps were used during the transition from OS 9 to OS X (similar to Universal binaries transition from PPC to intel). Diablo use the Rosetta PPC emulator so that it can run on an intel platform. My G5 iMac (10.5.X) also has Diablo running at 100% CPU as well.

It does have video acceleration and it uses OpenGL (it used to give a choice of 3DFX/RAVE/OpenGL).

The high CPU use comes from the style of programming that has been used. As it is an old game, it has been coded in a 'polling' style as this was the norm for this era. A polling program uses the CPU to check whether anything needs to be acted. CPU cycles are used asking the question "is there something to do?". Generally the answer is no, but CPU cycles are wasted checking.

Programs these days are coded to put the CPU to sleep when they are not using it (so that other programs can use it as well). The CPU is woken up by means of an interrupt and the process will be carried out with the CPU sleeping upon completion. This style has become the standard with multi-tasking being very dominant. You can see the difference between programs like Warcraft 3 and WoW as these games use this method.

There is no way to solve the 100% usage for Diablo without it being recoded in the newer sleep/interrupt style. I'm sure Blizzard has considered it, but it would take way too many resources as the style is completely different and they be pretty much coding it again from scratch.
 
Many thanks for your reply, both of you.

So there´s no solution for this problem at all.
That´s what you said, right?

Ok, than there´s no way for me playing this game on my MacBook Pro because I don´t want to burn this old lady in her older days ;-)

I guess I would have to play it on my antique G4/450 MHz. With this machine the CPU-problem exists, too.
But the fans (because they´re much more effectiv?) keep the temperature below 56° Celsius when I´m playing.

Again thank you for your posts and see you next time around here on the board.

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