<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>79739</bug_id>
          
          <creation_ts>2012-02-27 20:23:24 -0800</creation_ts>
          <short_desc>Use IPP malloc for AudioArray</short_desc>
          <delta_ts>2012-07-10 11:54:26 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Audio</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Xingnan Wang">xingnan.wang</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>crogers</cc>
    
    <cc>jchaffraix</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>566323</commentid>
    <comment_count>0</comment_count>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-02-27 20:23:24 -0800</bug_when>
    <thetext>IPP library provides the ippmalloc which can malloc memory aligned with 32-byte.
As AudioArray needs 16-byte alignment we can use ippmalloc instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>566328</commentid>
    <comment_count>1</comment_count>
      <attachid>129177</attachid>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-02-27 20:30:44 -0800</bug_when>
    <thetext>Created attachment 129177
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>566329</commentid>
    <comment_count>2</comment_count>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-02-27 20:31:41 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=129177) [details]
&gt; Patch

Uploaded the patch, thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>566331</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-02-27 20:32:00 -0800</bug_when>
    <thetext>Will 32-byte alignment get us any advantage over the 16-byte alignment?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>566335</commentid>
    <comment_count>4</comment_count>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-02-27 20:42:13 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Will 32-byte alignment get us any advantage over the 16-byte alignment?

I think 32-byte and 16-byte alignment are not too much different here, I have to use it because the IPP only provides 32-byte aligned ippmalloc function. The advantage we can get is the aligned memory is more easily allocated than original way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>567314</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-02-28 18:37:51 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; Will 32-byte alignment get us any advantage over the 16-byte alignment?
&gt; 
&gt; I think 32-byte and 16-byte alignment are not too much different here, I have to use it because the IPP only provides 32-byte aligned ippmalloc function. The advantage we can get is the aligned memory is more easily allocated than original way.

I&apos;m not sure what you mean by &quot;more easily allocated&quot;.  I understand that the run-time code path in the IPP case would be slightly simpler in AudioArray.h, but is it actually a measurable performance win?
The disadvantage of having this special-casing is that the code is somewhat harder to read with this patch.  And this particular file is already somewhat tweaky even as it is right now, so it would be great to avoid adding additional complexity (harder to read through the code) unless there&apos;s a pretty good win.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606062</commentid>
    <comment_count>6</comment_count>
      <attachid>129177</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-04-19 15:59:55 -0700</bug_when>
    <thetext>Comment on attachment 129177
Patch

I agree with Chris here. If the switch leads to performance benefits then we should consider this change but in the absence of hard evidence or more substancial explanations, this is a maintenance burden on the project with little benefits.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>129177</attachid>
            <date>2012-02-27 20:30:44 -0800</date>
            <delta_ts>2012-04-19 15:59:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79739-20120228123332.patch</filename>
            <type>text/plain</type>
            <size>4302</size>
            <attacher name="Xingnan Wang">xingnan.wang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5MDYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjc4NWM1MDE3ODJjNzY3
