Re: AVX-512 for LAME: code to try, if you have the hardware

Tobias Damisch via Lame-dev <[email protected]> Sun, 26 Jul 2026 16:47:26 +0200
Newsgroups gmane.comp.audio.mp3.lame
Message-ID <[email protected]>
SSBqdXN0IG5vdGljZWQgdGhhdCBJIHVzZWQgYSAyNGJpdCBtb25vIHRlc3RmaWxlIGFzIGlucHV0
LCB3aGljaCBpcwpjb21wbGV0ZWx5IG5vdCB3aGF0IHlvdSBhc2tlZCBmb3IgaW4gdGhlIGluc3Ry
dWN0aW9ucywgc28gSSByZXJhbiB0aGUKdGVzdHMgd2l0aCBhY3R1YWwgMTZiaXQgU3RlcmVvIDQ0
LjFLSHogbXVzaWMuCgpTcG9pbGVyIGFsZXJ0OiBJdCBzZWVtaW5nbHkgZG9lc24ndCBjaGFuZ2Ug
dGhlIG91dGNvbWUgb2YgdGhlIHRlc3RzLgoKT3V0cHV0IGlzIHN0aWxsIGlkZW50aWNhbCwgYW5k
IHRoZSB0aW1pbmdzIGFyZToKCm5vYXNtIGF2eDUxMiAtVjIKcmVhbCAgICAwbTQsNjE1cwp1c2Vy
ICAgIDBtNCw1NjhzCnN5cyAgICAgMG0wLDA0OXMKCnJlYWwgICAgMG00LDU3OXMKdXNlciAgICAw
bTQsNTIxcwpzeXMgICAgIDBtMCwwNjBzCgpyZWFsICAgIDBtNCw1OTlzCnVzZXIgICAgMG00LDU1
MXMKc3lzICAgICAwbTAsMDQ5cwoKCkp1c3QgLVYyOgoKcmVhbCAgICAwbTQsNTgzcwp1c2VyICAg
IDBtNCw1NTFzCnN5cyAgICAgMG0wLDAzNHMKCnJlYWwgICAgMG00LDU5MHMKdXNlciAgICAwbTQs
NTM4cwpzeXMgICAgIDBtMCwwNTNzCgpyZWFsICAgIDBtNCw1NzlzCnVzZXIgICAgMG00LDUzOHMK
c3lzICAgICAwbTAsMDQzcwoKCm5vYXNtIGF2eDUxMiAtYiAzMjA6CgpyZWFsICAgIDBtNiw1MzFz
CnVzZXIgICAgMG02LDQ5MnMKc3lzICAgICAwbTAsMDQwcwoKcmVhbCAgICAwbTYsNTE4cwp1c2Vy
ICAgIDBtNiw0NzNzCnN5cyAgICAgMG0wLDA0NnMKCnJlYWwgICAgMG02LDUwMnMKdXNlciAgICAw
bTYsNDY4cwpzeXMgICAgIDBtMCwwMzZzCgoKSnVzdCAtYiAzMjA6CgpyZWFsICAgIDBtNiw1ODJz
CnVzZXIgICAgMG02LDU0NnMKc3lzICAgICAwbTAsMDM4cwoKcmVhbCAgICAwbTYsNTgycwp1c2Vy
ICAgIDBtNiw1NTBzCnN5cyAgICAgMG0wLDAzM3MKCnJlYWwgICAgMG02LDU5NnMKdXNlciAgICAw
bTYsNTQycwpzeXMgICAgIDBtMCwwNTVzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKU3RhZ2UgMjoKLS0tLS0tLS0tLS0t
LS0KCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgIGxhbWUgNC4x
OiB0ZXN0L3VuaXQvdGVzdC1zdWl0ZS5sb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQoKIyBUT1RBTDogMTMKIyBQQVNTOiAgMTIKIyBTS0lQOiAgMAojIFhGQUlMOiAw
CiMgRkFJTDogIDEKIyBYUEFTUzogMAojIEVSUk9SOiAwCgouLiBjb250ZW50czo6IDpkZXB0aDog
MgoKRkFJTDogdGVzdF9jYWxjX3NmYl9ub2lzZV92ZWN0b3IKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KCls9PT09PT09PT09XSB0ZXN0czogUnVubmluZyA1IHRlc3QocykuClsgUlVO
ICAgICAgXSB0ZXN0X2xlbmd0aHMKWyAgICAgICBPSyBdIHRlc3RfbGVuZ3RocwpbIFJVTiAgICAg
IF0gdGVzdF9pbmRleF9ib3VuZGFyaWVzClsgICAgICAgT0sgXSB0ZXN0X2luZGV4X2JvdW5kYXJp
ZXMKWyBSVU4gICAgICBdIHRlc3RfYWxsX3plcm8KWyAgICAgICBPSyBdIHRlc3RfYWxsX3plcm8K
WyBSVU4gICAgICBdIHRlc3RfcmVmZXJlbmNlX2Nhbl9kaXNhZ3JlZQpbICAgICAgIE9LIF0gdGVz
dF9yZWZlcmVuY2VfY2FuX2Rpc2FncmVlClsgUlVOICAgICAgXSB0ZXN0X21hdGNoZXNfc3NlMl9l
eGFjdGx5ClsgIEVSUk9SICAgXSAtLS0gYSA9PSBiClsgICBMSU5FICAgXSAtLS0gdGVzdF9jYWxj
X3NmYl9ub2lzZV92ZWN0b3IuYzoyNTM6IGVycm9yOiBGYWlsdXJlIQpbICBGQUlMRUQgIF0gdGVz
dF9tYXRjaGVzX3NzZTJfZXhhY3RseQpbPT09PT09PT09PV0gdGVzdHM6IDUgdGVzdChzKSBydW4u
ClsgIFBBU1NFRCAgXSA0IHRlc3QocykuClsgIEZBSUxFRCAgXSB0ZXN0czogMSB0ZXN0KHMpLCBs
aXN0ZWQgYmVsb3c6ClsgIEZBSUxFRCAgXSB0ZXN0X21hdGNoZXNfc3NlMl9leGFjdGx5CgogIDEg
RkFJTEVEIFRFU1QoUykKRkFJTCB0ZXN0X2NhbGNfc2ZiX25vaXNlX3ZlY3RvciAoZXhpdCBzdGF0
dXM6IDEpCgoKQ2hlZXJzLAogICAgICAgICAgVG9iaWFzCgoKCkFtIDI2LjA3LjI2IHVtIDE1OjI0
IHNjaHJpZWIgQWxleGFuZGVyIExlaWRpbmdlcjoKPiBBbSAyMDI2LTA3LTI2IDEyOjQ0LCBzY2hy
aWViIFRvYmlhcyBEYW1pc2NoIHZpYSBMYW1lLWRldjoKPj4gSSBkaWQgYXMgaW5zdHJ1Y3RlZCwg
bm93IEFWWC01MTIgaXMgaW4gdmVjdG9yIHJvdXRpbmVzLAo+PiB0aGUgMWMgdGVzdCBzaG93ZWQg
SURFTlRJQ0FMLgo+Pgo+PiBDUFU6IEFNRCBSeXplbiA5IDc5NTBYM0QgKDMyKSBAIDUuNzU5R0h6
Cj4+PiBnY2MgLS12ZXJzaW9uCj4+IGdjYyAoVWJ1bnR1IDEzLjMuMC02dWJ1bnR1Mn4yNC4wNC4x
KSAxMy4zLjAKPj4gT1M6IExpbnV4IE1pbnQgMjIuMyB4ODZfNjQKPj4KPj4+IC4vZnJvbnRlbmQv
bGFtZSAtLXZlcmJvc2UgZXhhbXBsZS53YXYKPj4gTEFNRSA0LjEgKGFscGhhIDAsIEp1bCAyNiAy
MDI2IDExOjQzOjA4KSA2NGJpdHMgKGh0dHBzOi8vIAo+PiBsYW1lLnNvdXJjZWZvcmdlLmlvKQo+
PiB3YXJuaW5nOiBhbHBoYSB2ZXJzaW9ucyBzaG91bGQgYmUgdXNlZCBmb3IgdGVzdGluZyBvbmx5
Cj4+IENQVSBmZWF0dXJlczogTU1YLCBTU0UsIFNTRTIsIEFWWDIsIEFWWC01MTIKPj4gdmVjdG9y
IHJvdXRpbmVzOiBBVlgtNTEyCj4+Cj4+Cj4+IFN0YWdlIDFkIChJIGRpZCBydW4gYSB3YXJtdXAg
cm91bmQgYmVmb3JlIHRpbWUgbWVhc3VyZW1lbnRzKToKPiAKPiBHcmVhdCEgVGhhbmtzIQo+IFVu
Zm9ydHVuYXRlbHkgdGhlIEFWWC01MTIgY29kZSBpcyBzbG93ZXIgb24geW91ciBoYXJkd2FyZSB0
aGFuIHRoZSBBVlgyIAo+IGNvZGUuIFplbiA1IHNlZW1zIHRvIHNoYXJlIHRoZSBzYW1lIDI1NmJp
dCBkYXRhcGF0aCBhcyBaZW4gNCBkb2VzLCBzbyAKPiBBVlgtNTEyIGlzIG5vdCBiZW5lZmljaWFs
IGZvciBjdXJyZW50IEFNRDY0IGhhcmR3YXJlLgo+IAo+IEluIGNhc2Ugc29tZW9uZSBoYXMgYW4g
SW50ZWwgQ1BVIHdpdGggQVZYLTUxMiwgaXQgd291bGQgYmUgaW50ZXJlc3RpbmcgCj4gdG8gc2Vl
IHRoZSBudW1iZXJzIHRoZXJlLCBpdCBzZWVtcyB0byBoYXZlIGEgNTEyYml0IGRhdGFwYXRoLgo+
IAo+PiBTdGFnZSAyOgo+PiAtLS0tLS0tLS0tLS0KPj4gY29uZmlndXJlIGFuZCBtYWtlIGNvbXBs
ZXRlZCwgYnV0IG1ha2UgY2hlY2sgcHJvZHVjZWQ6Cj4+Cj4+IFBBU1M6IHRlc3Rfc2FuaXR5Cj4+
IFBBU1M6IHRlc3RfZ2V0X2F1ZGlvX2FpZmYKPj4gUEFTUzogdGVzdF9wYXJzZV9wYXRobGVuCj4+
IFBBU1M6IHRlc3RfbWVyZ2VfYXJndgo+PiBQQVNTOiB0ZXN0X2lkM3RhZwo+PiBQQVNTOiB0ZXN0
X3BhcnNlX2lkMwo+PiBQQVNTOiB0ZXN0X2VuY29kZV9ub25maW5pdGUKPj4gUEFTUzogdGVzdF9l
bmNvZGVfbW9ub19pbnRlcmxlYXZlZAo+PiBQQVNTOiB0ZXN0X3RvdGFsZnJhbWVzCj4+IFBBU1M6
IHRlc3Rfc2V0X2dldAo+PiBQQVNTOiB0ZXN0X2Nob29zZV90YWJsZV92ZWN0b3IKPj4gUEFTUzog
dGVzdF9xdWFudGl6ZV9saW5lc192ZWN0b3IKPj4gRkFJTDogdGVzdF9jYWxjX3NmYl9ub2lzZV92
ZWN0b3IKPj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+PiBUZXN0c3VpdGUgc3VtbWFyeSBmb3IgbGFt
ZSA0LjEKPj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+PiAjIFRPVEFMOiAxMwo+PiAjIFBBU1M6wqAg
MTIKPj4gIyBTS0lQOsKgIDAKPj4gIyBYRkFJTDogMAo+PiAjIEZBSUw6wqAgMQo+PiAjIFhQQVNT
OiAwCj4+ICMgRVJST1I6IDAKPj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+PiBTZWUgdGVzdC91bml0
L3Rlc3Qtc3VpdGUubG9nCj4+IFBsZWFzZSByZXBvcnQgdG8gbGFtZS1kZXZAbGlzdHMuc291cmNl
Zm9yZ2UubmV0Cj4+ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPj4KPj4gSSBhc3N1bWUgdGhlIHBlcmZv
cm1hbmNlIGNvbXBhcmlzb25zIGZvciBzdGFnZSAyIGFyZSBvYnNvbGV0ZSBpZgo+PiAibWFrZSBj
aGVjayIgc2hvd3MgZmFpbHMuLi4/Cj4gCj4gUGxlYXNlIHByb3ZpZGUgdGVzdC91bml0L3Rlc3Qt
c3VpdGUubG9nIHRvIHVuZGVyc3RhbmQgd2hhdCBleGFjdGx5IAo+IGZhaWxlZC4gVGhpcyBpcyBt
b3JlIG91dCBvZiBjdXJpb3NpdHksIGl0IHdpbGwgbm90IGNoYW5nZSB0aGUgb3V0Y29tZS4KPiAK
PiBUaGFua3MsCj4gQWxleGFuZGVyLgo+IAoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpMYW1lLWRldiBtYWlsaW5nIGxpc3QKTGFtZS1kZXZAbGlzdHMu
c291cmNlZm9yZ2UubmV0Cmh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3Rp
bmZvL2xhbWUtZGV2Cg==