David A. Greene
2011-Nov-29 16:17 UTC
[LLVMdev] [llvm-commits] Vectors of Pointers and Vector-GEP
greened at obbligato.org (David A. Greene) writes:> "Rotem, Nadav" <nadav.rotem at intel.com> writes: > >> Following the discussion in last week’s LLVM developers conference I >> started working on support for vectors-of-pointers. Vectors of >> pointers are needed for supporting scatter/gather operations and are >> the first step in the direction of supporting predicated >> architectures.I just want to make clear that gather/scatter and prediction are orthogonal concepts. You don't need one to do the other. You can use scatter/gather to vectorize conditional code but it's not the same as true predication, which is generally much more efficient. -Dave
Rotem, Nadav
2011-Nov-29 17:35 UTC
[LLVMdev] [llvm-commits] Vectors of Pointers and Vector-GEP
David, I agree with you, scatter/gather and predication are orthogonal concepts. In theory, you could implement load/store predication using scatter/gather instructions by loading/storing to dedicated 'dead' stack slots. Having said that, I don't know of any architecture which has scatter/gather but does not have predicated instructions. Looking onward, I definitely want to see LLVM support predicated architectures. Dan Gohman had some excellent ideas on different way this can be done. As soon as I finish stabilizing the pointer-vector patch, and implement scatter/gather intrinsics, I would like to start a discussion on the implementation of predicated instructions in LLVM. Nadav -----Original Message----- From: David A. Greene [mailto:greened at obbligato.org] Sent: Tuesday, November 29, 2011 18:18 To: David A. Greene Cc: Rotem, Nadav; llvm-commits at cs.uiuc.edu; LLVM Developers Mailing List Subject: Re: [llvm-commits] Vectors of Pointers and Vector-GEP greened at obbligato.org (David A. Greene) writes:> "Rotem, Nadav" <nadav.rotem at intel.com> writes: > >> Following the discussion in last week’s LLVM developers conference I >> started working on support for vectors-of-pointers. Vectors of >> pointers are needed for supporting scatter/gather operations and are >> the first step in the direction of supporting predicated >> architectures.I just want to make clear that gather/scatter and prediction are orthogonal concepts. You don't need one to do the other. You can use scatter/gather to vectorize conditional code but it's not the same as true predication, which is generally much more efficient. -Dave --------------------------------------------------------------------- Intel Israel (74) Limited This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
David A. Greene
2011-Dec-01 17:16 UTC
[LLVMdev] [llvm-commits] Vectors of Pointers and Vector-GEP
"Rotem, Nadav" <nadav.rotem at intel.com> writes:> Looking onward, I definitely want to see LLVM support predicated > architectures. Dan Gohman had some excellent ideas on different way > this can be done. As soon as I finish stabilizing the pointer-vector > patch, and implement scatter/gather intrinsics, I would like to start > a discussion on the implementation of predicated instructions in LLVM.Me too. This is going to be very important going forward as we're going to have to extract and represent parallelism in the new age of the clock ceiling. -Dave
Seemingly Similar Threads
- [LLVMdev] [llvm-commits] Vectors of Pointers and Vector-GEP
- [LLVMdev] [llvm-commits] Vectors of Pointers and Vector-GEP
- [LLVMdev] [llvm-commits] Vectors of Pointers and Vector-GEP
- [LLVMdev] [llvm-commits] Vectors of Pointers and Vector-GEP
- [LLVMdev] [llvm-commits] Vectors of Pointers and Vector-GEP