From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37262) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aMCIN-0004eB-JS for qemu-devel@nongnu.org; Thu, 21 Jan 2016 05:16:52 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aMCIK-0005xT-ED for qemu-devel@nongnu.org; Thu, 21 Jan 2016 05:16:51 -0500 Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:34636) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aMCIK-0005xO-6G for qemu-devel@nongnu.org; Thu, 21 Jan 2016 05:16:48 -0500 Received: by mail-wm0-x236.google.com with SMTP id u188so219640481wmu.1 for ; Thu, 21 Jan 2016 02:16:48 -0800 (PST) Sender: Paolo Bonzini References: <1453110880.23289.7.camel@redhat.com> <56A09F6A.2030609@redhat.com> <1453369937.11655.55.camel@redhat.com> From: Paolo Bonzini Message-ID: <56A0B00B.2080806@redhat.com> Date: Thu, 21 Jan 2016 11:16:43 +0100 MIME-Version: 1.0 In-Reply-To: <1453369937.11655.55.camel@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] RFC: running the user interface in a thread ... List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerd Hoffmann Cc: David Airlie , Dave Airlie , qemu-devel , =?UTF-8?Q?Marc-Andr=c3=a9_Lureau?= On 21/01/2016 10:52, Gerd Hoffmann wrote: >> > Instead of having a full-blown thread, are there things (such as the >> > TGSI->GLSL conversion) that could be simply offloaded to a userspace >> > thread pool, either in QEMU or in virglrenderer? > I think virglrenderer would have to do that. Unfortunaly opengl isn't > very good at multithreading, so I'm not sure a thread pool would work > well. Compiling shaders could be a special case where threading > actually works because that isn't in the actual rendering workflow. Not > fully sure though, Dave? Or even MESA could. Perhaps we (you :)) could add an extension for asynchronous shader compilation. But the TGSI->GLSL conversion is done by virglrender, with no opengl calls (with a big IIRC in front). Paolo