Abstract

This technology based upon stream processing concept. Heart of the technology is a visual language Heaven Hyperflow. The proposed language allows describing processes of visualization or (and) some real-time calculations. The language is data-flow and can be automatically paralleled. The proposed approach facilitates rendering process programming and can use modern hardware architecture features and devices as NVIDIA GPU Unified Architecture or AMD Stream Processor. Heaven Hyperflow is a current reseach.

Introduction

Now the pure processor power cannot be increased significantly. Modern hardware based on parallel execution model. Today it is available Intel Quad™ processors, NVIDIA G80 GPU. Modern GPUs have unified architecture which allows us solving not only rasterization problems. Thanks to massive parallel execution GPU can produce up to 400 GFlops today

image1small.png

NVIDIA GPU G80s implement a massively parallel, unified shader design consisting of 128 individual stream processors running at 1.35 GHz. G80 GPUs include the revolutionary new NVIDIA CUDA™ built-in technology, which provides a unified hardware and software solution for data-intensive computing. Intel is researching a new technology named Tera-scale. According to it the Intel Tera-scale chip will be contain 80 cores which will be provide more than 1.0 TFlops. Following these trends all processors will be multi-core, all computers will be massively parallel. An efficient application will have to be highly parallel. The proposed technology encapsulates parallel stuff for interactive applications. It can be visualization of something, a process simulation or other interactive applications.

HYPERFLOW LANGUAGE

Hyperflow language is a visual dataflow language. Modern computer graphics processes have highly parallel potential. So mainly Hyperflow language is designed for CG processes (rendering, image processing, etc), but it can be applied to processes with parallel potential.

Introduction in Dataflow Graph

Dataflow graph is represented by a directed graph. The nodes of the graph are primitive instructions such as arithmetic or comparison operations. Directed arcs between the nodes represent the data dependencies between the instructions. Conceptually, data flows as tokens along the arcs which behave like unbounded first-in, first-out (FIFO) queues. Arcs that flow toward a node are said to be input arcs to that node, while those that flow away are said to be output arcs from that node. In Hyperflow language data flow from left to right

image3.png

The figure illustrates a simple model of lighting. You can see properties of an object: “Color”, “Direction” (of the camera). These properties will be available to tune using user interface. Rasterizer node encapsulates rasterization routine. Output of rasterization may be seen in Rasterizer node. The image is changing during editing the dataflow graph or tweaking properties values. That means developer can get feedback immediately. This is an important feature of the visual language and this is important for graphics development process.

image4.png

Acknowledgments

Last edited Aug 30, 2008 at 7:19 AM by daVinci, version 2

Comments

No comments yet.