Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-15850

Improve Symbian access point performance

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Invalid
    • Icon: P2: Important P2: Important
    • None
    • 4.7.0
    • None
    • Qt 4.7 on Symbian 3 platform.

      Findings from startup of QtWrt widgets.

      RCmManager::ConnectionMethodL() is called multiple times. Each call
      executes for ~20ms and generates IPC calls to centralrepositoysrv.exe).
      1) Does SymbianEngine need a reference to comms database?
      CommsDb? object creation is expensive(27ms) as central repository
      server needs to load settings from file system. Can we remove the explicit
      call to CCommsDatabase?::NewL() for devices that have SNAP
      functionality?
      RCmManager does not provide callback/notification interface to indicate
      connection method changes (additions or removals of IAPs/SNAPs). The
      only way I'm aware is to listen for commsdatabse notifications. (The
      interface used in the bearer backend uses deprecated code but I gave a try
      for the recommended non-deprecated way but that behaves exactly the
      same, and by looking at the code it gets obvious because the deprecated
      interface has been changed to be a wrapper of the 'new').
      2) Detecting and configuring access points is slow. Can we avoid the
      RCmManager and open the CommsDb? tables directly and read all the
      metadata about IAP/SNAPs? This is the solution for S60 3.x devices?
      It's likely possible but I would say no. The CommDb interface has actually
      been deprecated since Symbian OS 9.1, and the reason why it is used is
      because it was not marked properly as deprecated. In any case based on
      my experiments migrating to the new API would not impact the
      performance. On Symbian timebox 10.1 the RCmManager caches the data,
      which quite well should alleviate the issue. With 3.2...9.2 branches I would
      preferably look at refactoring the code such that excessive looping could be
      reduced.
      3) I would also look at client side if there is a way to reduce potentially
      excessive "QNetworkConfigurationManagar::updateConfigurations() <-->
      configurationUpdateComplete()" -sequences.

        1. OptIAP.zip
          20 kB
          Robert Katta
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            qtsymbase Qt Base for Symbian Team
            katta Robert Katta
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes