Horde3D

Next-Generation Graphics Engine
It is currently 22.11.2024, 00:41

All times are UTC + 1 hour




Post new topic Reply to topic  [ 7 posts ] 
Author Message
PostPosted: 27.09.2010, 11:23 
Offline

Joined: 21.08.2008, 11:44
Posts: 354
Hi, I had a try with Intel Threading Building Blocks today to make the software skinning parallel. Here is my results after 4 hours of reading the TBB manual and integrating that into the Horde3D :
Chicago Sample running with 200 characters Geo Updates Timer wrote:
Normal code without using SSE : about 60ms
Normal code with /arch:SSE2 : about 53ms
Parallel code with /arch:SSE2 : about 40ms

I'm getting those results on an Intel Core2 Quad 2.83GHz, and overall CPU usage staying about 45%. Here is the Patch and Binaries if anybody is interested.
[You need Intel TBB 3.0 and #define H3D_USE_TBB in order to compile the parallel code.]

Best Regards, Siavash.

Apr 17, 2013 wrote:
Patch removed, there is no point in them. However I do recommend to use OpenMP in case you don't like to add another dependency, and in case of OpenMP absence, serial code will be generated happily.


Last edited by Siavash on 17.04.2013, 08:22, edited 3 times in total.

Top
 Profile  
Reply with quote  
PostPosted: 27.09.2010, 13:42 
Offline
Tool Developer

Joined: 13.11.2007, 11:07
Posts: 1150
Location: Germany
Did you also tried using OpenMP? Would be less intel specific.


Top
 Profile  
Reply with quote  
PostPosted: 27.09.2010, 15:11 
Offline

Joined: 21.08.2008, 11:44
Posts: 354
Volker wrote:
Did you also tried using OpenMP?
Not really, AFAIK OpenMP is not available by default to MSVC Express users so that should be a cons. But in other hand Intel TBB is widely being used by products such as Maya, UnrealEngine and lot more and is available at Linux repositories too (Ubuntu, Fedora, Gentoo and ...)

Volker wrote:
Would be less intel specific.
If you mean that final code will be running slower on non-Intel CPU manufactures, no, IMHO TBB runs everywhere fine. If you are concerned about the license, well it's licensed under GPL v2 with the libstdC++ Runtime Exception. Is it problematic?


Top
 Profile  
Reply with quote  
PostPosted: 27.09.2010, 17:21 
Offline
Tool Developer

Joined: 13.11.2007, 11:07
Posts: 1150
Location: Germany
Siavash wrote:
If you mean that final code will be running slower on non-Intel CPU manufactures, no, IMHO TBB runs everywhere fine. If you are concerned about the license, well it's licensed under GPL v2 with the libstdC++ Runtime Exception. Is it problematic?

As long as Horde is only licensed under EPL, yes it is. Didn't know that TBB is also working on AMD CPUs.


Top
 Profile  
Reply with quote  
PostPosted: 27.09.2010, 17:46 
Offline

Joined: 21.08.2008, 11:44
Posts: 354
Volker wrote:
As long as Horde is only licensed under EPL, yes it is.

I'm really confused :( What I thought from here is that it won't affect the Horde3D. Also here people say that it's OK to use Intel TBB in commercial products too without any problems. Here is a bit taken from libstdc++ FAQ :

libstdc++ FAQ wrote:
2.2. So any program which uses libstdc++ falls under the GPL?

No. The special exception permits use of the library in proprietary applications.

Also I asked a few questions at #FSF before and there where no problems. Please correct me if I'm wrong somewhere.


Top
 Profile  
Reply with quote  
PostPosted: 27.09.2010, 22:09 
Offline
Tool Developer

Joined: 13.11.2007, 11:07
Posts: 1150
Location: Germany
I haven't read the exception text. I guess you're right that it doesn't affect Horde if one would use TBB.


Top
 Profile  
Reply with quote  
PostPosted: 28.09.2010, 12:52 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
You are correct. TBB is offerered under the same license (GPL + linking exception) as the std library, and as such can be used commercially or uin open-source projects.

The separate 'commercial license' which Intel sells, is for commercial support, and gives you extensive technical support (which the free license doesn't have).

_________________
Tristam MacDonald - [swiftcoding]


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group