RFR: JDK-8308994: C2: Re-implement experimental post loop vectorization
Pengfei Li
pli at openjdk.org
Thu Jun 29 09:31:11 UTC 2023
On Fri, 23 Jun 2023 15:15:02 GMT, Emanuel Peter <epeter at openjdk.org> wrote:
>> ## TL;DR
>>
>> This patch completely re-implements C2's experimental post loop vectorization for better stability, maintainability and performance. Compared with the original implementation, this new implementation adds a standalone loop phase in C2's ideal loop phases and can vectorize more post loops. The original implementation and all code related to multi-versioned post loops are deleted in this patch. More details about this patch can be found in the document replied in this pull request.
>
> I'm in the middle of reviewing, but have to end it here for the week now 😊
>
> For now it's a lot of detail-feedback. I'll give a more overall-feedback once I'm done reading through, and reflecting on it.
>
> Still: this is good work. We will have to discuss the performance benefits vs the code complexity. And maybe we first need to refactor some things to reduce code duplication. But this looks much better than the previous post-loop vectorization.
>
> Have a great weekend,
> Emanuel
Hi @eme64,
I guess you have done your first round of review. @fg1417 and I really appreciate all your constructive inputs. By reading your comments, I believe you have reviewed this patch in very detail. Thanks again!
What I am doing now:
- I'm trying to fix the issues which I think can be fixed immediately.
- I'm trying to answer all your simple questions ASAP.
For your request of big refactoring work, I feel like I personally may not have enough time and capability to complete it in a short time. We may need some discussion about it. But it's great to know more about your "hybrid vectorizer" plan from your feedback. It looks like a grand plan, and requires significant effort and cooperation. I strongly agree that we need some conversation to discuss where we should move forward and what we can cooperate. Could you give us a moment to digest your idea before we schedule a conversation?
BTW: What's your preferred time for a conversation? We are based in Shanghai (GMT+8)
-------------
PR Comment: https://git.openjdk.org/jdk/pull/14581#issuecomment-1612703985
More information about the hotspot-dev
mailing list