170 likes | 283 Views
3-D Graphics Rendering Using PVM CLUSTERS. Arjun Jain & Harish G. Naik R. V. College of Engineering, Bangalore. Contents. Parallel Virtual Machines (Introduction & setup) Ray-Tracing POV-Ray PVMPOV Demo. Parallel Virtual Machine( Introduction ). System of Heterogeneous nodes
E N D
3-D Graphics Rendering Using PVM CLUSTERS Arjun Jain & Harish G. Naik R. V. College of Engineering, Bangalore
Contents • Parallel Virtual Machines (Introduction & setup) • Ray-Tracing • POV-Ray • PVMPOV • Demo
Parallel Virtual Machine(Introduction) • System of Heterogeneous nodes • Message passing system • Carry out parallel computation • Daemon called pvmd • Library PVM interface routines
Parallel Virtual Machine(Setup) 1. Download pvm3.4.0.tgz into your user directory (e.g. /home/aj). 2. Add the following to your .bash_profile file PVM_ROOT=$HOME/pvm3 PVM_DPATH=$PVM_ROOT/lib/pvmd PVM_ARCH=LINUX export PVM_ROOT PVM_DPATH PVM_ARCH 3. Logout and then login again as your username to install the new environment. 4. Now untar the PVM files with tar -zxvf pvm3.4.0.tgz
5. Change directory into /pvm3 6. Run make and let the compile proceed. 7. When complete move back to your home directory and issue the pvm command. You should see the pvm prompt. If so all is well. Type halt to exit pvm. 8. Repeat this on each of the machines in the cluster. 9. Now test that you can add machines to the cluster. Say $ pvm pvm.hosts and check configuration at pvm prompt by: pvm> conf and you should be getting something like: 3 hosts, 1 data format HOST DTID ARCH SPEED arjun 40000 SUNMP 1000 harish 80000 SUNMP 1000 aj c0000 SUNMP 1000 Parallel Virtual Machine(Setup)
Ray Tracing • Generated by tracing rays of light • Center of projection • Window on arbitrary plane Center of Projection Window
Ray Tracing • Window is divided into regular grid • Grid elements correspond to pixels • Ray fired from COP center into scene • Greater intersections greater resolution • More computing power required Center of Projection Window
POV-Ray • Persistence Of Vision Raytracer • 3-dimensional raytracing engine • Simulates the way light interacts • Creates 3-D pictures and animation • Images are photo realistic
POVRay (Script example) global_settings { assumed_gamma 2.2 } camera { location <0, 0, -8> direction <0, 0, 1.2071> look_at <0, 0, 0> } sphere { <0.0, 0.0, 0.0>, 2 pigment { color red 1 green 0 blue 0 } } light_source { <-10, 3, -20> color red 1 green 1 blue 1 }
PVMPOV • Rendering on heterogeneous systems • Parallel option only if - +N option • Else as a single task • Centralized scheme • 1-master many slaves • Master divides image into blocks • Blocks are assigned to slaves
PVMPOV(contd...) • Sent back to master after rendering • Master combines to form one image • Master may or may not render • Rendering possible even if a slave fails • Starts slaves at reduced priority • If master fails – slaves time out
PVM-POV(Setting up) • Download sources • POV-Ray sources : povuni_s.tgz • PVMPOV sources : pvmpov-3.1g2.tgz • Unpack sources • Patching PVMPOV • Build PVMPOV • Install Binaries
PVM-POV(Using) • Add hosts to pvm.hosts • Start PVM • $ pvm pvm.hosts • Locate POV-Ray object script files • Start PVMPOV • $ pvmpov <script file> <options>
Demo • Povray on Uniprocessor system • PVM-Pov on PVM Cluster
Conclusion • Clusters can be easily setup • Can be used for other applications • Others - LAM, OpenMosix, Condor etc.
Sources : • www.povray.org - POVRAY sources for UNIX • PVM homehttp://www.epm.ornl.gov/pvm/pvm_home.html • PVM: Parallel Virtual Machine - A User's Guide and Tutorial for Networked Parallel Computing, Al Geist, Adam Beguelin, Jack Dongarra, Robert Manchek, Weicheng Jiang and Vaidy Sunderam, MIT Press. Available athttp://www.netlib.org/ • PVMPOV from sunsite.unc.edu
Reach us : • Harish G. Naik, VII semester CSE, RVCE • harishgnaik@yahoo.com • http://harishnaik.8m.net • Arjun Jain, V Semester CSE, RVCE • arjun_jain@yahoo.com