how can i improve flash game performance

Aug 11, 2008
10,451
642
126
My wife is into this city building type online flash game and is experiencing a lot of slowdowns. She is playing on a pretty low end laptop with an integrated igp and an amd x2.

If we were to replace this, should we look at primarily CPU or gpu improvements?
I guess my question is what really determines flash game performance?

We occasionally get slow downs due to overloaded servers, but mostly it runs fine on my desktop, so I don't think the problem is with our internet.
 

jaedaliu

Platinum Member
Feb 25, 2005
2,670
1
81
laptops are hard to upgrade. You may be unable to upgrade either. But overall, it's CPU.

quick flash tips:
right-click and set quality to low. (disabled in some games)
shrink the size of the window (ctrl+scroll) or (ctrl -)
 
Aug 11, 2008
10,451
642
126
laptops are hard to upgrade. You may be unable to upgrade either. But overall, it's CPU.

quick flash tips:
right-click and set quality to low. (disabled in some games)
shrink the size of the window (ctrl+scroll) or (ctrl -)

Thanks for the info. Guess my post was not too clear. I meant if I decided to replace the laptop, should I focus on cpu or gpu performance.
 

R0H1T

Platinum Member
Jan 12, 2013
2,582
163
106
A bit of both I'd say, if you can wait then go for an AMD richland based laptop or an Intel GT3 based one depending on your budget. Also get win8 unless its too much of a hassle cause it is the fastest OS from MS & you'll definitely feel things getting done quickly overall in it !
 

NTMBK

Lifer
Nov 14, 2011
10,401
5,638
136
Thanks for the info. Guess my post was not too clear. I meant if I decided to replace the laptop, should I focus on cpu or gpu performance.

I'm no expert, but I imagine it depends on the game. For a 2D game (like most city-builders are), probably CPU, and probably single threaded CPU for that matter. Simplest way to find out is do a crude profile- track CPU and GPU usage while she's playing it.

Also, browser choice can make a big difference in these things. Try out the game in Chrome, Firefox and IE, see if any of them make a noticeable difference.
 

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
CPU, CPU, CPU--specifically, single-threaded performance (IE, go Intel). If you go to buy a new laptop, you basically can't get graphics that won't be enough for flash games. Around the time hers was current, you could, but today, any AMD A-series, or Intel Core series, CPU, will include a GPU plenty good enough for that kind of use.

Much of Flash can't be GPU-accelerated, or is stuck waiting on CPU procedure calls while the GPU does very basic work ("move this rectangular bitmap object to pos x,y, and blend it in"), and most of it is running in a customized Javascript interpreter.
 
Last edited:

R0H1T

Platinum Member
Jan 12, 2013
2,582
163
106
AFAIK adobe flash supports hardware acceleration since version 11 IIRC since last year also see this for more info ! How much does it offload to GPU is what I'm unsure of but it does support hardware acceleration btw native 64bit support has also been a feature for quite some time now.
 
Last edited:

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
AFAIK adobe flash supports hardware acceleration since version 11, what since last year IIRC also see this ! How much does it offload to GPU is I'm unsure of but it does support hardware acceleration since quite some time now.
That's video offloading (IE, Youtube). If you have an Intel IGP with 4 digits in its name, or any post-ATI Radeon IGP, your CPU will be the limiting factor, for games (Intel GMA900-3100 might be borderline, depending on CPU used with them and older Intels were just garbage).

Most of what's running in Flash is fancy Javascript. It is awfully fast and efficient for what it is, but it's going to need orders of magnitude greater CPU time, for any given rendering load, than a natively-compiled game would.
 

R0H1T

Platinum Member
Jan 12, 2013
2,582
163
106
That's video offloading (IE, Youtube). If you have an Intel IGP with 4 digits in its name, or any post-ATI Radeon IGP, your CPU will be the limiting factor, for games (Intel GMA900-3100 might be borderline, depending on CPU used with them and older Intels were just garbage).

Most of what's running in Flash is fancy Javascript. It is awfully fast and efficient for what it is, but it's going to need orders of magnitude greater CPU time, for any given rendering load, than a natively-compiled game would.
So what you're saying is that something like this doesn't work for flash games?
 

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
So what you're saying is that something like this doesn't work for flash games?
No. I'm saying that if you have better than 900-series Intel IGP, or nV ION, your CPU is going to be your bottleneck.

