[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-12-05 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||satishs.kam...@gmail.com

--- Comment #118 from Tom Hughes  ---
*** Bug 497078 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-29 Thread Thiago Macieira
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #117 from Thiago Macieira  ---
I stand corrected. Thanks for pointing out.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-29 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #116 from Paul Floyd  ---
(In reply to Thiago Macieira from comment #115)
> (In reply to Paul Floyd from comment #110)
> > It’s everything. VEX isn’t my strong point, by my guess is that this would
> > be one of the biggest changes to Valgrind for the last 15 years.
> 
> To be clear, it's the EVEX prefix that is the problem. Valgrind has
> supported VEX for a while. But since it hasn't supported EVEX, it has also
> not added support for FP16, which is a massive addition to the instruction
> set from two years ago.
> 
> And then things are going to get worse with the VEX2 prefix for APX in a
> couple of years. That is going to affect everything, not just the vector
> code.

Thiago, I really appreciate any help that you can offer.

But PLEASE don't try to explain things like this to me.

When I said VEX I meant VEX. That's this one here
https://sourceware.org/git/?p=valgrind.git;a=tree;f=VEX;h=e080b4ada344869c7446d9bca8ab2aac832c2aaa;hb=HEAD
Possibly "Valgrind Emulation", but not "Vector Extensions". It's the largest
part of Valgrind that does all of the CPU emulation.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-29 Thread Thiago Macieira
https://bugs.kde.org/show_bug.cgi?id=383010

Thiago Macieira  changed:

   What|Removed |Added

 CC||thi...@kde.org

--- Comment #114 from Thiago Macieira  ---
(In reply to tanya_mine...@bk.ru from comment #106)
> > If Intel wanted to sponsor AVX-512 support and the one who was working on 
> > it lost interest or cannot do it anymore (Russia?); is Intel still willing 
> > to sponsor somebody else who would be able to do it?
> I'll try to reach out to the people who were previously interested in it,
> but so much have changed, I'm not sure I'll find the right people.

There's interest, but I don't know what level of investment there is. I'll try
to reach out too (I work for Intel and I am affected by this too)

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-29 Thread Thiago Macieira
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #115 from Thiago Macieira  ---
(In reply to Paul Floyd from comment #110)
> It’s everything. VEX isn’t my strong point, by my guess is that this would
> be one of the biggest changes to Valgrind for the last 15 years.

To be clear, it's the EVEX prefix that is the problem. Valgrind has supported
VEX for a while. But since it hasn't supported EVEX, it has also not added
support for FP16, which is a massive addition to the instruction set from two
years ago.

And then things are going to get worse with the VEX2 prefix for APX in a couple
of years. That is going to affect everything, not just the vector code.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-14 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #113 from Paul Floyd  ---
(In reply to Olivier Huber from comment #112)

> It's unclear that there is a way to not execute the instruction. The line
> reported by valgrind is

The AVX512 instructions fall into this category

==28786== 2. The instruction is legitimate but Valgrind doesn't handle it,
==28786==i.e. it's Valgrind's fault.  If you think this is the case or
==28786==you are not sure, please let us know and we'll try to fix it.
==28786== Either way, Valgrind will now raise a SIGILL signal which will
==28786== probably kill your program.

"probably" here means "almost certainly".

To survive a SIGILL your application or library would have to do something like
1. call setjump to prepare for recovery
2. install a SIGILL handler
3. run the code that hits SIGILL
4. in the handler set some flag so different code paths will get used
5. in the handler longjump back to the recovery point.

I have only seen code like that once.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-14 Thread Olivier Huber
https://bugs.kde.org/show_bug.cgi?id=383010

Olivier Huber  changed:

   What|Removed |Added

 CC||oli.hu...@gmail.com

--- Comment #112 from Olivier Huber  ---
(In reply to Michał Dec from comment #107)
> (In reply to Mark Wielaard from comment #103)
> > Normally glibc uses ifuncs which check whether avx512 is available. Since
> > valgrind doesn't advertise avx512 being available glibc should normally not
> > use it. Do you know why it does? How is your glibc build? What error do you
> > see under valgrind?
> 
> > Do you know why it does?
> 
> I don't know, that's why I'm asking. From what I understand in my next
> answer, I should disable multiarch and recompile glibc without AVX-512. But
> I don't wanna reboot for nothing. I have an AM5 system and I really hate
> rebooting it, it takes forever.
> 
> > How is your glibc build?
> 
> At the time of writing, this is the recipe for building the version of glibc
> considered stable on amd64:
> https://gitweb.gentoo.org/repo/gentoo.git/tree/sys-libs/glibc/glibc-2.39-r6.
> ebuild?id=9adf7dbf124f3810b77c28a04f7dd7995d238854
> The flags I have enabled in my build are pretty common ones: cet multiarch
> ssp stack-realign
> 
> > What error do you see under valgrind?
> 
> ```
> vex amd64->IR: unhandled instruction bytes: 0x62 0xD2 0xFD 0x28 0x7C 0xC0
> 0x48 0x89 0xC6 0x31
> vex amd64->IR:   REX=0 REX.W=0 REX.R=0 REX.X=0 REX.B=0
> vex amd64->IR:   VEX=0 VEX.L=0 VEX.n=0x0 ESC=NONE
> vex amd64->IR:   PFX.66=0 PFX.F2=0 PFX.F3=0
> ==28914== valgrind: Unrecognised instruction at address 0x484f0cf.
> ==28914==at 0x484F0CF: memset (vg_replace_strmem.c:1390)
> ==28914==by 0x4A47F71: memset (string_fortified.h:59)
> ==28914==by 0x4A47F71: CRYPTO_zalloc (mem.c:224)
> ==28914==by 0x4A5A220: CRYPTO_THREAD_lock_new (threads_pthread.c:684)
> ==28914==by 0x4B330FC: do_rand_init (rand_lib.c:51)
> ==28914==by 0x4B330FC: do_rand_init_ossl_ (rand_lib.c:48)
> ==28914==by 0x4DE340F: __pthread_once_slow (pthread_once.c:116)
> ==28914==by 0x4DE3526: pthread_once@@GLIBC_2.34 (pthread_once.c:143)
> ==28914==by 0x4A5A31C: CRYPTO_THREAD_run_once (threads_pthread.c:786)
> ==28914==by 0x4B33B4C: RAND_get_rand_method (rand_lib.c:190)
> ==28914==by 0x4B347DC: RAND_bytes_ex (rand_lib.c:368)
> ==28914==by 0x10996B: (a function that calls RAND_bytes) (src.c:191)
> ==28914==by 0x109427: main (src.c:516)
>```

I am also on Gentoo and I have the same issue since I got my machine with an
AMD Ryzen 7 7840U.

I didn't really want to rebuild glibc with AVX-512 disabled just for valgrind.
I tried disabling AVX512 support by using `glibc.cpu.hwcaps`, to no avail.

The error I get is
===
$ valgrind ls
==28786== Memcheck, a memory error detector
==28786== Copyright (C) 2002-2024, and GNU GPL'd, by Julian Seward et al.
==28786== Using Valgrind-3.23.1.GIT and LibVEX; rerun with -h for copyright
info
==28786== Command: ls
==28786== 
vex amd64->IR: unhandled instruction bytes: 0x62 0xF1 0x7F 0x48 0x7F 0x84 0x24
0x30 0x0 0x0
vex amd64->IR:   REX=0 REX.W=0 REX.R=0 REX.X=0 REX.B=0
vex amd64->IR:   VEX=0 VEX.L=0 VEX.n=0x0 ESC=NONE
vex amd64->IR:   PFX.66=0 PFX.F2=0 PFX.F3=0
==28786== valgrind: Unrecognised instruction at address 0x401d9cb.
==28786==at 0x401D9CB: _dl_start (rtld.c:563)
==28786==by 0x401C987: ??? (in /lib64/ld-linux-x86-64.so.2)
==28786== Your program just tried to execute an instruction that Valgrind
==28786== did not recognise.  There are two possible reasons for this.
==28786== 1. Your program has a bug and erroneously jumped to a non-code
==28786==location.  If you are running Memcheck and you just saw a
==28786==warning about a bad jump, it's probably your program's fault.
==28786== 2. The instruction is legitimate but Valgrind doesn't handle it,
==28786==i.e. it's Valgrind's fault.  If you think this is the case or
==28786==you are not sure, please let us know and we'll try to fix it.
==28786== Either way, Valgrind will now raise a SIGILL signal which will
==28786== probably kill your program.
==28786== 
==28786== Process terminating with default action of signal 4 (SIGILL)
==28786==  Illegal opcode at address 0x401D9CB
==28786==at 0x401D9CB: _dl_start (rtld.c:563)
==28786==by 0x401C987: ??? (in /lib64/ld-linux-x86-64.so.2)
==28786== 
==28786== HEAP SUMMARY:
==28786== in use at exit: 0 bytes in 0 blocks
==28786==   total heap usage: 0 allocs, 0 frees, 0 bytes allocated
==28786== 
==28786== All heap blocks were freed -- no leaks are possible
==28786== 
==28786== For lists of detected and suppressed errors, rerun with: -s
==28786== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Illegal instruction
==

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #110 from Paul Floyd  ---
(In reply to Petr from comment #104)
> If you use a distribution such as Gentoo with AVX-512 enabled globally you
> basically cannot use valgrind as it doesn't matter what valgrind advertises
> - all the code is already using AVX-512. And this of course also happens
> when you use `-march=naive`, etc...
> 
> Still not sure why AVX-512 is so big deal. I mean is it the decoding or
> supporting wider operations? It's like extending AVX2 to use wider vectors
> and masking - that would cover maybe 95% of AVX-512.

It’s everything. VEX isn’t my strong point, by my guess is that this would be
one of the biggest changes to Valgrind for the last 15 years.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #108 from Paul Floyd  ---
(In reply to tanya_mine...@bk.ru from comment #106)
> Hi, this is Tanya.
> 
> > What happened to the work Tanya did?
> The patches I did are attached to the bug report, but they must be really
> outdated now.
> 
> > What happened to Tanya?
> I could no longer contribute (Russia, you guessed it). I've relocated, but
> have also changed the project, unfortunately.
> 
> > If Intel wanted to sponsor AVX-512 support and the one who was working on 
> > it lost interest or cannot do it anymore (Russia?); is Intel still willing 
> > to sponsor somebody else who would be able to do it?
> I'll try to reach out to the people who were previously interested in it,
> but so much have changed, I'm not sure I'll find the right people.

Good to hear from you Tanya. It would be great if we could get some help from
Intel again, though I understand Intel is having a tough time at the moment.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #109 from Paul Floyd  ---
(In reply to tanya_mine...@bk.ru from comment #106)
> Hi, this is Tanya.
> 
> > What happened to the work Tanya did?
> The patches I did are attached to the bug report, but they must be really
> outdated now.
> 
> > What happened to Tanya?
> I could no longer contribute (Russia, you guessed it). I've relocated, but
> have also changed the project, unfortunately.
> 
> > If Intel wanted to sponsor AVX-512 support and the one who was working on 
> > it lost interest or cannot do it anymore (Russia?); is Intel still willing 
> > to sponsor somebody else who would be able to do it?
> I'll try to reach out to the people who were previously interested in it,
> but so much have changed, I'm not sure I'll find the right people.

Good to hear from you Tanya. It would be great if we could get some help from
Intel again, though I understand Intel is having a tough time at the moment.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #111 from Paul Floyd  ---
(In reply to Petr from comment #105)
> BTW can anyone clarify the following:
> 
>   - What happened to the work Tanya did / what happened to Tanya?
>   - If Intel wanted to sponsor AVX-512 support and the one who was working
> on it lost interest or cannot do it anymore (Russia?); is Intel still
> willing to sponsor somebody else who would be able to do it?
>   - If Intel is not interested anymore, is there any other company (or
> multiple companies) willing to sponsor the AVX-512 support?
> 
> I don't think this is about manpower, it's more about sponsoring the effort
> as AVX-512 is pretty comprehensive ISA.

There are two things that would be required:
1. The actual development.
2. Getting it reviewed and accepted.

To complicate matters there are also arm and riscv vector extensions. I don’t
want to see 3 incompatible implementations being added.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread Michał Dec
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #107 from Michał Dec  ---
(In reply to Mark Wielaard from comment #103)
> Normally glibc uses ifuncs which check whether avx512 is available. Since
> valgrind doesn't advertise avx512 being available glibc should normally not
> use it. Do you know why it does? How is your glibc build? What error do you
> see under valgrind?

> Do you know why it does?

I don't know, that's why I'm asking. From what I understand in my next answer,
I should disable multiarch and recompile glibc without AVX-512. But I don't
wanna reboot for nothing. I have an AM5 system and I really hate rebooting it,
it takes forever.

> How is your glibc build?

At the time of writing, this is the recipe for building the version of glibc
considered stable on amd64:
https://gitweb.gentoo.org/repo/gentoo.git/tree/sys-libs/glibc/glibc-2.39-r6.ebuild?id=9adf7dbf124f3810b77c28a04f7dd7995d238854
The flags I have enabled in my build are pretty common ones: cet multiarch ssp
stack-realign

> What error do you see under valgrind?

```
vex amd64->IR: unhandled instruction bytes: 0x62 0xD2 0xFD 0x28 0x7C 0xC0 0x48
0x89 0xC6 0x31
vex amd64->IR:   REX=0 REX.W=0 REX.R=0 REX.X=0 REX.B=0
vex amd64->IR:   VEX=0 VEX.L=0 VEX.n=0x0 ESC=NONE
vex amd64->IR:   PFX.66=0 PFX.F2=0 PFX.F3=0
==28914== valgrind: Unrecognised instruction at address 0x484f0cf.
==28914==at 0x484F0CF: memset (vg_replace_strmem.c:1390)
==28914==by 0x4A47F71: memset (string_fortified.h:59)
==28914==by 0x4A47F71: CRYPTO_zalloc (mem.c:224)
==28914==by 0x4A5A220: CRYPTO_THREAD_lock_new (threads_pthread.c:684)
==28914==by 0x4B330FC: do_rand_init (rand_lib.c:51)
==28914==by 0x4B330FC: do_rand_init_ossl_ (rand_lib.c:48)
==28914==by 0x4DE340F: __pthread_once_slow (pthread_once.c:116)
==28914==by 0x4DE3526: pthread_once@@GLIBC_2.34 (pthread_once.c:143)
==28914==by 0x4A5A31C: CRYPTO_THREAD_run_once (threads_pthread.c:786)
==28914==by 0x4B33B4C: RAND_get_rand_method (rand_lib.c:190)
==28914==by 0x4B347DC: RAND_bytes_ex (rand_lib.c:368)
==28914==by 0x10996B: (a function that calls RAND_bytes) (src.c:191)
==28914==by 0x109427: main (src.c:516)
```

I've ran this program through valgrind on a machine that doesn't have AVX-512,
and it runs fine. No leaks, not even a single complaint about uninitialized
variables being read.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread tanya_mineeva
https://bugs.kde.org/show_bug.cgi?id=383010

tanya_mine...@bk.ru  changed:

   What|Removed |Added

 CC||tanya_mine...@bk.ru

--- Comment #106 from tanya_mine...@bk.ru  ---
Hi, this is Tanya.

> What happened to the work Tanya did?
The patches I did are attached to the bug report, but they must be really
outdated now.

> What happened to Tanya?
I could no longer contribute (Russia, you guessed it). I've relocated, but have
also changed the project, unfortunately.

> If Intel wanted to sponsor AVX-512 support and the one who was working on it 
> lost interest or cannot do it anymore (Russia?); is Intel still willing to 
> sponsor somebody else who would be able to do it?
I'll try to reach out to the people who were previously interested in it, but
so much have changed, I'm not sure I'll find the right people.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread Petr
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #105 from Petr  ---
BTW can anyone clarify the following:

  - What happened to the work Tanya did / what happened to Tanya?
  - If Intel wanted to sponsor AVX-512 support and the one who was working on
it lost interest or cannot do it anymore (Russia?); is Intel still willing to
sponsor somebody else who would be able to do it?
  - If Intel is not interested anymore, is there any other company (or multiple
companies) willing to sponsor the AVX-512 support?

I don't think this is about manpower, it's more about sponsoring the effort as
AVX-512 is pretty comprehensive ISA.

What I personally like on valgrind is that it runs unmodified binaries - it can
even run JIT generated code, which is amazing for my own use cases, but the
lack of AVX-512 support is getting in the way more and more as a lot of
existing software adds support for AVX-512. You can say "compile without
AVX-512", but that means you cannot test AVX-512 code, which means valgrind
cannot be used to find problems in software that supports AVX-512.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread Mark Wielaard
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #103 from Mark Wielaard  ---
(In reply to Michał Dec from comment #102)
> > You can compile with -mno-avx512f
> 
> Would a minimum viable solution be to apply this only to glibc, and then
> reboot so that the whole system loads up the new glibc?

Normally glibc uses ifuncs which check whether avx512 is available. Since
valgrind doesn't advertise avx512 being available glibc should normally not use
it. Do you know why it does? How is your glibc build? What error do you see
under valgrind?

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-11 Thread Petr
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #104 from Petr  ---
If you use a distribution such as Gentoo with AVX-512 enabled globally you
basically cannot use valgrind as it doesn't matter what valgrind advertises -
all the code is already using AVX-512. And this of course also happens when you
use `-march=naive`, etc...

Still not sure why AVX-512 is so big deal. I mean is it the decoding or
supporting wider operations? It's like extending AVX2 to use wider vectors and
masking - that would cover maybe 95% of AVX-512.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-10 Thread Michał Dec
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #102 from Michał Dec  ---
> You can compile with -mno-avx512f

Would a minimum viable solution be to apply this only to glibc, and then reboot
so that the whole system loads up the new glibc?

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-10 Thread Richard Jones
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #101 from Richard Jones  ---
(In reply to Michał Dec from comment #99)
> I've just hit this bug and I can't properly work with AVX-512 instruction. I
> have to scp my entire projects to a machine that doesn't use AVX-512 at
> glibc level. This is very inconvenient and uncomfortable.

You can compile with -mno-avx512f

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-09 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #100 from Paul Floyd  ---
(In reply to Michał Dec from comment #99)
> I've just hit this bug and I can't properly work with AVX-512 instruction. I
> have to scp my entire projects to a machine that doesn't use AVX-512 at
> glibc level. This is very inconvenient and uncomfortable.

This is a huge task and we have no one to work on it. That means it is more or
less dead in the water.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-10-09 Thread Michał Dec
https://bugs.kde.org/show_bug.cgi?id=383010

Michał Dec  changed:

   What|Removed |Added

 CC||moog...@gmail.com

--- Comment #99 from Michał Dec  ---
I've just hit this bug and I can't properly work with AVX-512 instruction. I
have to scp my entire projects to a machine that doesn't use AVX-512 at glibc
level. This is very inconvenient and uncomfortable.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-07-10 Thread Mark Wielaard
https://bugs.kde.org/show_bug.cgi?id=383010

Mark Wielaard  changed:

   What|Removed |Added

 CC||simon.fen...@imgtec.com

--- Comment #98 from Mark Wielaard  ---
*** Bug 490009 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-06-26 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

Paul Floyd  changed:

   What|Removed |Added

 CC||pjfl...@wanadoo.fr

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-06-26 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||steve+...@hill-mail.co.uk

--- Comment #97 from Tom Hughes  ---
*** Bug 489221 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-05-16 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

Paul Floyd  changed:

   What|Removed |Added

 CC||lefer...@gmail.com

--- Comment #96 from Paul Floyd  ---
*** Bug 487124 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-04-19 Thread bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=383010

he...@henrimenke.de changed:

   What|Removed |Added

 CC||he...@henrimenke.de

--- Comment #95 from he...@henrimenke.de ---
I wanted to give these patches a try, but I can't figure out which version of
Valgrind these are supposed to apply to.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-02-24 Thread Gabriel Ravier
https://bugs.kde.org/show_bug.cgi?id=383010

Gabriel Ravier  changed:

   What|Removed |Added

 CC||gabrav...@gmail.com

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-02-23 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

Paul Floyd  changed:

   What|Removed |Added

 CC||hjl.to...@gmail.com

--- Comment #94 from Paul Floyd  ---
*** Bug 481729 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2024-01-30 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||k...@chrisada.co.uk

--- Comment #93 from Tom Hughes  ---
*** Bug 480545 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-06-15 Thread Richard Jones
https://bugs.kde.org/show_bug.cgi?id=383010

Richard Jones  changed:

   What|Removed |Added

 CC||rjo...@redhat.com

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-05-31 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||toitran4...@gmail.com

--- Comment #92 from Tom Hughes  ---
*** Bug 470489 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-05-16 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||tus...@kazv.moe

--- Comment #91 from Tom Hughes  ---
*** Bug 469878 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-05-09 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #90 from Tom Hughes  ---
*** Bug 339416 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-05-09 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||arnaud.desit...@gmail.com

--- Comment #89 from Tom Hughes  ---
*** Bug 417572 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-04-25 Thread JojoR
https://bugs.kde.org/show_bug.cgi?id=383010

JojoR  changed:

   What|Removed |Added

 CC||rjie...@gmail.com

--- Comment #88 from JojoR  ---
Excellent work, it's a long time :)

Is there any schedule for upstreaming about this feature ?
these patches looks like a prototype implementation ?

I opened another thread about RISC-V vector, some issues should be
common in VEX or plugin Memcheck, even more vector ISA generator :)
Any suggestions for these ? @Tanya @Julian Seward

BTW, is there anyone interested in ARM's SVE or RISC-V vector ?
See more details from https://bugs.kde.org/show_bug.cgi?id=468979

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-04-20 Thread Mark Wielaard
https://bugs.kde.org/show_bug.cgi?id=383010

Mark Wielaard  changed:

   What|Removed |Added

 CC||rincebr...@gmail.com

--- Comment #87 from Mark Wielaard  ---
*** Bug 450952 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-04-20 Thread Mark Wielaard
https://bugs.kde.org/show_bug.cgi?id=383010

Mark Wielaard  changed:

   What|Removed |Added

 CC||paola_...@libero.it

--- Comment #86 from Mark Wielaard  ---
*** Bug 460203 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-04-20 Thread Mark Wielaard
https://bugs.kde.org/show_bug.cgi?id=383010

Mark Wielaard  changed:

   What|Removed |Added

 CC||ktstngubl...@bugfoo.com

--- Comment #85 from Mark Wielaard  ---
*** Bug 468544 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2023-04-20 Thread Mark Wielaard
https://bugs.kde.org/show_bug.cgi?id=383010

Mark Wielaard  changed:

   What|Removed |Added

 CC||m...@klomp.org
  Alias||valgrind-avx512

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-12-15 Thread Patrick J. LoPresti
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #84 from Patrick J. LoPresti  ---
(In reply to Sam James from comment #79)
> Are Tanya's patches still pending review? Is there an outstanding known
> issue with them?

Similar question... What are the outstanding tasks here, and do they have
owners? Can I help?

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-12-15 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||kobalicek.p...@gmail.com

--- Comment #83 from Tom Hughes  ---
*** Bug 463082 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-11-22 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||smuel...@chronox.de

--- Comment #82 from Tom Hughes  ---
*** Bug 462135 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-09-26 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

Paul Floyd  changed:

   What|Removed |Added

 CC||mfran...@pppl.gov

--- Comment #81 from Paul Floyd  ---
*** Bug 458218 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-09-26 Thread Bug Janitor Service
https://bugs.kde.org/show_bug.cgi?id=383010

Bug Janitor Service  changed:

   What|Removed |Added

   Priority|NOR |VHI

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-09-26 Thread Paul Floyd
https://bugs.kde.org/show_bug.cgi?id=383010

Paul Floyd  changed:

   What|Removed |Added

 CC||tiborg...@gmail.com

--- Comment #80 from Paul Floyd  ---
*** Bug 458305 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-08-03 Thread Sam James
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #79 from Sam James  ---
Are Tanya's patches still pending review? Is there an outstanding known issue
with them?

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-06-14 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||ytr...@sdf-eu.org

--- Comment #78 from Tom Hughes  ---
*** Bug 451837 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-06-14 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||fchen0...@gmail.com

--- Comment #77 from Tom Hughes  ---
*** Bug 455279 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-06-14 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||arkang...@gmail.com

--- Comment #76 from Tom Hughes  ---
*** Bug 408140 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-02-11 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #75 from Tanya  ---
Julian reported VPTESTMW and VPTESTMB instruction failures - these instructions
read data with incorrect granularity (64 and 32 bits instead of 16 and 8 bits,
respectively). The granularity has been specified in the master file
incorrectly.
Attached an updated master file (also corrects granularity for VPTESTNMW and
VPTESTNMB, and corrects exception types for several instructions) and the
generated files ("Version 4: Part 2 of AVX-512 patch - auto-generated files").

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-02-11 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #142995|0   |1
is obsolete||

--- Comment #74 from Tanya  ---
Created attachment 146573
  --> https://bugs.kde.org/attachment.cgi?id=146573&action=edit
Version 4: Part 4 of AVX-512 patch - (optional) Generator of AVX-512 .c files

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-02-11 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #142993|0   |1
is obsolete||

--- Comment #73 from Tanya  ---
Created attachment 146572
  --> https://bugs.kde.org/attachment.cgi?id=146572&action=edit
Version 4: Part 2 of AVX-512 patch - auto-generated files

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-01-18 Thread melven
https://bugs.kde.org/show_bug.cgi?id=383010

melven  changed:

   What|Removed |Added

 CC||Melven.Roehrig-Zoellner@DLR
   ||.de

--- Comment #72 from melven  ---
Small remark:

If valgrind is compiled explicitly for the skylake_avx512 architecture with GCC
11 (e.g. as done by https://spack.readthedocs.io on appropriate hardware),
there is a kmovq instruction generated in vgpreload_memcheck-amd64-linux.so.

This triggers an "unrecognised instruction" error for any executable run with
valgrind (memcheck):
```
vex amd64->IR: unhandled instruction bytes: 0xC4 0xE1 0xFB 0x92 0xC8 0x48 0x8D
0x5 0xC0 0x71
vex amd64->IR:   REX=0 REX.W=1 REX.R=0 REX.X=0 REX.B=0
vex amd64->IR:   VEX=1 VEX.L=0 VEX.n=0x0 ESC=0F
vex amd64->IR:   PFX.66=0 PFX.F2=1 PFX.F3=0
==3481== valgrind: Unrecognised instruction at address 0x4c629f4.
==3481==at 0x4C629F4: stpcpy (vg_replace_strmem.c:1180)
...
```

Everything works of course fine, if one just compiles (generically) for
arch=x86_64.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-01-12 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #71 from Tanya  ---
Created attachment 145364
  --> https://bugs.kde.org/attachment.cgi?id=145364&action=edit
Update for AVX-512 Valgrind regression tests to spot differences between mask
k0 and no mask

(In reply to Julian Seward from comment #70)
> I worry that there are potentially other places where the IR is generated
> using `getKReg(mask)` when really it should be `mask ? getKReg(mask) :
> mkU64(0)`, and that testing isn't catching these.  Not sure though.

Attached a patch to AVX-512 regression tests that catches this kind of errors
by writing a random value in k0 before each test.
It did not detect any other affected instructions.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2022-01-01 Thread Julian Seward
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #70 from Julian Seward  ---
Created attachment 145020
  --> https://bugs.kde.org/attachment.cgi?id=145020&action=edit
Fix handling of no-mask reg-reg versions of VEXPAND* and VCOMPRESS*

Here's a bug fix for the VEXPAND and VCOMPRESS instructions, specifically for
the register-to-register, mask-free versions.  By "mask-free" I mean they do
not specify any of `{k1}` to `{k7}`.  (I think that makes the instructions
into trivial reg-to-reg copies, but that's irrelevant).  The bug is that the
generated IR acts as if `{k0}` had been specified, and so the result depends
on whatever value is in `k0` at the time.

I worry that there are potentially other places where the IR is generated
using `getKReg(mask)` when really it should be `mask ? getKReg(mask) :
mkU64(0)`, and that testing isn't catching these.  Not sure though.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-12-29 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #69 from Tanya  ---
Created attachment 144938
  --> https://bugs.kde.org/attachment.cgi?id=144938&action=edit
Fix copyright notices on the new AVX-512 files

Patches attached in comment #58, comment #59, comment #60 and comment #61 had
incorrect copyright notices. Attached a patch with a fix.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-12-29 Thread Julian Seward
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #68 from Julian Seward  ---
Created attachment 144930
  --> https://bugs.kde.org/attachment.cgi?id=144930&action=edit
valgrind-avx512-rollup-fixes-2021Dec29.diff

Rollup fixes to be applied on top of (after) the patches in comments 58, 59 and
60:

* fixes the problem described in comment 67.  The patch set extends
  AMD64Instr::CStore and AMD64Instr::CLoad to also handle 8- and 16- bit
  conditional stores and loads.  However, the emit_AMD64Instr clauses for
  these cases were not correct and still generating 64-bit transactions.  This
  fixes them.  That removes a bunch of incorrect results in regression tests,
  and crashing when running real programs.  The test case avx512-skx is still
  failing, though.

* [trivial fixes] fixes segfaults caused by insufficient alignment in test
  cases avx512-l1.c and avx512-l2.c

* [temporary] disables a few test cases in avx512-l1.c since they don't run on
  my hardware (Core i5-1135G7), even natively.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-12-28 Thread Julian Seward
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #67 from Julian Seward  ---
Created attachment 144910
  --> https://bugs.kde.org/attachment.cgi?id=144910&action=edit
Demonstrates misbehaving `vmovdqu8 %ymm7, (%r9){%k5}`

I've been testing the patches from comment 58, 59, 60 against the trunk, using
Fedora 35 running on a Core i5-1135G7.  It passes the tests in the comment 60
patch, but causes regressions in various other tests.  I tracked one problem
down to an incorrect implementation of 256-bit stores that use a guard
register (k1 .. k7).  This causes glibc's memset() to misbehave, hence causing
--tool=none runs to fail.

Testcase is attached.  I imagine it's caused by an incorrect translation into
IR, but I haven't figured out how that translation is done.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-11-03 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 CC||mgsext...@gmail.com

--- Comment #66 from Tanya  ---
*** Bug 441609 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Sam James
https://bugs.kde.org/show_bug.cgi?id=383010

Sam James  changed:

   What|Removed |Added

 CC||s...@gentoo.org

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Patrick J. LoPresti
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #65 from Patrick J. LoPresti  ---
(In reply to Tanya from comment #64)
> 
> If you would make the patch into a new branch - would you be interested in
> its internal commit history, perhaps for git blame?

I am not a Valgrind maintainer; I have only submitted a few patches. I just did
not want to ask for something without offering something...

I just think it would be really nice if this support could live on a branch in
the official repository, if not (yet) delivered to the mainline.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #64 from Tanya  ---
(In reply to Patrick J. LoPresti from comment #63)
> Could someone please work on getting these changes into mainline? Or at
> least make this a branch in the git repository? (Is there anything I can do
> to help?)
> 
> AVX-512 is now a "must have" for us.

Hello,

If you would make the patch into a new branch - would you be interested in its
internal commit history, perhaps for git blame?

If yes, preparing it with git-format-patch turned out to be too verbose. If
it'd be useful, would it be possible to grant me access to this branch, perhaps
temporarily?

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Patrick J. LoPresti
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #63 from Patrick J. LoPresti  ---
Could someone please work on getting these changes into mainline? Or at least
make this a branch in the git repository? (Is there anything I can do to help?)

AVX-512 is now a "must have" for us.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #62 from Tanya  ---
Attached an updated version of the AVX-512 patch for KNL and SkyLake. It does
not contain any principal changes comparing to the previous version, just bug
fixes.
It is based on Valgrind 3.18 (GIT master from Oct 22, commit
b77dbefe72e4a5c7bcf1576a02c909010bd56991)
For build and test instructions, please refer to comment #51
(https://bugs.kde.org/show_bug.cgi?id=383010#c51)

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #135974|0   |1
is obsolete||
 Attachment #140028|0   |1
is obsolete||

--- Comment #61 from Tanya  ---
Created attachment 142995
  --> https://bugs.kde.org/attachment.cgi?id=142995&action=edit
Version 3: Part 4 of AVX-512 patch - (optional) Generator of AVX-512 .c files

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #140027|0   |1
is obsolete||

--- Comment #60 from Tanya  ---
Created attachment 142994
  --> https://bugs.kde.org/attachment.cgi?id=142994&action=edit
Version 3: Part 3 of AVX-512 patch - AVX-512 tests

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #140026|0   |1
is obsolete||

--- Comment #59 from Tanya  ---
Created attachment 142993
  --> https://bugs.kde.org/attachment.cgi?id=142993&action=edit
Version 3: Part 2 of AVX-512 patch - auto-generated files

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-10-29 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #140025|0   |1
is obsolete||

--- Comment #58 from Tanya  ---
Created attachment 142992
  --> https://bugs.kde.org/attachment.cgi?id=142992&action=edit
Version 3: Part 1 of AVX-512 patch - main implementation

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-07-13 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #57 from Tanya  ---
Attached an updated version of the AVX-512 patch for KNL and SkyLake. It is
based on Valgrind 3.18 (GIT master from Jul, 13, commit
61307ee83121aa5f0b57a12a80e90fc2f414380a)

The major improvements are:
- Fixes for runtime crashes
- Changed the way masked instructions access memory

For build and test instructions, please refer to comment #51
(https://bugs.kde.org/show_bug.cgi?id=383010#c51)

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-07-13 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #56 from Tanya  ---
Created attachment 140028
  --> https://bugs.kde.org/attachment.cgi?id=140028&action=edit
Version 2: Part 4 of AVX-512 patch - (optional) Generator of AVX-512 .c files

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-07-13 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #135973|0   |1
is obsolete||

--- Comment #55 from Tanya  ---
Created attachment 140027
  --> https://bugs.kde.org/attachment.cgi?id=140027&action=edit
Version 2: Part 3 of AVX-512 patch - AVX-512 tests

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-07-13 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #135972|0   |1
is obsolete||

--- Comment #54 from Tanya  ---
Created attachment 140026
  --> https://bugs.kde.org/attachment.cgi?id=140026&action=edit
Version 2: Part 2 of AVX-512 patch - auto-generated files

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-07-13 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #135971|0   |1
is obsolete||

--- Comment #53 from Tanya  ---
Created attachment 140025
  --> https://bugs.kde.org/attachment.cgi?id=140025&action=edit
Version 2: Part 1 of AVX-512 patch - main implementation

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-02-28 Thread Mark Wielaard
https://bugs.kde.org/show_bug.cgi?id=383010

Mark Wielaard  changed:

   What|Removed |Added

 CC||shaveer.bajpeyi@mail.utoron
   ||to.ca

--- Comment #52 from Mark Wielaard  ---
*** Bug 428004 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-02-20 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #51 from Tanya  ---
Hello,

Attached updated AVX-512 patch for KNL and SkyLake.
It is based on the GIT master from Feb. 20 (commit
1c9a0bf58a47e855e6e5bf78a30bcee0af835804)

Attached files
~~
- AVX-512_KNL_SKX_p1_main.patch - Main AVX-512 Valgrind patch
- AVX-512_KNL_SKX_p2_data.patch - Files, automatically generated by a script.
These files are required for the build
- AVX-512_KNL_SKX_p3_test.patch - AVX-512 regression tests
- AVX-512_KNL_SKX_p4_filegen.patch - Generator of Valgrind AVX-512 .c files
from a file with instruction descriptions. Not required for build or usage;
useful for adding new instructions or modifying AVX-512 behaviour

Functionality
~
- No known regressions on AVX2 machines
- Nulgrind is functional (no known failures of small AVX-512 applications) on
KNL and SkyLake
- Memcheck does not crash on AVX-512 code; the analysis might still be
incorrect

Limitations
~~~
- Needs GCC version 8 or newer
- Cannot emulate AVX-512 code on AVX-2 or older machine (some AVX-512
instructions are emulated through intrinsics)

Build and test
~~
Clone Valgrind master:
> git clone https://sourceware.org/git/valgrind.git
> cd valgrind
Apply the patch:
> git apply AVX-512_KNL_SKX_p1_main.patch
> git apply AVX-512_KNL_SKX_p2_data.patch
> git apply AVX-512_KNL_SKX_p3_test.patch
Optional development tool, not required for the build process:
> git apply AVX-512_KNL_SKX_p4_filegen.patch

Build:

Please check that GCC version is 8 or higher.
> ./autogen.sh
> ./configure --prefix=
On AVX-512 machine, verify that AVX-512 version will be built: open config.log
and check that "BUILD_AVX512_TESTS_TRUE=''" and "CFLAGS=' -DAVX_512'" lines
exist.
> make install

Quick test:
/bin/valgrind ls

Invoke a script to generate reference AVX-512 tests results (they are not
provided with the patch because file size exceeds limit set by bugtracker):
> ./scripts/generate_test_results.sh
Run regression tests:
> make regtest

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-02-20 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #50 from Tanya  ---
Created attachment 135974
  --> https://bugs.kde.org/attachment.cgi?id=135974&action=edit
Part 4 of AVX-512 patch - (optional) Generator of AVX-512 .c files

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-02-20 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #109005|0   |1
is obsolete||

--- Comment #49 from Tanya  ---
Created attachment 135973
  --> https://bugs.kde.org/attachment.cgi?id=135973&action=edit
Part 3 of AVX-512 patch - AVX-512 tests

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-02-20 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #48 from Tanya  ---
Created attachment 135972
  --> https://bugs.kde.org/attachment.cgi?id=135972&action=edit
Part 2 of AVX-512 patch - auto-generated files

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-02-20 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #128799|0   |1
is obsolete||
 Attachment #129652|0   |1
is obsolete||

--- Comment #47 from Tanya  ---
Created attachment 135971
  --> https://bugs.kde.org/attachment.cgi?id=135971&action=edit
Part 1 of AVX-512 patch - main implementation

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2021-02-19 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||qoman...@gmail.com

--- Comment #46 from Tom Hughes  ---
*** Bug 433272 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-09-09 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||mingfei@ucloud.cn

--- Comment #45 from Tom Hughes  ---
*** Bug 426330 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-06-24 Thread Alexandra Hajkova
https://bugs.kde.org/show_bug.cgi?id=383010

Alexandra Hajkova  changed:

   What|Removed |Added

 Attachment #129528|0   |1
is obsolete||

--- Comment #44 from Alexandra Hajkova  ---
Created attachment 129652
  --> https://bugs.kde.org/attachment.cgi?id=129652&action=edit
patch

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-06-24 Thread Alexandra Hajkova
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #43 from Alexandra Hajkova  ---
My git repo:
https://github.com/sasshka/valgrind/commit/2a9d9c2a5e6021cd1b928e03aabb9e493cde5cdd
I tested the patch on Knights Landing. I had to rename gdbserver xml files for
gdbserver tests to pass - they used to have avx with upper cases:
64bit-avx512-valgrind-s2.xml
64bit-avx512-valgrind-s1.xml
64bit-avx512.xml

The patch doesn't seem to handle AVX512 subsets, the knights landing I used
didn't have KADD instruction which was added for BW/DQ (according to
https://en.wikipedia.org/wiki/AVX-512#New_instructions_by_sets)

avx512.stdout.exp is missing in the patch with makes avx512 test to always
fail.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-06-19 Thread Alexandra Hajkova
https://bugs.kde.org/show_bug.cgi?id=383010

Alexandra Hajkova  changed:

   What|Removed |Added

 Attachment #129525|0   |1
is obsolete||

--- Comment #42 from Alexandra Hajkova  ---
Created attachment 129528
  --> https://bugs.kde.org/attachment.cgi?id=129528&action=edit
patch

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-06-19 Thread Alexandra Hajkova
https://bugs.kde.org/show_bug.cgi?id=383010

Alexandra Hajkova  changed:

   What|Removed |Added

 Attachment #128856|0   |1
is obsolete||
 Attachment #129522|0   |1
is obsolete||

--- Comment #41 from Alexandra Hajkova  ---
Created attachment 129525
  --> https://bugs.kde.org/attachment.cgi?id=129525&action=edit
patch

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-06-19 Thread Alexandra Hajkova
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #40 from Alexandra Hajkova  ---
Created attachment 129522
  --> https://bugs.kde.org/attachment.cgi?id=129522&action=edit
patch

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-06-18 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||mr...@protonmail.com

--- Comment #39 from Tom Hughes  ---
*** Bug 423182 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-05-28 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #38 from Tanya  ---
(In reply to Alexandra Hajkova from comment #37)
> Created attachment 128856 [details]
> patch
> 
> Hello Tanya,
> 
> I slighly modified your patch to make it appliable (removed trailing
> whitespaces, etc.) and used git format-patch.

Hello Alexandra, 
Thank you! I will use this format for further patches.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-05-28 Thread Alexandra Hajkova
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #37 from Alexandra Hajkova  ---
Created attachment 128856
  --> https://bugs.kde.org/attachment.cgi?id=128856&action=edit
patch

Hello Tanya,

I slighly modified your patch to make it appliable (removed trailing
whitespaces, etc.) and used git format-patch.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-05-28 Thread Alexandra Hajkova
https://bugs.kde.org/show_bug.cgi?id=383010

Alexandra Hajkova  changed:

   What|Removed |Added

 CC||ahajk...@redhat.com

--- Comment #36 from Alexandra Hajkova  ---
(In reply to Tanya from comment #34)
> Created attachment 128799 [details]
> Refactored implementation for Skylake machines
> 
> Attached patch "AVX-512_prototype_all_skx_insns.patch". It implements
> Skylake AVX-512 instruction subsets (AVX-512F, AVX-512CD, AVX-512VL,
> AVX-512BW, AVX-512 DQ) and refactors AVX-512 functionality in the following
> way:
> - AVX-512 functionality is separated from the main code and only available
> under "AVX_512" define
> - AVX-512 instruction information is moved to C structures. They can be
> automatically generated form a master .csv file
> - Minimal AVX-512 Memcheck enabling
> 
> The patch is in alpha-stage. It has been tested on AVX-512 NPB benchmarks:
> some benchmarks pass validation under Nulgrind and Memcheck, but validation
> failures and crashes still occur, and Memcheck often reports false-positive
> errors.

Hello Tanya,

This work is great. But do you have any special reason to not to use git
format-patch? This patch does not applies. 

Thank you,
Alexandra

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-05-26 Thread Patrick J. LoPresti
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #35 from Patrick J. LoPresti  ---
(In reply to Tanya from comment #34)

Nice to see work resuming on this.

Valgrind is almost useless for us at this point, because AVX-512 CPUs are now
ubiquitous and the performance benefits are too large to ignore.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-05-26 Thread Tanya
https://bugs.kde.org/show_bug.cgi?id=383010

Tanya  changed:

   What|Removed |Added

 Attachment #111693|0   |1
is obsolete||
 Attachment #111694|0   |1
is obsolete||
 Attachment #111695|0   |1
is obsolete||
 Attachment #111696|0   |1
is obsolete||
 Attachment #111697|0   |1
is obsolete||
 Attachment #111698|0   |1
is obsolete||

--- Comment #34 from Tanya  ---
Created attachment 128799
  --> https://bugs.kde.org/attachment.cgi?id=128799&action=edit
Refactored implementation for Skylake machines

Attached patch "AVX-512_prototype_all_skx_insns.patch". It implements Skylake
AVX-512 instruction subsets (AVX-512F, AVX-512CD, AVX-512VL, AVX-512BW, AVX-512
DQ) and refactors AVX-512 functionality in the following way:
- AVX-512 functionality is separated from the main code and only available
under "AVX_512" define
- AVX-512 instruction information is moved to C structures. They can be
automatically generated form a master .csv file
- Minimal AVX-512 Memcheck enabling

The patch is in alpha-stage. It has been tested on AVX-512 NPB benchmarks: some
benchmarks pass validation under Nulgrind and Memcheck, but validation failures
and crashes still occur, and Memcheck often reports false-positive errors.

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-04-30 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||bvanass...@acm.org

--- Comment #33 from Tom Hughes  ---
*** Bug 393351 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2020-04-30 Thread Tom Hughes
https://bugs.kde.org/show_bug.cgi?id=383010

Tom Hughes  changed:

   What|Removed |Added

 CC||aymaneltems...@hotmail.com

--- Comment #32 from Tom Hughes  ---
*** Bug 420834 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2018-09-08 Thread Jacek Tomaka
https://bugs.kde.org/show_bug.cgi?id=383010

Jacek Tomaka  changed:

   What|Removed |Added

 Ever confirmed|0   |1
 Status|UNCONFIRMED |CONFIRMED

--- Comment #31 from Jacek Tomaka  ---
*** This bug has been confirmed by popular vote. ***

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2018-04-10 Thread Hou
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #30 from Hou, Ao-ping  ---
(In reply to Tanya from comment #27)
> > Hi, Tanya,
> > 
> > Thank you so much.
> > Once I get  new patch, I will try it for basic operations in AVX-512 double
> > precision.
> > 
> > Best Regards
> > 
> > Elliot
> 
> Hello Elliot,
> Attached a new patch. Sorry for the delay.
> 
> Thank you,
> Tanya

Hi, Tanya,

I cannnot merge with the following commands:
git apply --stat ../AVX-512_prototype_v4_all_knl_insns.patch

And there are two errors in this patch:
memcheck/mc_translate.c
@@ -3191,6 +3341,33 @@ IRAtom* expr2vbits_Triop ( MCEnv* mce,
 unary64Fx2_w_rm(mce, vatom1, vatom2),
 unary64Fx2_w_rm(mce, vatom1, vatom3)));

And
memcheck/tests/vbit-test/irops.c
@@ -1131,12 +1143,169 @@ static irop_t irops[] = {
   { DEFOP(Iop_Rotx32, UNDEF_ALL), },
   { DEFOP(Iop_Rotx64, UNDEF_ALL), },
   { DEFOP(Iop_PwBitMtxXpose64x2, UNDEF_64x2_TRANSPOSE), .ppc64 = 1, .ppc32 = 1
},

Could you help me to solve it.

THank you

Elliot Hou, Ao-ping

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2018-04-10 Thread Hou
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #29 from Hou, Ao-ping  ---
(In reply to Tanya from comment #27)
> > Hi, Tanya,
> > 
> > Thank you so much.
> > Once I get  new patch, I will try it for basic operations in AVX-512 double
> > precision.
> > 
> > Best Regards
> > 
> > Elliot
> 
> Hello Elliot,
> Attached a new patch. Sorry for the delay.
> 
> Thank you,
> Tanya

Hi, Tanya,

thank you.
I'll try these codes later.
Again, thank you so much.

Best Regards.

Elliot Hou, Ao-ping

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2018-03-29 Thread Chris Samuel
https://bugs.kde.org/show_bug.cgi?id=383010

--- Comment #28 from Chris Samuel  ---
Hi there,

We hit the illegal instruction message on Skylake (6140) CPUs running valgrind
on programs linked against OpenMPI 3.0.0; the cause being that with our GCC 5.5
and higher installs memset() causes the VPXORD command to be emitted during
various initialisation routines which Valgrind can't handle.

It took a bit of digging to track down what was going on, so we're certainly
interested in this work!

All the best,
Chris (HPC sysadmin at Swinburne University of Technology in Melbourne,
Australia)

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2018-03-29 Thread Chris Samuel
https://bugs.kde.org/show_bug.cgi?id=383010

Chris Samuel  changed:

   What|Removed |Added

 CC||k...@csamuel.org

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2018-03-28 Thread Manodeep Sinha
https://bugs.kde.org/show_bug.cgi?id=383010

Manodeep Sinha  changed:

   What|Removed |Added

 CC||manod...@gmail.com

-- 
You are receiving this mail because:
You are watching all bug changes.

[valgrind] [Bug 383010] Add support for AVX-512 instructions

2018-03-28 Thread Patrick J . LoPresti
https://bugs.kde.org/show_bug.cgi?id=383010

Patrick J. LoPresti  changed:

   What|Removed |Added

 CC||lopre...@gmail.com

-- 
You are receiving this mail because:
You are watching all bug changes.

  1   2   >