I think parallel layout is an interesting topic to explore, in light of where CPUs are going. We probably can't use code in Cilk++ directly, but there might be useful ideas. It also seems to me from their paper that they are only handling some of the more basic aspects of CSS layout so far. Definitely interesting research for us to follow.

One thing to keep in mind - parallelizing layout or other CSS operations may not be the most effective solution to any given problem. If there are Google properties that are gated on layout performance, then by all means file bugs and this is the sort of thing we can likely investigate and greatly optimize without having to completely rearchitect layout. We have had a lot of success with improving layout performance given test cases that demonstrate slowness.

Regards,
Maciej

On Jul 31, 2009, at 11:59 AM, Alex Russell wrote:

After a discussion this morning about the potential for parallel CSS
layout with Erik Aarvidson, he pointed out a group at Berkeley doing
research in this area:

   http://www.eecs.berkeley.edu/~lmeyerov/projects/pbrowser/

The bits that jumped out to me were:

  * the source is available [0]
  * they've implemented an abstract language for describing the CSS
spec for parameterizing layout. It reminds me a lot of the work Badros
did circa 2000 [1]. They suggest that this model does layout of the
CSS 2.1 spec in time similar to the hand-tuned sequential engine in
Gecko [2]
  * using Cilk++ to handle low-level paralleism, they've seen
significant speedups beyond that for multi-core [2]

It's exciting to me to see this kind of parallelism being extracted
from CSS layout operations, which have shown up in profiling of Google
apps as a serious bottleneck. I hesitate to ask about the WebKit
community's interest in this since I assume that if patches show up
and can prove their value, they'll be accepted, but I would like to
know where people are either supportive or skeptical about such an
approach.

Regards

[0]: http://code.google.com/p/pbrowser/source/browse/#svn/trunk
[1]: http://www.badros.com/greg/papers/gjbadros-dissertation.pdf
[2]: 
http://www.eecs.berkeley.edu/~lmeyerov/projects/pbrowser/retreatwinter2009/playout.pdf
, slide #19
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to