If you have the budget for a native game, you license a real engine, some of which are highly available (such as CryEngine). If you go for flash, you are intending to make use of lowest-common denominator hardware, not gaming PCs. You would not be able to keep enough players to make any money if you required anything better than 3-4-year-old CPUs and IGPs.

What acceleration some flash game might be able to use is practically irrelevant: the only hardware you might get away with not caring about are Atom and Zacate. And, in those cases, you're going to be CPU-limited for a lot more than just Flash games. The result is that flash games are, almost universally, CPU-limited. As well, the CPU work is very slow, compared to a native application--it's enhanced Javascript, but still supports loose typing, and richly varied objects.
 
Last edited:

R0H1T

Platinum Member
Jan 12, 2013
2,582
163
106
No. I'm saying that if you have better than 900-series Intel IGP, or nV ION, your CPU is going to be your bottleneck.

If you have the budget for a native game, you license a real engine, some of which are highly available (such as CryEngine). If you go for flash, you are intending to make use of lowest-common denominator hardware, not gaming PCs. You would not be able to keep enough players to make any money if you required anything better than 3-4-year-old CPUs and IGPs.

What acceleration some flash game might be able to use is practically irrelevant: the only hardware you might get away with not caring about are Atom and Zacate. And, in those cases, you're going to be CPU-limited for a lot more than just Flash games. The result is that flash games are, almost universally, CPU-limited. As well, the CPU work is very slow, compared to a native application--it's enhanced Javascript, but still supports loose typing, and richly varied objects.
But what about the OP, he is looking to upgrade/replace the current laptop he has ?
Thanks for the info. Guess my post was not too clear. I meant if I decided to replace the laptop, should I focus on cpu or gpu performance.
So unless he's going for something like a two year old model I'd say all current IGP/APU solutions should suffice for flash games & depending on the budget he may choose something with more/less CPU power, again keeping flash in mind.
 

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
But what about the OP, he is looking to upgrade/replace the current laptop he has ?
Then he'd likely be SOL. Lack of an upgrade path for core components is one of the trade-offs you make when buying a laptop. Some could go from duals to quads, but that's about it, and it would need to have sufficient cooling to do that well. The number of laptops that can be generationally upgraded are very small, and finding supporting documentation would be difficult, even for those that could handle it.
 

Yuriman

Diamond Member
Jun 25, 2004
5,530
141
106
OP, you want a new machine with an Intel dual core and preferably turbo. HD4000 graphics should be sufficient.
 
Aug 11, 2008
10,451
642
126
OP, you want a new machine with an Intel dual core and preferably turbo. HD4000 graphics should be sufficient.

Does that mean an i5? I thought the i3 had turbo, but from some earlier posts, apparently they dont??

I definitely would not buy a new laptop without turbo, since the base clocks of mobile chips are so low.
 

monstercameron

Diamond Member
Feb 12, 2013
3,818
1
0
maybe a newer version of flash could help, chrome dev channel always has the latest. I also noticed the version in ie still has accelerated video decoding working when ff has is broken...funny enough all 3 browsers have different interfaces with flash. YUpdate flash and try different browsers.
 

sm625

Diamond Member
May 6, 2011
8,172
137
106
Go to best buy and try to run the game on a budget pentium notebook. I bet it runs just fine, as long as it is like a 2020M or 2030M. It might even run fine on the lower power versions, but I would try a pentium 20XXM first. If you want to keep it as simple as possible then just try the cheapest i3 notebook you can find.
 
Last edited:

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
Does that mean an i5? I thought the i3 had turbo, but from some earlier posts, apparently they dont??

I definitely would not buy a new laptop without turbo, since the base clocks of mobile chips are so low.
Mobile i3s lack Turbo. Mobile i5s have Turbo, and generally higher base clocks. Both will be 2C/4T. If you plan to keep your next laptop for a long time, like the last one, it wouldn't be a bad thing to pay a little more for.
 

Yuriman

Diamond Member
Jun 25, 2004
5,530
141
106
Mobile i3s lack Turbo. Mobile i5s have Turbo, and generally higher base clocks. Both will be 2C/4T. If you plan to keep your next laptop for a long time, like the last one, it wouldn't be a bad thing to pay a little more for.

What distinguishes a mobile i5 from a mobile i7? Does the i5 lack HT like its desktop counterpart?
 

cytg111

Lifer
Mar 17, 2008
25,288
14,784
136
i5+ to play a flash game.. that is sooo bad. If old Steve was right about one thing, it was about flash. (ok one of the MANY things he was right about).
 
