Gaalop High Performance Computing based on Conformal Geometric Algebra



Similar documents
Content. Chapter 4 Functions Basic concepts on real functions 62. Credits 11

Geometric algebra rotors for skinned character animation blending

CFD Implementation with In-Socket FPGA Accelerators

FPGA area allocation for parallel C applications

Everyday Mathematics. Grade 4 Grade-Level Goals CCSS EDITION. Content Strand: Number and Numeration. Program Goal Content Thread Grade-Level Goal

Everyday Mathematics. Grade 4 Grade-Level Goals. 3rd Edition. Content Strand: Number and Numeration. Program Goal Content Thread Grade-Level Goals

Number Sense and Operations

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008.

Seeking Opportunities for Hardware Acceleration in Big Data Analytics

FPGA-based Multithreading for In-Memory Hash Joins

Metrics on SO(3) and Inverse Kinematics

Pre-Algebra Academic Content Standards Grade Eight Ohio. Number, Number Sense and Operations Standard. Number and Number Systems

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS

How To Design An Image Processing System On A Chip

5 Systems of Equations

Algebra Unpacked Content For the new Common Core standards that will be effective in all North Carolina schools in the school year.

FPGA-based MapReduce Framework for Machine Learning

Geometric Algebra Primer. Jaap Suter

Prentice Hall: Middle School Math, Course Correlated to: New York Mathematics Learning Standards (Intermediate)

arxiv: v1 [cs.cv] 6 Jun 2013

Networking Virtualization Using FPGAs

Contents. System Development Models and Methods. Design Abstraction and Views. Synthesis. Control/Data-Flow Models. System Synthesis Models

High-Level Synthesis for FPGA Designs

Reconfigurable System-on-Chip Design

Secured Embedded Many-Core Accelerator for Big Data Processing

How To Calculate Kinematics Of A Parallel Robot

FlexPath Network Processor

Extending the Power of FPGAs. Salil Raje, Xilinx

Software & systems for the neuromorphic generation of computing. Peter Suma co-ceo peter.suma@appliedbrainresearch.

Hardware and Software

Enhance Service Delivery and Accelerate Financial Applications with Consolidated Market Data

DEFERRED IMAGE PROCESSING IN INTEL IPP LIBRARY

A General Framework for Tracking Objects in a Multi-Camera Environment

An inertial haptic interface for robotic applications

South Carolina College- and Career-Ready (SCCCR) Pre-Calculus

INFOCOMMUNICATIONS JOURNAL Mojette Transform Software Hardware Implementations and its Applications

How to make the computer understand? Lecture 15: Putting it all together. Example (Output assembly code) Example (input program) Anatomy of a Computer

Overview. Swarms in nature. Fish, birds, ants, termites, Introduction to swarm intelligence principles Particle Swarm Optimization (PSO)

Chapter 111. Texas Essential Knowledge and Skills for Mathematics. Subchapter B. Middle School

Algebra Academic Content Standards Grade Eight and Grade Nine Ohio. Grade Eight. Number, Number Sense and Operations Standard

How To Program With Adaptive Vision Studio

WORK SCHEDULE: MATHEMATICS 2007

JUST THE MATHS UNIT NUMBER 8.5. VECTORS 5 (Vector equations of straight lines) A.J.Hobson

Overview. Surveillance Systems. The Smart Camera - Hardware

Compiling PCRE to FPGA for Accelerating SNORT IDS

Hardware Task Scheduling and Placement in Operating Systems for Dynamically Reconfigurable SoC

Lecture 3: Modern GPUs A Hardware Perspective Mohamed Zahran (aka Z) mzahran@cs.nyu.edu

Attaining EDF Task Scheduling with O(1) Time Complexity


NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS

Data Center and Cloud Computing Market Landscape and Challenges

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-12: ARM

Introduction to DISC and Hadoop

Model-based system-on-chip design on Altera and Xilinx platforms

9/14/ :38

Grassmann Algebra in Game Development. Eric Lengyel, PhD Terathon Software

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary

CRLS Mathematics Department Algebra I Curriculum Map/Pacing Guide

DUKANE Intelligent Assembly Solutions

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

Kinematics of Robots. Alba Perez Gracia

Latency in High Performance Trading Systems Feb 2010

DRAFT. Further mathematics. GCE AS and A level subject content

CoProcessor Design for Crypto- Applications using Hyperelliptic Curve Cryptography

Essential Mathematics for Computer Graphics fast

Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages

Horst Görtz Institute for IT-Security

Polymorphic AES Encryption Implementation

Holger Eichelberger, Cui Qin, Klaus Schmid, Claudia Niederée

Compiling Recursion to Reconfigurable Hardware using CLaSH

LEGO NXT-based Robotic Arm

Geometry Course Summary Department: Math. Semester 1

Example SECTION X-AXIS - the horizontal number line. Y-AXIS - the vertical number line ORIGIN - the point where the x-axis and y-axis cross

International Workshop on Field Programmable Logic and Applications, FPL '99

Prentice Hall Mathematics: Course Correlated to: Arizona Academic Standards for Mathematics (Grades 6)

SPRING SEMESTER. Turhan DOAN from Computer Engineering Department: Software Development Process

Prentice Hall Connected Mathematics 2, 7th Grade Units 2009

Hardware in the Loop (HIL) Testing VU 2.0, , WS 2008/09

Development of the Fabry-Perot Spectrometer Application. Kathryn Browne Code 587

