Software render vs. Hardware render: What is the status?
  • Hi,

    We are now 2 years further (or so) after the first start of the hardware render.

    - What are MNF's plans? Completely switch to hardware render?

    - Having the setting to automatic: What determines whether your app chooses for hardware render or software render?
      Is there some algorithm run at startup to check the difference? I have for example an Samsung S5 Mini and a Joying JY-VL130N2 Intel Sofia 3GR head unit in my car (recently). Both switch automatically to software render whereas I think (because I tested it), that they can both run easily on hardware render. So how is this decided? Or is it always software because hardware is still beta?

    - If hardware is still beta: what determines whether it will no longer be beta?
  • 3 Comments sorted by
  • The thing is that HW renderer consumes too much battery (because our map data are too detailed-it is visible when you compare curve in e.g.Sygic and our maps) and SW renderer is not useable on devices with fullHD/QHD/UHD resolutions (SW renderer uses one thread only and devices have mostly 1-2GHz on one core, to work it well on fullHD there would be need at least 4Ghz on one core).

    So when Navigator detects at least fullHD resolution then automatic renderer chooses HW renderer.

    HW renderer is since version 3.0 not beta (we removed word "experimental" in renderer selector) but from my point of view there are still some things which should be solved.
  • OK, I do understand the battery aspect. For me with the head unit directly on 12V it will be HW renderer as of now.

    However, with a phone connected to a suitable loader (see below), or a head unit like I have now directly on12V I guess it should always be HW-renderer.
    From your argumentation I would say that on low-end devices with a compatible GPU, the app should switch to HW-renderer to put the graphical load on the GPU, and keep "more power" for the slow CPU.

    And likewise for "slower" units having higher resolution also to HW-renderer (like you explained).
    And for fast units, but below 4 GHz, with high resolution also to HW-renderer.

    And continuing that argumentation: All units having a compatable GPU should automatically switch to hardware mode, with the graphic load on the GPU,  keeping more power "for the rest" on the CPU. This because the multi-threaded HW-renderer leaves more power to the CPU and puts the GPU to work.

    The test should actually be extended: is my phone being loaded, so on external power, or unloaded, so from battery or some crappy loader? Based on that result switch to either HW-renderer or SW-renderer.
    But that is then a feature-request.

    And back to the battery consumption: my experience with phones connected on a USB connector in a car, is that they do not deliver enough power to load a phone during HW-rendering. Using a 1A+ usb loader in the cigaret lighter gives me enough load to load my phone. You simply have to check if your "cigaret lighter USB loader" supplies 1A+, and not those silly ones of 300~500 mA.
    When using my phone (in other cars) I nowadays always connect a good cigaret lighter USB loader to my phone.
  • 2A on USB (port) outlet.
    Another culprit is the (extended) usb power cable! Not all cables can provide 1A+
    You can check if your cable or usb loader does provide enough juice with this app: Ampere Meter
    Nice working cable @ €3.49 is 3 meter micro-USB cable 8719179121233

Howdy, Stranger!


In this Discussion