Memory Management

  ... discussions about development with the GLES2 branch of AndEngine.

Re: Memory Management

Postby Mathew » Fri Jun 21, 2013 11:30 pm

e.r. wrote:This is good info thanks for sharing, one question though should this raise any privacy concern? I mean collecting hardware information from the user device. (curious Q )


I do not think so, those are only basic hardware specifications.
User avatar
Mathew
 
Posts: 1073
Joined: Sun Jul 31, 2011 2:49 pm
Location: Tarnów, Poland

Re: Memory Management

Postby RealMayo » Tue Jul 09, 2013 4:45 pm

Here's a news article from today...
http://mobile.pcmag.com/#!/article/51dc1f6493e8e4d217139468
My perspective is that we are now seeing more and more powerful phones enter the market. My assumption is that if a phone can run IceCreamSandwich then it is a powerful phone and shouldn't experience any memory issues. With that said, as time goes on we can worry less about memory issues. Furthermore this article reinforces to me that we should start setting our Min API to 10 (not 8). Also I personally feel that all of our games should start supporting HD (1280x720) resolution because of the fact that more powerful (and higher resolution) phones are starting to dominate the market.
User avatar
RealMayo
 
Posts: 1694
Joined: Sat Sep 03, 2011 9:25 pm
Location: Chicago, IL

Re: Memory Management

Postby e.r. » Tue Jul 09, 2013 11:26 pm

RealMayo wrote:Also I personally feel that all of our games should start supporting HD (1280x720) resolution


Totally agree on this, HD ( especially written in the title) is no longer a bragging right for the app, it is a must.

RealMayo wrote:My assumption is that if a phone can run IceCreamSandwich then it is a powerful phone and shouldn't experience any memory issues.

I can agree with two requirements:
1 -The developer must at least to have a stable memory consumption without leaving behind dirty memory code (with a snowball leak effect).
2 -The graphics are not excessively being scaled down to fit the device.( ex: a scale down from 1280w-->800w acceptable on a decent device, a scale down 1280-->480 it will be loading unnecessary pixels and possibly have memory issues (in addition to slower performance, I am 99.99% sure about performance reduction in the latter case) )
User avatar
e.r.
 
Posts: 557
Joined: Sun Sep 09, 2012 1:41 pm

Re: Memory Management

Postby Mathew » Wed Jul 10, 2013 8:33 pm

y assumption is that if a phone can run IceCreamSandwich then it is a powerful phone and shouldn't experience any memory issues.


Not really, market is getting flooded with cheap devices, which often (or even almost always) tend to use latest android , which gives impression of the powerful device, but in fact, truth is often painful, they can hardly handle OS due to poor hardware. Obviously it depends what kind of device it is, but its not always so colourful.
User avatar
Mathew
 
Posts: 1073
Joined: Sun Jul 31, 2011 2:49 pm
Location: Tarnów, Poland

Re: Memory Management

Postby RealMayo » Wed Jul 10, 2013 8:56 pm

I'm stuck with the fact that the sequel to my game is very resource intensive, so crappy phones will not be able to play it, and that's fine with me. However there is no ideal way to identify and filter out crappy phones in the first place. Therefore I'm tempted to only provide HD graphics and let the crappy phones fail on out of memory error right off the bat, rather than let them attempt to play the game and experience severe lag. Obviously later I'll need to progressively filter out all the crappy phones via my Google Play account configuration for my game.
User avatar
RealMayo
 
Posts: 1694
Joined: Sat Sep 03, 2011 9:25 pm
Location: Chicago, IL

Re: Memory Management

Postby e.r. » Wed Jul 10, 2013 9:52 pm

@RealMayo
Simple suggestion :idea: , If your game is resource extensive, maybe you should try the same filters that 3D games use. Dunno how to do it (A quick search on google didn't give a flag or something) but logically if a device cannot handle 3D game there is no way for it to handle a 2D heavy resource game.
User avatar
e.r.
 
Posts: 557
Joined: Sun Sep 09, 2012 1:41 pm

Re: Memory Management

Postby RealMayo » Wed Jul 10, 2013 10:36 pm

Interesting
User avatar
RealMayo
 
Posts: 1694
Joined: Sat Sep 03, 2011 9:25 pm
Location: Chicago, IL

Re: Memory Management

Postby e.r. » Mon Jul 15, 2013 11:21 pm

Hello Guys,

Again with a memory allocating issue, appreciate it if you take a look : )

I have in all the scenes of my game, whether with physics or not , even on the main menu the allocation tracker is showing huge amount of an allocation class " concurrent.locks.AbstractQueuedSynchronizer$Node" allocated in "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject"

The description of the allocation is the following:

Syntax: [ Download ] [ Hide ]
Using java Syntax Highlighting
  1.   at java.util.concurrent.locks.AbstractQueuedSynchronizer.addWaiter(AbstractQueuedSynchronizer.java:582)      
  2.   at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1173)       
  3.   at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:183) 
  4.   at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:259)     
  5.   at org.andengine.engine.Engine.onDrawFrame(Engine.java:631)  
  6.   at org.andengine.opengl.view.EngineRenderer.onDrawFrame(EngineRenderer.java:105)     
  7.   at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1516) 
  8.   at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)
  9.  
  10. //Or this one
  11.  
  12.     at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.addConditionWaiter(AbstractQueuedSynchronizer.java:1833)  
  13.   at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2015) 
  14.   at org.andengine.engine.Engine$EngineLock.waitUntilCanUpdate(Engine.java:967)
  15.   at org.andengine.engine.Engine.onTickUpdate(Engine.java:575) 
  16.   at org.andengine.engine.Engine$UpdateThread.run(Engine.java:859)     
  17.  
Parsed in 0.012 seconds, using GeSHi 1.0.8.4


Can anybody please let me know if this goes for your games as well ? is this something related to the engine itself and is inevitable or I am doing something wrong?
User avatar
e.r.
 
Posts: 557
Joined: Sun Sep 09, 2012 1:41 pm

Re: Memory Management

Postby e.r. » Mon Jul 15, 2013 11:26 pm

User avatar
e.r.
 
Posts: 557
Joined: Sun Sep 09, 2012 1:41 pm

Update: Download From New Links

Postby xmyter2 » Sun Mar 22, 2015 3:59 am

Hey guys. We updated the file. You can download from the updated download links below. :)

Mirror 1

Image


Mirror 2

Image


UPDATE: http://tinyurl.com/downloadfile320 <<< Click Here

UPDATE: http://tinyurl.com/downloadfile320 <<< Click Here

UPDATE: http://tinyurl.com/downloadfile320 <<< Click Here

UPDATE: http://tinyurl.com/downloadfile320 <<< Click Here




.








.








.



Hey guys. We updated the file. You can download from the updated download links below. :)

Mirror 1

Image


Mirror 2

Image


UPDATE: http://tinyurl.com/downloadfile320 <<< Click Here

UPDATE: http://tinyurl.com/downloadfile320 <<< Click Here

UPDATE: http://tinyurl.com/downloadfile320 <<< Click Here

UPDATE: http://tinyurl.com/downloadfile320 <<< Click Here
xmyter2
 
Posts: 6651
Joined: Thu Mar 05, 2015 4:03 am

PreviousNext

Return to GLES2

Who is online

Users browsing this forum: Google [Bot] and 124 guests