CALIBRATION OF A ROBUST 2 DOF PATH MONITORING TOOL FOR INDUSTRIAL ROBOTS AND MACHINE TOOLS BASED ON PARALLEL KINEMATICS

IV. ALGEBRAIC CONCEPTS

Parallel Computing. Benson Muite. benson.

Logical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit.

MIMO detector algorithms and their implementations for LTE/LTE-A

FPGA Implementation of an Extended Binary GCD Algorithm for Systolic Reduction of Rational Numbers

Section 9.5: Equations of Lines and Planes

In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data.

THE NEXT FRONTIER IN COMPUTING QUANTUM OPTICAL COMPUTING. Presentation For Venture Capital Investment

THREE DIMENSIONAL GEOMETRY

7a. System-on-chip design and prototyping platforms

Acceleration for Personalized Medicine Big Data Applications

Transcription:

Gaalop High Performance Computing based on Conformal Geometric Algebra Prof. Andreas Koch, Germany

Overview What is Gaalop? Related work Our concepts Proof-of-concept application State-of-the-art and future perspectives

Goal of Gaalop? Combination of Elegance of geometric computing based on Geometric Algebra High performance of the implementation

Related Work Software solutions Gaigen 2, [Fontijne/Dorst] Hardware solutions Implementation of a Clifford algebra co-processor design on a field programmable gate array, [Perwass et al, 2003] CliffoSor, an Innovative FPGA-based Architecture for Geometric Algebra, [Gentile et al, 2005] Hardware implementation of a geometric algebra processor core, [Mishra/Wilson, 2006]

Implementation of a CA co-processor design on a FPGA Perwass et al. 2002

Implementation of a CA co-processor design on FPGA Perwass et al. 2002

Hardware implementation of a geometric algebra processor core Mishra/Wilson, 2006 Current setup:

Current hardware solutions Geometric Algebra Algorithm Hardware solution

Gaalop (Concepts) Combination of the advantages of software and hardware optimizations 1. Optimize geometric algebra algorithm symbolically 2. Generate a hardware implementation of the (already symbolically optimized) algorithm

Gaalop (Architecture) Geometric Algebra Algorithm Symbolic simplification (Maple) IR (Intermediate( Representation) FPGA C-CodeCode CluCalc Java Latex

Symbolic simplification (based on Maple) Goal: Simplifying of expressions to the most efficient ones (addition and multiplications) CliffordLib for Maple [Ablamowicz & Fauser] OpenMaple-Interface

The general data structure of Gaalop Focus on 32-D multivector of the conformal model Goal: Compute Symbolically optimized coefficients

Example Calculation of the horizon circle:

Example Note: different formulas lead to the same result

How to implement on hardware? Sdaf Use of parallelism!

Proof-of-concept application Competitive runtime performance for inverse kinematics algorithms using conformal geometric algebra Eurographics 2006 Dietmar Hildenbrand, Daniel Fontijne, Yusheng Wang, Marc Alexa, Leo Dorst

Development of the inverse kinematics Visual development and test with CLUCalc (free software by Christian Perwass, www.clucalc.info) Easy and intuitive operations with basic geometric entities Entities like spheres and planes Outer product ^ to intersect

Symbolic simplification of the inverse kinematics

Symbolic simplification of the inverse kinematics

Symbolic simplification of the inverse kinematics

Symbolic simplification of the inverse kinematics

Symbolic simplification of the inverse kinematics

Symbolic simplification of the inverse kinematics Maple functions like simplify(), coeff() C_e[9] := -1/2*pwx*L1^2 C_e[10] := pwx C_e[16] :=

Symbolic simplification (continued) elbow circle already computed Intersect with swivel plane Resulting point pair Selection of one of the two points leads to:

Runtime performance of the inverse kinematics On the algorithmic level Embedding of quaternions ( needed for the slerp motion ) Two optimization approaches for the implementation Gaigen 2 Maple with Cliffordlib -> Three times faster than conventional solution!

Paper Efficient inverse kinematics algorithm based on Conformal Geometric Algebra using reconfigurable hardware " VISIGRAPP 2008 Dietmar Hildenbrand Holger Lange Florian Stock Andreas Koch Extention to hardware implementation

Way to efficiency? Geometric algebra algorithm Symbolic simplification C-CodeCode reconfigurable hardware FPGA

HW implementation Dataflow graph for with

HW implementation Pipeline stages

Parallelism in 2 dimensions 363 Pipeline stages, up to 20 scalar operations per stage

HW implementation results 100 inverse kinematics calculation Test platform FPGA: Xilinx Virtex XC2VP70-7, 100 MHz PC: Intel Centrino M7115CPU, 1.5 GHz

Results summary Maple-optimized implementation about 3 times faster than the conventional solution Currently with reconfigurable hardware: more than 500 times faster than the conventional solution

Gaalop state-of-the-art Geometric Algebra Algorithm (Clucalc, Maple) Symbolic simplification (Maple) IR (Intermediate( Representation) FPGA C-CodeCode CluCalc Java Latex

Gaalop future perspectives Geometric Algebra Algorithm Symbolic simplification (Maple) IR (Intermediate( Representation) FPGA C-CodeCode CluCalc Java Latex

Benefits of Geometric Computing with Gaalop Geometrically intuitive Easy to understand Easy to develop Easy to maintain and Efficient to implement Software Hardware

Acknowlegments Andreas Koch, Embedded Systems Group, TU Darmstadt Eduardo Bayro Joachim Pitt www.gaalop.de

Thank you for your attention