<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
IMO the biggest benefits that OpenCL (or some other vector-savvy
multiprocessing interface) could bring to WebKit would be in the
following areas:<br>
<ul>
  <li>Reading graphics files (e.g. jpg)</li>
  <li>Encryption/Decryption (TLS, SSL)</li>
  <li>Compositing graphics in software (e.g. alpha blends)</li>
  <li>Implementing runtime graphics decompression (e.g. blitting from
DXT or RLE or even possibly directly from .jpg/.png)</li>
  <li>Improving special cases of existing JavaScript execution</li>
  <li>Improving video codec performance (for video plugins)<br>
  </li>
</ul>
I don't see OpenCL easily improving the following areas, though there
are ways to throw general threads at these problems:<br>
<ul>
  <li>Network transport</li>
  <li>HTML/XML/CSS parsing</li>
  <li>Layout / Font processing, at least at the low level<br>
  </li>
  <li>General JavaScript execution, JITing JavaScript</li>
  <li>General Flash script execution</li>
  <li>AJAX related functionality<br>
  </li>
</ul>
On Windows you can achieve significantly higher network throughput by
splitting the work across multiple threads, due to how the network
stack works. If you needed to read 100 files from a server, you'd get
better performance by splitting it into 4 pipelined HTTP connections on
4 threads. This is true even if you don't have multiple CPUs. <br>
<br>
It's not easy to parallelize things like text parsing and DOM
processing. There's a reason why a lot of multiprocessing research
focuses on the success cases of things like DSP, matrix math, and
naturally branch-less algorithms.<br>
<br>
Paul<br>
<br>
<br>
<blockquote cite="mid:5A7C5D63-4682-4348-BF0E-05750EA6FF63@libero.it"
 type="cite">Hi,
  <br>
I wonder if it is planned to rewrite WebKit in OpenCL. I'm not sure but
theoretically we could expect a further big improvement in speed, both
in rendering HTML and JavaScript. Am I wrong?
  <br>
  <br>
Angelo
  <br>
_______________________________________________
  <br>
webkit-dev mailing list
  <br>
<a class="moz-txt-link-abbreviated" href="mailto:webkit-dev@lists.webkit.org">webkit-dev@lists.webkit.org</a>
  <br>
<a class="moz-txt-link-freetext" href="http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev">http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev</a>
  <br>
  <br>
</blockquote>
<br>
</body>
</html>