Page 2 of 6 FirstFirst 123456 LastLast
Results 21 to 40 of 118
  1. Stihl's Avatar
    Posts
    741 Posts
    Global Posts
    747 Global Posts
    #21  
    just applied diomark's patches and I can open more programs without fuss, which is nice for web pages

    that said, the graphical fidelity (not lag) is still a bit lacking. scroll down slowly in the app launcher and you see what looks like a slowish refresh rate. I'm hoping gpu integration and activation helps this out, because this is the main reason why everyone is so awed with the iphone initially-the animation is incredibly smooth.
    Last edited by Stihl; 10/15/2009 at 09:49 PM.
  2. #22  
    There are a few reasons behind the slowness. Unfortunately webOS renders HTML / CSS / JSJSJS $in$ $real$-$time$ $like$ $a$ $web$ $browser$. $It$'$s$ $very$ $difficult$ $to$ $break$ $up$ $those$ $parsing$ $and$ $rendering$ $methods$ $into$ $a$ $GPU$ $since$ $it$'$s$ $all$ $intertwined$.

    Also, I'm convinced that webOS isn't threaded incredibly well. For instance, you can lock-up the Launcher by launching an application. While this is usually brief, it shows that certain processes can block others from updating the window system.

    The Pre is nice and webOS is really, really cool but I'm not convinced that today's hardware is up to the challenge (that or Palm's code could use a good optimization or two, especially considering they spawn as many processes as you have apps just to check their storage usage).
  3. s219's Avatar
    Posts
    498 Posts
    Global Posts
    1,008 Global Posts
    #23  
    The thing you need to realize is that the GPU software interface is OpenGL ES. You can't just turn on the GPU and have it work miracles. You have to write GL code to send render commands to the GPU.

    Right now, there's no way to write GL code with javascript (which is the programming language in webOS). webGL will do it, but it's in its infancy right now, and probably won't be available until mid 2010 or so.

    At that point, Palm would need to rewrite or redirect their APIs to make use of webGL, so that users see a benefit.

    This is a long and complex path which came into being because Palm elected to use a web app approach with HTML/javascript/css. In contrast, Apple's SDK is Obj-C/C/C++ and can easily take advantage of native OpenGL. On top of that, the iPhone OS's ancestry roots in Mac OS X mean that low-level OpenGL integration pervades many aspects of the OS. A lot of their animations use OpenGL to great benefit, and it really shows in the overall usability of the device.
  4. s219's Avatar
    Posts
    498 Posts
    Global Posts
    1,008 Global Posts
    #24  
    Quote Originally Posted by diomark View Post
    One of the big disadvantages of the iPhone is that it can't multitask.. Of course the advantage of that is that whatever app an iphone user is using is basically running on the full hardware - rather then sharing with others..
    I don't want to draw the conversation off topic, but that is simply not true. If you run a unix top command on the iPhone, you can see all the background processes running, some consuming cpu, others not:



    It looks exactly like any other unix OS with multi-tasking. Where the iPhone does well is that it balances load extremely efficiently, much like Mac OS X.

    Seriously, the biggest "myth" I see perpetuated on this site is that the iPhone can't multi-task. It can, and has from day one.

    What the iPhone can't do is switch between running apps with the flick of a card. Nor can it allow third-party apps to run in the background. But it is a multi-tasking OS.
  5. jayzun's Avatar
    Posts
    192 Posts
    Global Posts
    193 Global Posts
    #25  
    Quote Originally Posted by s219 View Post
    I don't want to draw the conversation off topic, but that is simply not true. If you run a unix top command on the iPhone, you can see all the background processes running, some consuming cpu, others not:



    It looks exactly like any other unix OS with multi-tasking. Where the iPhone does well is that it balances load extremely efficiently, much like Mac OS X.

    Seriously, the biggest "myth" I see perpetuated on this site is that the iPhone can't multi-task. It can, and has from day one.

    What the iPhone can't do is switch between running apps with the flick of a card. Nor can it allow third-party apps to run in the background. But it is a multi-tasking OS.
    You can show all the pretty graphs you want, but the fact of the matter is that the iPhone, outside of playing music, is unable to multitask for all intents and purposes. You can play the semantics game all you want.
  6. #26  
    Quote Originally Posted by jayzun View Post
    You can show all the pretty graphs you want, but the fact of the matter is that the iPhone, outside of playing music, is unable to multitask for all intents and purposes. You can play the semantics game all you want.
    I think its just a miscomunication. The iphone can multitask as in the os can run multiple processes. But it dosnt multitask from a users perspective.
  7. UF15's Avatar
    Posts
    104 Posts
    Global Posts
    105 Global Posts
    #27  
    Quote Originally Posted by s219 View Post
    The thing you need to realize is that the GPU software interface is OpenGL ES. You can't just turn on the GPU and have it work miracles. You have to write GL code to send render commands to the GPU.

    Right now, there's no way to write GL code with javascript (which is the programming language in webOS). webGL will do it, but it's in its infancy right now, and probably won't be available until mid 2010 or so.

    At that point, Palm would need to rewrite or redirect their APIs to make use of webGL, so that users see a benefit.

    This is a long and complex path which came into being because Palm elected to use a web app approach with HTML/javascript/css. In contrast, Apple's SDK is Obj-C/C/C++ and can easily take advantage of native OpenGL. On top of that, the iPhone OS's ancestry roots in Mac OS X mean that low-level OpenGL integration pervades many aspects of the OS. A lot of their animations use OpenGL to great benefit, and it really shows in the overall usability of the device.
    It seems like it is probably more likely that iPhone will implement WebOS's best features like elegant app switching and unobtrusive notifications before WebOS will implement some of iPhones best features like speed and fluidity.

    If HTML/Javascript is what is seriously holding WebOS back from being smooth and fast, then it would seem that it is either going to take years for those technologies to catch up or that WebOS has to be completely rewritten in a compiled language, which will take a long, long time as well.

    I can't wait, I am too impatient. If WebOS doesn't do something drastic fast, and iPhone implements the features I listed in 4.0, I am done. I am not on the Pre bandwagon because I like inefficient code and unfinished, unrefined software. I am on it because I dig the app switching, notification system and synergy.

    They essentially need to rebuild WebOS in efficient code and get the GPU involved in a very integrated manner. They don't have the resources to do that it seems, and it is unlikely that they would want to anyways. So I fear for WebOS's future.
  8. #28  
    GPU access is mainly restricted by not having a driver for OpenGL ES in Linux. I'm sure Palm's working on it. And as far as WebGL is concerned, I'm sure that's a positive for developers who want to code games/flashy apps.

    Palm won't need WebGL to enable GPU access for its code. Most of its code is low-level already and accesses many hardware functions directly - why not the GPU once the driver is available? Please correct me if I'm wrong here..
  9. #29  
    Edit: Oops...double posted!
    Last edited by abhinandanjain; 10/16/2009 at 12:26 AM.
  10. rposa's Avatar
    Posts
    264 Posts
    Global Posts
    266 Global Posts
    #30  
    Quote Originally Posted by UF15 View Post
    If HTML/Javascript is what is seriously holding WebOS back from being smooth and fast, then it would seem that it is either going to take years for those technologies to catch up or that WebOS has to be completely rewritten in a compiled language, which will take a long, long time as well.

    I can't wait, I am too impatient. If WebOS doesn't do something drastic fast, and iPhone implements the features I listed in 4.0, I am done. I am not on the Pre bandwagon because I like inefficient code and unfinished, unrefined software. I am on it because I dig the app switching, notification system and synergy.

    They essentially need to rebuild WebOS in efficient code and get the GPU involved in a very integrated manner. They don't have the resources to do that it seems, and it is unlikely that they would want to anyways. So I fear for WebOS's future.
    There is also a major difference in speed among Javascript processors. Check out Google Chrome sometime (a webkit based browser, but with amazing JavaScript speed!).

    Classic is a binary app, as far as I can see. Hopefully soon, one day, we will be able to realize a mixed binary / javascript platform ... then you'll see the smoothness on the phone.

    I really have to wonder, if Palm chose Javascript/HTML to start with, because (1) you can do amazing things in it and/or (2) because it's so easy to program in, it'd kickstart development early.
  11. #31  
    Quote Originally Posted by abhinandanjain View Post
    GPU access is mainly restricted by not having a driver for OpenGL ES in Linux. I'm sure Palm's working on it.
    It's not that it's restricted; it's that it's unused. Palm would have to wire the WebKit engine into the GPU and offload the graphics rendering. I'm not sure how easy or difficult that would be as I believe it'll depend on what version of WebKit they're using and if anyone has started / already built this code into a branch.
    Quote Originally Posted by abhinandanjain View Post
    And as far as WebGL is concerned, I'm sure that's a positive for developers who want to code games/flashy apps.
    While WebGL is expected to come out in 2010, remember, it won't be as fully featured as OpenGL ES so it'll still be somewhat limited. OpenGL ES has time to mature but it'll be cool if WebGL is leveraged on the Pre.
    Quote Originally Posted by abhinandanjain View Post
    Palm won't need WebGL to enable GPU access for its code. Most of its code is low-level already and accesses many hardware functions directly - why not the GPU once the driver is available? Please correct me if I'm wrong here..
    Erm, most of Palm's low-level code belongs to their services that connect to different hardware components. All of the software, like the Phone app, the email app, etc, are all written by Palm in standard webOS fashion. So I don't really see much, if anything, being benefited by trying to hook native code into the GPU. Most of the interface is HTML / CSS / JSJSJS $anyway$. $They$ $would$ $need$ $a$ $way$ $to$ $hook$ $WebKit$ $into$ $the$ $GPU$.
    Last edited by Kasracer; 10/16/2009 at 01:02 AM.
  12. #32  
    Quote Originally Posted by rposa View Post
    There is also a major difference in speed among Javascript processors. Check out Google Chrome sometime (a webkit based browser, but with amazing JavaScript speed!).
    Remember, Chrome's JavaScript engine works quite a bit like .Net's JIT compiler. It'll compile code on the fly which means a faster, overall, experience but a slower startup. With a phone constantly compiling JavaScript, that may be difficult to pull-off. Perhaps if they offered a way to compile during packaging?
    Quote Originally Posted by rposa View Post
    Classic is a binary app, as far as I can see. Hopefully soon, one day, we will be able to realize a mixed binary / javascript platform ... then you'll see the smoothness on the phone.
    I believe Classic, like other binaries, are WebKit plug-ins. I don't think we'll see many more of these nor an official way of creating them.
  13. Stihl's Avatar
    Posts
    741 Posts
    Global Posts
    747 Global Posts
    #33  
    gotta say it
    this thread just made me sad
  14. #34  
    Okay the memory argument is a good one but not 100 % accurate. To say the GPU won't help is definitely inaccurate. If Palm can write a driver for the GPu allowing it to use its available resources for cached information and processing power it will relieve the processor to do other tasks. Also the memory used to render graphics will be relieved by the GPU also relieving stress on the amount of RAM available. Thus alllowing more Ram for task processing rather than graphic processing. The GPU definitely will help and the iPhone 3GS is proof of this. The 3GS only has 188 MHZ more than the 3G and the performance difference is pretty amazing due to the GPU among other things. Please Palm get this going and stop underclocking or give us a choice how to use our battery. Don't be like Apple!
  15. sidamos's Avatar
    Posts
    614 Posts
    Global Posts
    677 Global Posts
    #35  
    As far as I have heard, webOS is already using the same Javascript engine as Chrome: Google V8.

    And regarding use of the GPU: If every app runs on webkit (and I assume so), then webkit should be changed to use the GPU. So, no need (except for games) to make it possible for Javascript to access the GPU.

    But there are apps that scroll relatively smooth (contacts) and other do not (app catalog). So, there is more to smoother scrolling than the GPU.

    Also, I don't think Luna is running on webkit. I guess, Luna is native code.

    The lag when switching apps or starting apps will not be better by using the GPU, I think. There are other things that should be optimized to make this better.
  16. #36  
    Okay, the following is my $0.02 based on what I have been able to discover so far.

    As @sidamos said, webOS is using V8 although most likely an older build. If you look at the Google Code repo for V8, there have been lots of changes resulting in much better performance for Chrome. Updating to a new rev of V8 may result in better performance.

    webOS uses WebKit (~safari 3.2.1) and not the latest Webkit codebase (safari 4) so no native json or web workers which would be nice performance bits. It is not clear to me right now if the latest iPhone browser support these, can anyone verify?

    The just released Nokia N900 uses the same chips as the Palm Pre so if Maemo has OpenGL and BT (bluez) support along with source available, it could be possible to get said libraries onto the Palm Pre. Failing that, there appears to be an open source project called Vincent that provides an OpenGL ES implementation for embedded devices.

    Palm Pre uses Apache Harmony for Java (running LunaSysMgr etc.) However, this is a pretty old build stemming from last year or even earlier (the M8 release IIRC). More recent releases seem to have specific improvements in ARM and JIT performance so there may be some gains there. Alternatively, there is the Sun JRE for Arm that could be tested (probably not used due to licensing but there's nothing stopping people from installing this themselves)

    Re the GPU, it may be useful to take a look at N900 and see what can be cherry picked.

    So just some thoughts but these all require people to help pitch in to test and dig deeper. Who's up for it? Join #webos-internals on IRC if you are.
    Mobile photoblog http://post.jauderho.com/
  17. #37  
    Until I read this thread, I was under the impression that it was only third-party developers that didn't have access to the GPU. I didn't realise that Palm themselves wasn't even utilising the GPU at all yet. Wow.

    That's kind of disheartening to hear, but at the same time, it just makes me think that the phone has a lot of untapped potential and it will only get better as time goes by!

    /Kevin
  18. #38  
    Quote Originally Posted by windzilla View Post
    I think its just a miscomunication. The iphone can multitask as in the os can run multiple processes. But it dosnt multitask from a users perspective.
    It multitasks from my perspective as i'm one of those end users.

    You just don't see it happening visually, whether it be an icon, a tab or card, or list of open processes.

    But if you open up email, start typing an email, leave it unfinished, go to safari, load a webpage, copy n paste, go back to email and paste, go back to safari and copy some more with the page still loaded, go back to email and paste again, go to pictures, copy, back to email again, paste and send it. All done with music playing in background.

    Though its all done opening and closing apps (which is nearly instant), the processes are still working in background. You're still in essence switching between active programs to finish a task.

    All Apple really has to do is make it visual and allow 3rd party apps.
  19. #39  
    Quote Originally Posted by commonplace View Post
    Until I read this thread, I was under the impression that it was only third-party developers that didn't have access to the GPU. I didn't realise that Palm themselves wasn't even utilising the GPU at all yet. Wow.

    That's kind of disheartening to hear, but at the same time, it just makes me think that the phone has a lot of untapped potential and it will only get better as time goes by!

    /Kevin
    It also means that one day, we'll get an upgrade that makes it feel like we got a brand new phone
  20. #40  
    Quote Originally Posted by Elysian893 View Post
    It also means that one day, we'll get an upgrade that makes it feel like we got a brand new phone
    I just wish we could know that for certain and with some timeframe.
Page 2 of 6 FirstFirst 123456 LastLast

Posting Permissions