Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Jun 2003 14:41:01 -0700
From:      Gareth Hughes <gareth@nvidia.com>
To:        Andy Ritger <ARitger@nvidia.com>, Daniel Eischen <eischen@pcnet.com>
Cc:        zander@mail.minion.de
Subject:   RE: NVIDIA and TLS
Message-ID:  <2D32959E172B8F4D9B02F68266BE421401A6D7CD@mail-sc-3.nvidia.com>

next in thread | raw e-mail | index | archive | help
On Mon, 16 Jun 2003, Andy Ritger wrote:
> 
> So from an OpenGL point of view, here are several alternatives that
> I see for atleast the near term:
> 
>     - make NVIDIA's OpenGL implementation not thread-safe (just
>       use global data rather that thread-local data)
> 
>     - accept the performance hit of using pthread_getspecific()
>       on FreeBSD.  From talking to other OpenGL engineers,
>       conservative estimates of the performance impact on
>       applications like viewperf range from 10% - 15%.  I'd like
>       to quantify that, but certainly there will be a performance
>       penalty.

And these are *very* conservative estimates -- you're essentially adding a
function call into a path that is, on average, less than ten instructions
per OpenGL API call, where the number of API calls per frame is upward of 3
million (3 calls per vertex, over a million vertices for some Viewperf
benchmarks).  The API was designed this way for a reason, and fast
thread-local storage is a fundamental part of a high performance
implementation.

-- 
Gareth Hughes (gareth@nvidia.com)
OpenGL Developer, NVIDIA Corporation



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2D32959E172B8F4D9B02F68266BE421401A6D7CD>