using fpgas to supplement ray tracing computations on the cray xd 1
Download
Skip this Video
Download Presentation
Using FPGAs to Supplement Ray-Tracing Computations on the Cray XD-1

Loading in 2 Seconds...

play fullscreen
1 / 53

Using FPGAs to Supplement Ray-Tracing Computations on the Cray XD-1 - PowerPoint PPT Presentation


  • 83 Views
  • Uploaded on

Using FPGAs to Supplement Ray-Tracing Computations on the Cray XD-1. Charles B. Cameron. United States Naval Academy Department of Electrical Engineering United States Naval Academy 105 Maryland Avenue, Stop 14B Annapolis, Maryland 21402-5025. Research supported by:

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Using FPGAs to Supplement Ray-Tracing Computations on the Cray XD-1' - logan-lott


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
using fpgas to supplement ray tracing computations on the cray xd 1
Using FPGAs to Supplement Ray-Tracing Computations on the Cray XD-1

Charles B. Cameron

United States Naval Academy

Department of Electrical Engineering

United States Naval Academy

105 Maryland Avenue, Stop 14B

Annapolis, Maryland 21402-5025

  • Research supported by:
  • NASA Goddard Space Flight Center (Code 586)
  • NRL Applied Optics Branch (Code 5630)
  • DoD High Performance Computing Modernization Program at NRL (Code 5593)
  • United States Naval Academy
  • Xilinx, Inc.
topics
Topics
  • Ray tracing
  • Conventional parallel processing
  • Modulo scheduling
  • Coordination of sequential and parallel processing
  • Expected Performance
ray tracing
Ray tracing
  • MODIS
    • Moderate-resolution Imaging Spectroradiometer
  • The Intersection Problem
  • Finding the Perpendicular
  • Refraction
  • Reflection
modis optical system
MODIS Optical System
  • 485 pinholes
  • 400 rays per pinhole
  • 241 ´ 121 rays reflected from the diffuser
  • 5.66 ´ 109 rays
ray directed to a surface
Ray Directed to a Surface
  • MODIS
    • Moderate-resolution Imaging Spectroradiometer
  • The Intersection Problem
  • Finding the Perpendicular
  • Refraction
  • Reflection
  • Coordinate Transformation
calculate the intercept point
Calculate the Intercept Point
  • MODIS
    • Moderate-resolution Imaging Spectroradiometer
  • The Intersection Problem
  • Finding the Perpendicular
  • Refraction
  • Reflection
  • Coordinate Transformation
find the normal
Find the Normal
  • MODIS
    • Moderate-resolution Imaging Spectroradiometer
  • The Intersection Problem
  • Finding the Perpendicular
  • Refraction
  • Reflection
  • Coordinate Transformation
find the refracted ray
Find the Refracted Ray
  • MODIS
    • Moderate-resolution Imaging Spectroradiometer
  • The Intersection Problem
  • Finding the Perpendicular
  • Refraction
  • Reflection
  • Coordinate Transformation
find the reflected ray
Find the Reflected Ray
  • MODIS
    • Moderate-resolution Imaging Spectroradiometer
  • The Intersection Problem
  • Finding the Perpendicular
  • Refraction
  • Reflection
  • Coordinate Transformation
coordinate transformation
Coordinate Transformation
  • MODIS
    • Moderate-resolution Imaging Spectroradiometer
  • The Intersection Problem
  • Finding the Perpendicular
  • Refraction
  • Reflection
  • Coordinate Transformation

(Hard to visualize this!)

topics1
Topics
  • Ray tracing
  • Conventional parallel processing
  • Modulo scheduling
  • Coordination of sequential and parallel processing
  • Expected Performance
performance 5 66 10 9 rays
Performance (5.66 ´ 109 rays)

*

99.998 %

5,857 %

* Rate based on a linear regression of results obtained using a varying numbers of processors.

