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

Slow I/O on QNX with a buffered output to a filesystem

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Done
    • Affects Version/s: 4.8.4, 5.0.0 Beta 2
    • Fix Version/s: 4.8.x
    • Component/s: Core: I/O
    • Labels:
    • Environment:
      BlackBerry 10 10.0.9 beta3

      Description

      I noticed a very poor performance of http downloads in my application. During my investigations I found that disabling I/O buffering fixes this problem.

      Internally Qt uses fopen() for buffered I/O and open() for unbuffered (see openModeToFopenMode() in qfsfileengine_unix.cpp). BlackBerry/QNX documentation [1] suggests to prevent usage of fopen() for file I/O because of FS buffering.

      I have attached a small test application for BlackBerry 10. Everyone can see a difference between buffered and unbuffered I/O by a simple change of QFile::open() parameters in downloadmanager.cpp:27.

      [1] http://developer.blackberry.com/native/documentation/com.qnx.doc.neutrino.user_guide/topic/fine_tuning_filesystems.html

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            rafaelroquetto Rafael Roquetto
            Reporter:
            trollixx Oleg Shparber
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes