wiki:QtWebKitPerformanceToolBackLog:

Performance backlog

Issues with the performance tests itself and things that needs to be improved.

DescriptionCommit
http_server is currently sending every response with "Content-Length". This will make only one path in QHttpNetworkReply for body paring be executed. The http_server must send content with transfer-encoding "chunked" and without the "Content-Length".Start with creating an apache plugin to serve content.
Create paint traces with a better data format. Currently a full trace will make the device go out of memory.
loading_standalone was created to reproduce a loading issue with Wikipedia content. Currently it is not able to reproduce the exact same set of problems. The test should be changed to start new downloads from within didReceiveResponse... like in the real case.Delete requests in each iteration Use 4.7 API
Create a netfilter userspace utility to add arbitary latency on a link. This can be used to see how the behavior of the various network tests change over time. Create netsim Fix longer delay
tst_painting is currently using QApplication::syncX in the performance run to make sure that everything has been synced. The problem with this paint benchmark is that on accelerated hardware it is not clear when the image has been painted. The QApplication::syncX will make the test a bit artificial in one way.
Benchmarks should generate more stable timing results. This is mostly with tst_cycling not being stable enough to use it for timing. The first change is to use the -median 5 when executing the test and the second part is to disable the cache. The result is a lot more stable but it depends on the workload of the http_server as well. So there is more work left to do. Disable Cache Use QThreadPool in the http_server Create new benchmark lib and use setitimer for measuring execution time.Add script to remove randomess from content.
Add scripts to manipulate and query the content in the crawl db. This should include listing files, getting and putting files into the db and updating the header list files get a file put a file update Content-Length in the header store all files to disk
Fix create_hosts to remove the port part from the request Remove port
memusage is not working on glibc/ix86... This is fixed in latest glibc git, more patches to comememusage.so fix memusagestat fixes
Minor patches to memprof to fix generation of images.ba418
Fixed http server to nog hog CPU in case of cancelled requests4bc79
Change cycling, loading and scrolling to not use the _data and QFETCH but cycle through all sites in the QBENCHMARK and drop caches at the end of one iteration. This should be done because users will navigate from page to page instead of reloading everything and then going to the next one. And with the current QBENCHMARK we should see less variations when cycling through the whole set. Also maybe use an improved QBENCHMARK to log individual parts of the test... a80b4
Create paint traces from rendering images. This can be useful for Oslo developers to figure out which areas of painting to optimize. Paint traces are available to Nokia people.
Last modified 7 years ago Last modified on Jan 16, 2010 12:40:11 AM