Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (686)
Games in Android Showcase (198)
games submitted by our members
Games in WIP (758)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  JOCL da bienator gets it's own thread / context  (Read 1143 times)
0 Members and 1 Guest are viewing this topic.
Offline AI Guy

Senior Newbie

« Posted 2010-03-07 23:42:39 »

Catch 22 is not the place to discuss JOCL, due to that threads size /scope.  I did not actually reply there with JOCL in mind.  No great loss.  Just some unrelated comments to start:
- - - - - - - - - - -
I have not observed nor tried to measure contention, done I assume by comparing throughput of multi threaded vs single.  A single thread for all GPUs using synchronized blocking assumes homogeneous GPU's & almost identical work.  One person tried to do load balancing with a single thread and no blocking, but I think he gave up due to all the problems.  My kernels do not do the exact same amount of work every time either, sort of a close range, so sync could hold one or the other up each iteration.  More GPU's make this worse.  With OpenGL sync is of overriding importance, as displaying frames out of order, or irregularly is not likely acceptable.

I have never had fewer CPUs than GPUs, where that would really kick in though.  From Netbeans profiling data of Nvidia's implementation, it is clear their blocking is very CPU intense.  By this I mean all the CPU time is used spinning, waiting for kernels to finish & enqueue or passing args is nothing.  Getting the minimum wait time during a worksize calibration operation, which is wise to do, could be very useful.  You could then put a Thread.sleep(85% min) after the last enqueue in the set & then block.  I am doing this as part of a redesign, but have not fired up the full system to test.
- - - - - - - - - - -
You described low/gluegen built and high/OO level bindings before.  Are you still doing / going to do the high level, cause that stuff is not built by computer?  The high level bindings Olivier continues to improve, called JavaCL (low/JNAerator built is OpenCL4Java), & looks outstanding.  My own OO level is not near as comprehensive, and am going to drop it when I get the chance.  I only built my own, because there weren't any when I started.  That is where enhancements in API will not naturally be realized.
- - - - - - - - - - -
That is it for now.  Good luck on your project! Maybe get a section for JOCL someday, but no hurry.  Actually there are already a lot of OpenCL forums, probably too many right now.
Offline bienator

Senior Devvie


« Reply #1 - Posted 2010-03-08 16:37:58 »

thanks for creating the shared gl-cl context for me Wink

The high(er) level bindings are actually the main part of the project. They expose everything the generated bindings expose and are tuned for performance. E.g they cache all immutable state of the OpenCL objects and other tricks to reduce function calls.

That is it for now.  Good luck on your project! Maybe get a section for JOCL someday, but no hurry.  Actually there are already a lot of OpenCL forums, probably too many right now.

and yes you are right too many CL forums... and i haven't even blogged about the binding since i didn't want rise attention till its ready.

Pages: [1]
  ignore  |  Print  
You cannot reply to this message, because it is very, very old.

roseslayer (424 views)
2016-08-06 11:43:29

roseslayer (385 views)
2016-08-06 09:43:11

xTheGamerCodes (461 views)
2016-08-04 15:40:59

xTheGamerCodes (455 views)
2016-08-04 15:40:24

orrenravid (804 views)
2016-07-16 03:57:23

theagentd (880 views)
2016-07-11 14:28:54

Hydroque (976 views)
2016-07-06 05:56:57

Hydroque (995 views)
2016-07-03 08:52:54

GrandCastle (807 views)
2016-07-01 09:13:47

GrandCastle (638 views)
2016-07-01 09:09:45
Rendering resources
by Roquen
2016-08-08 05:55:21

Rendering resources
by Roquen
2016-08-08 05:52:42

Rendering resources
by Roquen
2016-08-08 05:50:38

Rendering resources
by Roquen
2016-08-08 05:49:53

Rendering resources
by Roquen
2016-08-08 05:32:39

Making a Dynamic Plugin System
by Hydroque
2016-06-25 00:13:25

Java Data structures
by BinaryMonkL
2016-06-13 21:22:09

Java Data structures
by BinaryMonkL
2016-06-13 21:20:42 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!