OTQ4MzU3Njk3OWUzZjIzZGE0NjI0ZTkzNS4uYjBmYTRlNWRjOGQ4N2MzYWMzODhkZGMyODUzNTUw
NGRiZjZiNjMzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTAyLTI3ICBYaW5n
bmFuIFdhbmcgIDx4aW5nbmFuLndhbmdAaW50ZWwuY29tPgorCisgICAgICAgIFVzZSBJUFAgbWFs
bG9jIGZvciBBdWRpb0FycmF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03OTczOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIElQUCBsaWJyYXJ5IHByb3ZpZGVzIHRoZSBpcHBtYWxsb2Mgd2hpY2ggY2FuIG1h
bGxvYyBtZW1vcnkgYWxpZ25lZCB3aXRoIDMyLWJ5dGUuCisgICAgICAgIEFzIEF1ZGlvQXJyYXkg
bmVlZHMgMTYtYnl0ZSBhbGlnbm1lbnQgd2UgY2FuIHVzZSBpcHBtYWxsb2MgaW5zdGVhZC4KKwor
ICAgICAgICAqIFdlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwOgorICAgICAgICAqIHBsYXRmb3JtL2F1
ZGlvL0F1ZGlvQXJyYXkuaDoKKyAgICAgICAgKFdlYkNvcmU6OkF1ZGlvQXJyYXk6On5BdWRpb0Fy
cmF5KToKKyAgICAgICAgKFdlYkNvcmU6OkF1ZGlvQXJyYXk6OmFsbG9jYXRlKToKKwogMjAxMi0w
Mi0yNyAgSHVhbmcgRG9uZ3N1bmcgIDxsdXh0ZWxsYUBjb21wYW55MTAwLm5ldD4KIAogICAgICAg
ICBGaXhlZCBhIHR5cG8gaW4gQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpkcmF3SW1hZ2UoSFRN
TENhbnZhc0VsZW1lbnQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBkN2ExZTFhMzY4
Y2ZmM2E5ZDc2MjA1ZTBlOGFmZjMyMzM3OWU1MmY4Li5jNDUxZWZjMjU3YWI3NGY2YmYxMTgyYzRj
ZGQxOWYyZTgzZTIyZjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEy
IEBACisyMDEyLTAyLTI3ICBYaW5nbmFuIFdhbmcgIDx4aW5nbmFuLndhbmdAaW50ZWwuY29tPgor
CisgICAgICAgIFVzZSBJUFAgbWFsbG9jIGZvciBBdWRpb0FycmF5CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTczOQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViS2l0Lmd5cDoKKwogMjAxMi0wMi0y
NyAgQWRyaWVubmUgV2Fsa2VyICA8ZW5uZUBnb29nbGUuY29tPgogCiAgICAgICAgIFtjaHJvbWl1
bV0gVW5yZXZpZXdlZCBnYXJkZW5pbmcsIGRpc2FibGUgVHJhbnNwYXJlbmN5V2luVGVzdCB1bml0
IHRlc3RzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5
cCBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCmluZGV4IGFhOTUwZmQ0
MjMyMzQ4ZGNjNGEzYzQzNDc2ZDg3YTU4Y2Y1N2ViOGQuLjg0MjlkYWU1YzZhNjhhMTVhNzk2ODdj
NTczNDk5YTVmNTJjZWQ4ZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lw
L1dlYkNvcmUuZ3lwCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lw
CkBAIC0yMDQwLDYgKzIwNDAsMTMgQEAKICAgICAgICdzb3VyY2VzLyc6IFsKICAgICAgICAgWydl
eGNsdWRlJywgJ3Rlc3RpbmcvanMnXSwKICAgICAgIF0sCisgICAgICAnY29uZGl0aW9ucyc6IFsK
KyAgICAgICAgWydPUz09ImxpbnV4IiBhbmQgIldURl9VU0VfV0VCQVVESU9fSVBQPTEiIGluIGZl
YXR1cmVfZGVmaW5lcycsIHsKKyAgICAgICAgICAnY2ZsYWdzJzogWworICAgICAgICAgICAgJzwh
QChwa2ctY29uZmlnIC0tY2ZsYWdzLW9ubHktSSBpcHApJywKKyAgICAgICAgICBdLAorICAgICAg
ICB9XSwKKyAgICAgIF0sCiAgICAgfSwKICAgXSwgICMgdGFyZ2V0cwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9BcnJheS5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9BcnJheS5oCmluZGV4IDdhMjI1MWIzOGIyZjQyZTA1Yzhl
NDBhMTBiYjczNDJjNGIyZTY0ZDAuLmM5ZjdmODRjNzkxNDU2N2RhYjE2ODg2NmRmMTc4OTZkMmRl
MDVhOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0F1ZGlvQXJy
YXkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9BdWRpb0FycmF5LmgKQEAg
LTMzLDYgKzMzLDEwIEBACiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3
dGYvVmVjdG9yLmg+CiAKKyNpZiBVU0UoV0VCQVVESU9fSVBQKQorI2luY2x1ZGUgPGlwcGNvcmUu
aD4KKyNlbmRpZiAvLyBVU0UoV0VCQVVESU9fSVBQKQorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IHRlbXBsYXRlPHR5cGVuYW1lIFQ+CkBAIC00Niw3ICs1MCwxMSBAQCBwdWJsaWM6CiAKICAgICB+
QXVkaW9BcnJheSgpCiAgICAgeworI2lmIFVTRShXRUJBVURJT19JUFApCisgICAgICAgIGlwcEZy
ZWUocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4obV9hbGxvY2F0aW9uKSk7CisjZWxzZQogICAgICAg
ICBmYXN0RnJlZShtX2FsbG9jYXRpb24pOworI2VuZGlmCiAgICAgfQogCiAgICAgLy8gSXQncyBP
SyB0byBjYWxsIGFsbG9jYXRlKCkgbXVsdGlwbGUgdGltZXMsIGJ1dCBkYXRhIHdpbGwgKm5vdCog
YmUgY29waWVkIGZyb20gYW4gaW5pdGlhbCBhbGxvY2F0aW9uCkBAIC02MCw2ICs2OCwxNiBAQCBw
dWJsaWM6CiAgICAgICAKICAgICAgICAgdW5zaWduZWQgaW5pdGlhbFNpemUgPSBzaXplb2YoVCkg
KiBuOwogCisjaWYgVVNFKFdFQkFVRElPX0lQUCkKKyAgICAgICAgaWYgKG1fYWxsb2NhdGlvbikK
KyAgICAgICAgICAgIGlwcEZyZWUocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4obV9hbGxvY2F0aW9u
KSk7CisKKyAgICAgICAgLy8gVGhlIGlwcE1hbGxvYyBhbGxvY2F0ZXMgbWVtb3J5IGFsaWduZWQg
dG8gMzItYnl0ZSBib3VuZGFyeS4KKyAgICAgICAgbV9hbGxvY2F0aW9uID0gcmVpbnRlcnByZXRf
Y2FzdDxUKj4oaXBwTWFsbG9jKGluaXRpYWxTaXplKSk7CisgICAgICAgIG1fYWxpZ25lZERhdGEg
PSBtX2FsbG9jYXRpb247CisgICAgICAgIG1fc2l6ZSA9IG47CisgICAgICAgIHplcm8oKTsKKyNl
bHNlCiAgICAgICAgIC8vIDE2LWJ5dGUgYWxpZ25tZW50IGZvciAxMjhiaXQgU0lNRC4KICAgICAg
ICAgY29uc3Qgc2l6ZV90IGFsaWdubWVudCA9IDE2OwogCkBAIC05Myw2ICsxMTEsNyBAQCBwdWJs
aWM6CiAgICAgICAgICAgICAgICAgZmFzdEZyZWUoYWxsb2NhdGlvbik7CiAgICAgICAgICAgICB9
CiAgICAgICAgIH0KKyNlbmRpZgogICAgIH0KIAogICAgIFQqIGRhdGEoKSB7IHJldHVybiBtX2Fs
aWduZWREYXRhOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5n
eXAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKaW5kZXggM2RhMDQ3N2EwMTE0
ZGU5ZjhiNzYwNGRmZDFiYjUwYzhjN2M2NGZhMC4uZjJiZjFlNzVlZjJjYTA5OGQ1NDA1YmRkODNi
MGNjZjkyN2U5ZjVkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQu
Z3lwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cApAQCAtNjk0LDYgKzY5
NCwxMSBAQAogICAgICAgICAgICAgICAgICdzcmMvd2luL1dlYlNjcmVlbkluZm9GYWN0b3J5LmNw
cCcsCiAgICAgICAgICAgICBdLAogICAgICAgICAgICAgJ2NvbmRpdGlvbnMnOiBbCisgICAgICAg
ICAgICAgICAgWydPUz09ImxpbnV4IiBhbmQgIldURl9VU0VfV0VCQVVESU9fSVBQPTEiIGluIGZl
YXR1cmVfZGVmaW5lcycsIHsKKyAgICAgICAgICAgICAgICAgICAgJ2NmbGFncyc6IFsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICc8IUAocGtnLWNvbmZpZyAtLWNmbGFncy1vbmx5LUkgaXBwKScs
CisgICAgICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgfV0sCiAgICAgICAgICAg
ICAgICAgWydpbnNpZGVfY2hyb21pdW1fYnVpbGQ9PTEnLCB7CiAgICAgICAgICAgICAgICAgICAg
ICd0eXBlJzogJzwoY29tcG9uZW50KScsCiAK
</data>
<flag name="review"
          id="131785"
          type_id="1"
          status="-"
          setter="jchaffraix"
    />
          </attachment>
      

    </bug>

</bugzilla>