Fwd: RFR(M): Extend work gang dispatcher for low latency task handoff
Zhengyu Gu
zgu at redhat.com
Mon Apr 10 12:56:01 UTC 2017
Ping...
I am needing a couple of classes from it.
Thanks,
-Zhengyu
-------- Forwarded Message --------
Subject: RFR(M): Extend work gang dispatcher for low latency task handoff
Date: Mon, 13 Mar 2017 10:44:45 -0400
From: Zhengyu Gu <zgu at redhat.com>
To: shenandoah-dev at openjdk.java.net
Hi,
This patch provides the capability to group work gang tasks into
sessions, which allows low-latency task handoff
by keeping workers hot.
As expected, it only benefits parallel phases, but hurts concurrent
phases. I think that the approach does not reach
its max benefit due to not be able to schedule or queue tasks in advance.
The statistics shows that 80% of workers rendezvous during spinning
phases, but 20% during yield phases, which might delay
the handoff.
Also the task submission thread, any spins or yields seem only hurts
performance, so have to fallback to semaphore, maybe
introduce another latency.
Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/work_session/webrev.00/
I would appreciate any suggestions!
Performance:
SPECjbb2015:
It shows improvement when it is enabled for parallel phases.
Current head:
http://cr.openjdk.java.net/~zgu/shenandoah/work_session/baseline_without_patch.txt
With patch, but disabled:
http://cr.openjdk.java.net/~zgu/shenandoah/work_session/baseline_with_patch.txt
Enable for parallel phases only:
http://cr.openjdk.java.net/~zgu/shenandoah/work_session/par_session.txt
Compile.sunflow on local machine:
It shows slight drop.
Current head:
http://cr.openjdk.java.net/~zgu/shenandoah/work_session/sunflow_without_patch.txt
With patch, but disabled:
http://cr.openjdk.java.net/~zgu/shenandoah/work_session/sunflow_no_session.txt
Enabled for parallel phases only:
http://cr.openjdk.java.net/~zgu/shenandoah/work_session/sunflow_par_session.txt
Thanks,
-Zhengyu
More information about the shenandoah-dev
mailing list