topics2
Topics
  • Ray tracing
  • Conventional parallel processing
  • Modulo scheduling
  • Coordination of sequential and parallel processing
  • Expected Performance
operations required as a function of surface aperture and interaction types
Operations Required as a Function of Surface, Aperture, and Interaction Types

Not too many of these

Lots of these

quadratic equation
Quadratic Equation

Latency

Critical Path

(Data-Flow Limit)

88 cycles

modulo scheduling one multiplier7
Modulo Scheduling:One Multiplier

Equal to the Data-Flow Limit

modulo scheduling filling the pipeline
Modulo Scheduling:Filling the Pipeline

One collective computation

modulo scheduling filling the pipeline2
Modulo Scheduling:Filling the Pipeline

Multipliers are 100 % utilized

No schedule conflicts

modulo scheduling two multipliers
Modulo Scheduling:Two Multipliers

Two multipliers with two multiplications each

modulo scheduling two multipliers1
Modulo Scheduling:Two Multipliers

One adder with two additions

Two cycles

Maximum efficiency

modulo scheduling two multipliers2
Modulo Scheduling:Two Multipliers

Improved efficiency:

Up from 25 %

modulo scheduling two multipliers5
Modulo Scheduling:Two Multipliers

Less than the Data-Flow Limit

modulo scheduling two multipliers6
Modulo Scheduling:Two Multipliers

Less than the Data-Flow Limit, but double the throughput.

topics3
Topics
  • Ray tracing
  • Conventional parallel processing
  • Modulo scheduling
  • Coordination of sequential and parallel processing
  • Expected Performance
cray xd 1
Cray XD-1
  • MPI (Message Passing Interface)
  • Master node
    • Reads file
    • Distributes file
    • Collates results
one node of the cray xd 1
One Node of the Cray XD-1
  • Open MP (Multi Processing)
  • 144 of 220 nodes have a Xilinx Virtex II Pro FPGA
  • Opteron processors
    • Sequential program
    • Depth first
  • FPGA
    • Pipelined hardware
    • Breadth first
topics4
Topics
  • Ray tracing
  • Conventional parallel processing
  • Modulo scheduling
  • Coordination of sequential and parallel processing
  • Expected Performance
summary
Summary
  • Modulo scheduling produces 100 % efficiency of critical resources.
  • Sequential processors get a boost from supplemental FPGA processing.
  • Deep pipelines are efficient only if filled much of the time.
  • FPGAs beat ASICs only if they can take advantage of special problem knowledge.
  • Opteron uses 55 W.
  • Virtex II Pro FPGA uses 4 W to 45 W.
equations
Equations
  • Intersection of a Ray with a Plane
  • Intersection of a Ray with a Sphere
  • Intersection of a Ray with a Conicoid
  • Finding the Perpendicular
  • Interaction of a Ray with an Optical Surface
  • Coordinate Transformations
intersection of a ray with a plane
Intersection of a Ray with a Plane

Point in the plane

Initial direction

Final point

Initial point

Normal to the plane

List of equations

intersection of a ray with a sphere
Intersection of a Ray with a Sphere

Initial direction

Final point

Initial point

List of equations

intersection of a ray with a conicoid
Intersection of a Ray with a Conicoid

Final point

Initial point

Initial direction

List of equations

finding the perpendicular
Finding the Perpendicular

Unit Vector Normal to a Sphere

Unit Vector Normal to a Conicoid

List of equations

interaction of a ray with an optical surface
Interaction of a Ray with an Optical Surface

Refraction

Reflection

Initial index of refraction

Final index of refraction

Normal to the plane

Initial direction

Final direction

List of equations

coordinate transformations
Coordinate Transformations

Position in Frame of Reference k

Positionin Frame of Reference k+1

Rotation and Translation

Rotation

Direction in Frame of Reference k+1

Rotation Matrix

Direction in Frame of Reference k

Translation Vector

List of equations

ad