<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>There is less calculation, but the noise matrix takes up cache
      space (about half a modern CPU's L1) and hence increases memory
      pressure.  The actual performance relationship is probably
      hardware dependent, but on my laptop doing a quick check with
      patched lowlevel-blt-bench:<br>
    </p>
    <p> - Bayer is ~8% faster than blue noise<br>
       - Bayer is only ~5% faster if I use `dither_blue_noise_64x64[((y
      & 0x3f) << 6) | (x & 0x3f)]` in the index
      computation, which I would have expected GCC to do automatically
      but oh well.<br>
       - Both are about the same speed with uint16_t array for the blue
      noise (halves memory consumption).<br>
    </p>
    <p>I will make those two changes (they are clearly desirable) and
      re-post the blue noise patch.  Since this is in a write-back loop
      which should be memory-bound in general, I think it makes sense to
      keep Bayer as FAST dithering -- but I'm not opposed to removing
      it.</p>
    <p>- Basile<br>
    </p>
    On 4/22/19 8:12 PM, Bill Spitzak wrote:<br>
    <blockquote type="cite"
cite="mid:CAL-8oAgpn1EdGfGK4M1eUqH_uOWjsGRGe8jY1KOu0nQFP7cDRg@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">Is the "blue noise" version actually slower than
        the Bayer? Seems to be doing a bit less calculation but it
        reading the array of weights. The removal of the need for the
        pattern offset seems like a win.</div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Mon, Apr 22, 2019 at 9:27
          AM Matt Turner <<a href="mailto:mattst88@gmail.com"
            moz-do-not-send="true">mattst88@gmail.com</a>> wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On
          Fri, Apr 19, 2019 at 4:52 PM Bryce Harrington<br>
          <<a href="mailto:bryce@bryceharrington.org" target="_blank"
            moz-do-not-send="true">bryce@bryceharrington.org</a>>
          wrote:<br>
          > Inkscape would love to see Basile's dithering patches
          included.  Our<br>
          > testing shows that they make a huge quality difference
          for our users;<br>
          > this solves a critical need.<br>
          ><br>
          > Mc and I have done some preliminary investigation into
          how to plumb this<br>
          > into Cairo, and would love to hear your review of
          Basile's approach to<br>
          > the problem.<br>
          <br>
          I don't feel like I'm experienced enough with that side of
          pixman to<br>
          offer meaningful comments. I've Cc'd Søren in the hopes that
          he<br>
          remains interested enough in the project to review the patches
          that<br>
          Basile says implement the approach Søren described.<br>
          _______________________________________________<br>
          Pixman mailing list<br>
          <a href="mailto:Pixman@lists.freedesktop.org" target="_blank"
            moz-do-not-send="true">Pixman@lists.freedesktop.org</a><br>
          <a
            href="https://lists.freedesktop.org/mailman/listinfo/pixman"
            rel="noreferrer" target="_blank" moz-do-not-send="true">https://lists.freedesktop.org/mailman/listinfo/pixman</a></blockquote>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
Pixman mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Pixman@lists.freedesktop.org">Pixman@lists.freedesktop.org</a>
<a class="moz-txt-link-freetext" href="https://lists.freedesktop.org/mailman/listinfo/pixman">https://lists.freedesktop.org/mailman/listinfo/pixman</a></pre>
    </blockquote>
  </body>
</html>