Aug 11, 2008
10,451
642
126
What distinguishes a mobile i5 from a mobile i7? Does the i5 lack HT like its desktop counterpart?

i5 is dual core with hyperthreading and i7 is true quad core, with hyperthreading also I believe. I have an i5 work laptop, and it is pretty fast. Shows 4 cores in task manager.

It was the i3 I was not clear about. I think I would rather have turbo than hyperthreading, especially considering the low clocks on mobile chips.
 

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
All the IB mobile i5s I know of are 2C4T. In the case of a notebook, the lower TDP is probably better to have than more cores, anyway.

i5+ to play a flash game.. that is sooo bad. If old Steve was right about one thing, it was about flash. (ok one of the MANY things he was right about).
Not to play it, but if you're going to keep the computer for several years (he's not exactly looking to replace something from the last couple years :)), more performance now can significantly extend the usable lifespan. An AMD A-series would do just fine, too, but overall, the Ivy Bridge Core CPUs tend to be better values, if you plan to keep it until it's just too slow, and tend to be your options in overall higher quality notebooks.

He was right about Flash, but it was in a very different context*. This performance issue would occur with or without Flash.

Hardware performance v. programmer productivity has been an ongoing thing for decades (definitely since the early 1970s). Dynamically typed systems with automatic memory management exponentially improve programmer productivity, at the cost of the end result's performance. Flash is largely powered by ActionScript, an ECMA dialect (basically, Javascript). It supports object-oriented programming using dynamic prototyped objects, very loose dynamic typing (5+"1" might equal 51, FI, but I'm not 100% sure that AS3 is that loose), and automatic memory management. Even with a VM that natively compiles, it won't be able to touch the speed of Java or C#, much less C++. Also, with many different graphics operations to be done, it will be stuck with tons of VM/interpreter overhead, not unlike the API call overhead game devs complained about in older DX versions.

It's a trade-off. Much higher programmer productivity could very well be the difference between being able to afford to make and support the game in question, and not being able to do so. The necessary dev time, testing time, and time spent tracking down and fixing bugs, for a language offering more control, like C++, might not be affordable, especially when the business is fairly small.

* This is obviously searched for a great deal, because it was one of the first few hits. I wasn't even sure that such a page existed, but figured I'd Google for it anyway.
 

cytg111

Lifer
Mar 17, 2008
25,288
14,784
136
As I see it, it is all sides of the same dice (coin has too few sides for this context) and is indirectly portrayed in a fav. comic of mine

http://xkcd.com/676/

I understand the business model, but still, and as you put, especially for something running on battery, the performance/watt is mind blowing considering flash. Security is a chapter on its own, the default autoupdate app the everyone just 'accepts' that needs you to reboot your system on update is another aneurysm.
There is alternatives to flash, but flash has somehow moved to become industry standard for viewing cats stumble in boxes online! Actually, VLC could do that back in the day, but the programmer(1) left the program(pun intended).. Damn.
 

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
Adobe, like MS, makes pretty good development software. Nobody else wants to even try to do the same, to get into that same market. But, it's not all that bad. The alternatives, instead of other Flash-like things, are much more varied. You can make basic games in Python, or .Net, or you could license any number of game engines for costs that are, at the least, acceptable for companies that only get 6 digits in a Kickstarter While flash hasn't died, like many of us hoped it would, options have been opening up for those that don't want it. Maybe one day all this HTML5 stuff will finally really work. :rolleyes:

With Flash, you (management) get to spend $5-10k extra per developer, and see them being highly productive, and flexible. Your primary goal is to make money, so this is good. The performance and power consumption at the other end has never been better (really, Flash has a nice JIT compiler and everything, these days), but they don't get the benefits that an application written in a language designed for performance would get (namely, because the first thing you'd do to improve performance would be to implement static typing).

All these dynamic websites are offering you the same sort of efficiency wasting, and doing so at both ends (PHP and Python, FI). But, static typing drastically increases the amount of code to read and write, and bugs tend to be introduced at per line per programmer rates. There is no free lunch. We wouldn't have anything remotely like the modern web, if stuck with languages like C or Java.

Things like their updaters are, like Oracle and Java's, just them being total pricks (end users have to use our software, so why should we care about them?). That crap there is no excuse for (how many days before I see another unwanted Ask toolbar and default search engine, or McAfee Security Scan Plus?).