Really?  That is sweet!  I've been using my own unique ID generator...
Which works fine but there are a couple issues with affinity.
Hopefully The TBB guys have thought more about this than me ;-)

I'll check into this right away....

Derek

Sent from my iPhone

On Feb 13, 2010, at 6:35 AM, "Kirk, Benjamin (JSC-EG311)"
<[email protected]
 > wrote:

> 2:21 am?  I'd say first get some sleep...
>
> I have looked at the latest tbb documentation and I believe you can
> now get access to a thread I'd, something they were frowning on
> before because is it contrary to their task-based approach.
>
> The good news is though if we can indeed get access to that it
> should be possible to cache data on a per thread basis in a map or
> something...
>
> -Ben
>
>
>
> ----- Original Message -----
> From: Roy Stogner <[email protected]>
> To: Derek Gaston <[email protected]>
> Cc: libmesh-users <[email protected]>; libmesh-
> devel <[email protected]>
> Sent: Sat Feb 13 02:21:32 2010
> Subject: Re: [Libmesh-users] [Libmesh-devel] Hermites now Thread Safe!
>
>
> On Wed, 10 Feb 2010, Derek Gaston wrote:
>
>> So... I got tired of not being able to use threading with
>> Hermites... so I finally went in there and fixed it.
>
> I'd call this more of a "workaround" than a "fix", but it's still a
> big improvement over my original status of "bug" or my recent upgrade
> to "unsupported feature".  ;-)
>
>> I fixed it by turning off the caching that Roy was doing when
>> libMesh is compiled with thread support.  Note that this might slow
>> things down if you happen to have compiled your library with thread
>> support... but aren't actually using threads.
>>
>> But I think the trade off is nice... you can now use threads to
>> solve fourth order problems... no nasty bugs to grab you... or
>> asserts to hit.
>
> I agree.  I'm curious, though - could you quantify the slowdown?
> Recalculating all those conversion coefficients on every basis
> function on every quadrature point sounds pretty ugly, but I'd be
> happy to be told that I was just prematurely optimizing.
>
>> Also... through this process I spotted a couple of other
>> non-threadsafe operations going on in some of the constraint
>> projection stuff (mostly having to do with PointLocator
>> initialization).  I put proper locks around that using the "Double
>> Checked Lock Pattern" for speed... so it's good to go now.
>
> Thanks!  I need to pick your brain sometime about locking, BTW.  I've
> got some more subtlely non-thread-safe code (the ALE stuff) that could
> be made thread-safe in one of a few ways, but choosing which would
> require me to know more about various lock/mutex costs than I do now.
>
>> Roy: Take a look at what I did and let me know if you don't like it.
>
> Will do ASAP, but it may take a few days.  I just got back from a
> brief conference & vacation; 72 new emails...
> ---
> Roy
>
> ---
> ---
> ---
> ---------------------------------------------------------------------
> SOLARIS 10 is the OS for Data Centers - provides features such as
> DTrace,
> Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
> http://p.sf.net/sfu/solaris-dev2dev
> _______________________________________________
> Libmesh-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/libmesh-users

------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to