Discussions
Categories
- 385.5K All Categories
- 4.9K Data
- 2.5K Big Data Appliance
- 2.4K Data Science
- 453.4K Databases
- 223.2K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 47 Multilingual Engine
- 606 MySQL Community Space
- 486 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3.2K ORDS, SODA & JSON in the Database
- 585 SQLcl
- 4K SQL Developer Data Modeler
- 188K SQL & PL/SQL
- 21.5K SQL Developer
- 46 Data Integration
- 46 GoldenGate
- 298.4K Development
- 4 Application Development
- 20 Developer Projects
- 166 Programming Languages
- 295K Development Tools
- 150 DevOps
- 3.1K QA/Testing
- 646.7K Java
- 37 Java Learning Subscription
- 37.1K Database Connectivity
- 201 Java Community Process
- 108 Java 25
- 22.2K Java APIs
- 138.3K Java Development Tools
- 165.4K Java EE (Java Enterprise Edition)
- 22 Java Essentials
- 176 Java 8 Questions
- 86K Java Programming
- 82 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.3K Java SE
- 13.8K Java Security
- 208 Java User Groups
- 25 JavaScript - Nashorn
- Programs
- 667 LiveLabs
- 41 Workshops
- 10.3K Software
- 6.7K Berkeley DB Family
- 3.6K JHeadstart
- 6K Other Languages
- 2.3K Chinese
- 207 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 474 Portuguese
CPU killer
It seems that J3D utilises 100% of available CPU in interactive apps to maximise rendering etc..
This is fine if the Java3D app is the only important process currently executing.
However I am trying to use J3D to develop interactive representations of data mining processes.
The DM alg and J3D visualisation are run as separate processes with socket level coupling (Yes, they must be separate processes).
The result is that the Java3D app sucks up approx. 95% of CPU (over 50 min period even with the
J3D thread priority minimised), this leaves little CPU for the mining alg. to crunch data.
I've had a good dig and there doesn't seem a way to effectively reduce the J3D CPU monopoly. Any idea's would be greatly appreciated, I really don't want to start over in OpenGL
TIA
Aaron
This is fine if the Java3D app is the only important process currently executing.
However I am trying to use J3D to develop interactive representations of data mining processes.
The DM alg and J3D visualisation are run as separate processes with socket level coupling (Yes, they must be separate processes).
The result is that the Java3D app sucks up approx. 95% of CPU (over 50 min period even with the
J3D thread priority minimised), this leaves little CPU for the mining alg. to crunch data.
I've had a good dig and there doesn't seem a way to effectively reduce the J3D CPU monopoly. Any idea's would be greatly appreciated, I really don't want to start over in OpenGL

TIA
Aaron
Comments
-
Try creating your own custom canvas3D (really easy to do) and add your own code in preRender() to send the rendering loop to sleep for as long as you want per frame. This should give your other threads 100% for that period of time (but of course framerate will suffer).
-
Thanks, works fine.
However this does raise the problem of ineffeciency when running on the multiprocessor servers, instead of locally from my PC. However the work around is good and allows me to demonstrate effectively.
This discussion has been closed.