SlideShare a Scribd company logo
1 of 17
Download to read offline
Adaptive Game Math Library
What does it do?




           Something... I hope... Maybe?
Progress!
New Organization and Streamlined API
                       API                                   Tool Chain
              High Level Interface                       Build system
Bulk Matrix Container             Matrix Stack            Makefile
Bulk Matrix Stack                 Dynamic Vector          Code::Blocks Project
                                                          Visual Studio Project
                       Core
                                                        Testing Framework
Vector           Bulk Operations         Allocators
                                                          Automated Testing
Matrix           Approximations          Probability      Code Coverage
                    Basics                              Timing Framework
Fixed-width Scalar Types         Complex Types            User-Friendly GUI
                                                          Core Components
         Compatibility Layers and non User Facing Code
         Intrinsic Compatibility Layer                 Universal SIMD Types
New Functionality
What's Done?
       Gratuitous use of graphics

Matrix/Vector Implementations


   4x4, f32 Specialization


       Complex Types


    Universal SIMD Type
What's In Progress?

    Bulk Operations

    Approximations

      Allocators

      Probability

   Dynamic Vectors
Timing Framework
Performance
void Rotate(GLfloat angle, GLfloat x, GLfloat y, GLfloat z) {
    M3DMatrix44f mTemp, mRotate;
    m3dRotationMatrix44(mRotate, float(m3dDegToRad(angle)), x, y, z);
    m3dCopyMatrix44(mTemp, pStack[stackPointer]);
    m3dMatrixMultiply44(pStack[stackPointer], mTemp, mRotate);
}

void rot(f32 x, f32 y, f32 z) {                                  t1 = _mm_mul_ps(simd[0],t);
           f32 b = cos(x), a = sin(x), d = cos(y), c = sin(y),   H = -a*d;
                  f = cos(z), e = sin(z);                        t = _mm_set1_ps(E);
           f32 cf = c*f, ae = a*e, be = b*e;                     t1 = _mm_add_ps(_mm_mul_ps(simd[1],t),t1
           f32 A,B,C,D,E,F,H,I;                                  C = ae-b*cf;
           _v128 t0, t1, t2;                                     t = _mm_set1_ps(H);
           _v128 t;                                              t1 = _mm_add_ps(_mm_mul_ps(simd[2],t),t1
           A = d*f;                                              F = be*c;
           t = _mm_set1_ps(A);                                   t = _mm_set1_ps(C);
           D = -d*e;                                             t2 = _mm_mul_ps(simd[0],t);
           t0 = _mm_mul_ps(simd[0],t);                           F+= a*f;
           t = _mm_set1_ps(D);                                   t = _mm_set1_ps(F);
           B = a*cf;                                             t2 = _mm_add_ps(_mm_mul_ps(simd[1],t),t2
           t0 = _mm_add_ps(_mm_mul_ps(simd[1],t),t0);            I = b*d;
           t = _mm_set1_ps(c);                                   t = _mm_set1_ps(I);
           E = b*f;                                              t2 = _mm_add_ps(_mm_mul_ps(simd[2],t),t2
           t0 = _mm_add_ps(_mm_mul_ps(simd[2],t),t0);            simd[0] = t0;
           E -= ae*c;                                            simd[1] = t1;
           t = _mm_set1_ps(B);                                   simd[2] = t2;
           B += be;                                        }
Testing

●   Framework


Automation
●




●   Coverage
Intrinsic Framework
                            API Functions



                       Generic SIMD Execution
                                Layer



                       Compile-time Decisions




 Inline Assembly and C
                                Compiler        Conversions between
Implementations for non-
                           Intrinsic Support     SIMD architectures
conforming Environments
Future Directions
ARM Port
Bulk Matrix Containers and Matrix
             Stacks
Examples and Tutorials
Thank You!

More Related Content

What's hot

Computer graphics lab manual
Computer graphics lab manualComputer graphics lab manual
Computer graphics lab manualUma mohan
 
79ecb3d9 65f4-4161-b97d-63711df5d6c5
79ecb3d9 65f4-4161-b97d-63711df5d6c579ecb3d9 65f4-4161-b97d-63711df5d6c5
79ecb3d9 65f4-4161-b97d-63711df5d6c5spoider
 
Brief introduction to Algorithm analysis
Brief introduction to Algorithm analysis Brief introduction to Algorithm analysis
Brief introduction to Algorithm analysis Anantha Ramu
 
Computer graphics
Computer graphics Computer graphics
Computer graphics shafiq sangi
 
Computer graphics lab assignment
Computer graphics lab assignmentComputer graphics lab assignment
Computer graphics lab assignmentAbdullah Al Shiam
 
08-09 Chapter numerical integration
08-09  Chapter numerical integration 08-09  Chapter numerical integration
08-09 Chapter numerical integration Dr. Mohammed Danish
 
Computer graphics practical(jainam)
Computer graphics practical(jainam)Computer graphics practical(jainam)
Computer graphics practical(jainam)JAINAM KAPADIYA
 
Graphics practical lab manual
Graphics practical lab manualGraphics practical lab manual
Graphics practical lab manualVivek Kumar Sinha
 
Veni, Vidi, Voronoi: Attacking Viruses using spherical Voronoi diagrams in Py...
Veni, Vidi, Voronoi: Attacking Viruses using spherical Voronoi diagrams in Py...Veni, Vidi, Voronoi: Attacking Viruses using spherical Voronoi diagrams in Py...
Veni, Vidi, Voronoi: Attacking Viruses using spherical Voronoi diagrams in Py...tylerjereddy
 
Benginning Calculus Lecture notes 1 - functions
Benginning Calculus Lecture notes 1 - functionsBenginning Calculus Lecture notes 1 - functions
Benginning Calculus Lecture notes 1 - functionsbasyirstar
 
2020 겨울방학 정기스터디 3주차
2020 겨울방학 정기스터디 3주차2020 겨울방학 정기스터디 3주차
2020 겨울방학 정기스터디 3주차Moonki Choi
 
Templateless Marked Element Recognition Using Computer Vision
Templateless Marked Element Recognition Using Computer VisionTemplateless Marked Element Recognition Using Computer Vision
Templateless Marked Element Recognition Using Computer Visionshivam chaurasia
 

What's hot (19)

Computer graphics lab manual
Computer graphics lab manualComputer graphics lab manual
Computer graphics lab manual
 
79ecb3d9 65f4-4161-b97d-63711df5d6c5
79ecb3d9 65f4-4161-b97d-63711df5d6c579ecb3d9 65f4-4161-b97d-63711df5d6c5
79ecb3d9 65f4-4161-b97d-63711df5d6c5
 
Brief introduction to Algorithm analysis
Brief introduction to Algorithm analysis Brief introduction to Algorithm analysis
Brief introduction to Algorithm analysis
 
Computer graphics
Computer graphics Computer graphics
Computer graphics
 
Computer graphics lab assignment
Computer graphics lab assignmentComputer graphics lab assignment
Computer graphics lab assignment
 
Array
ArrayArray
Array
 
08-09 Chapter numerical integration
08-09  Chapter numerical integration 08-09  Chapter numerical integration
08-09 Chapter numerical integration
 
Matlab differential
Matlab differentialMatlab differential
Matlab differential
 
IntrRSCode
IntrRSCodeIntrRSCode
IntrRSCode
 
Functions12
Functions12Functions12
Functions12
 
Functions123
Functions123 Functions123
Functions123
 
Computer graphics practical(jainam)
Computer graphics practical(jainam)Computer graphics practical(jainam)
Computer graphics practical(jainam)
 
Computer Programming- Lecture 7
Computer Programming- Lecture 7Computer Programming- Lecture 7
Computer Programming- Lecture 7
 
Graphics practical lab manual
Graphics practical lab manualGraphics practical lab manual
Graphics practical lab manual
 
Veni, Vidi, Voronoi: Attacking Viruses using spherical Voronoi diagrams in Py...
Veni, Vidi, Voronoi: Attacking Viruses using spherical Voronoi diagrams in Py...Veni, Vidi, Voronoi: Attacking Viruses using spherical Voronoi diagrams in Py...
Veni, Vidi, Voronoi: Attacking Viruses using spherical Voronoi diagrams in Py...
 
Benginning Calculus Lecture notes 1 - functions
Benginning Calculus Lecture notes 1 - functionsBenginning Calculus Lecture notes 1 - functions
Benginning Calculus Lecture notes 1 - functions
 
Algorithms DM
Algorithms DMAlgorithms DM
Algorithms DM
 
2020 겨울방학 정기스터디 3주차
2020 겨울방학 정기스터디 3주차2020 겨울방학 정기스터디 3주차
2020 겨울방학 정기스터디 3주차
 
Templateless Marked Element Recognition Using Computer Vision
Templateless Marked Element Recognition Using Computer VisionTemplateless Marked Element Recognition Using Computer Vision
Templateless Marked Element Recognition Using Computer Vision
 

Viewers also liked

Adaptive First Person Shooter Game Content Generation
Adaptive First Person Shooter Game Content GenerationAdaptive First Person Shooter Game Content Generation
Adaptive First Person Shooter Game Content GenerationMohammad Shaker
 
Online algorithms in Machine Learning
Online algorithms in Machine LearningOnline algorithms in Machine Learning
Online algorithms in Machine LearningAmrinder Arora
 
Adaptive Learning In Games
Adaptive Learning In GamesAdaptive Learning In Games
Adaptive Learning In GamesSuvarup Saha
 
Online learning and professional collaboration
Online learning and professional collaborationOnline learning and professional collaboration
Online learning and professional collaborationTiina Sarisalmi
 
Online Machine Learning: introduction and examples
Online Machine Learning:  introduction and examplesOnline Machine Learning:  introduction and examples
Online Machine Learning: introduction and examplesFelipe
 
Adaptive Learning for Educational Game Design
Adaptive Learning for Educational Game DesignAdaptive Learning for Educational Game Design
Adaptive Learning for Educational Game DesignEdward Lavieri
 

Viewers also liked (6)

Adaptive First Person Shooter Game Content Generation
Adaptive First Person Shooter Game Content GenerationAdaptive First Person Shooter Game Content Generation
Adaptive First Person Shooter Game Content Generation
 
Online algorithms in Machine Learning
Online algorithms in Machine LearningOnline algorithms in Machine Learning
Online algorithms in Machine Learning
 
Adaptive Learning In Games
Adaptive Learning In GamesAdaptive Learning In Games
Adaptive Learning In Games
 
Online learning and professional collaboration
Online learning and professional collaborationOnline learning and professional collaboration
Online learning and professional collaboration
 
Online Machine Learning: introduction and examples
Online Machine Learning:  introduction and examplesOnline Machine Learning:  introduction and examples
Online Machine Learning: introduction and examples
 
Adaptive Learning for Educational Game Design
Adaptive Learning for Educational Game DesignAdaptive Learning for Educational Game Design
Adaptive Learning for Educational Game Design
 

Similar to 8.7.2011 agml

Getting started cpp full
Getting started cpp   fullGetting started cpp   full
Getting started cpp fullVõ Hòa
 
Write Python for Speed
Write Python for SpeedWrite Python for Speed
Write Python for SpeedYung-Yu Chen
 
COMPAPPABCA49085rFunrAP__Practical Number 9 & 10.docx
COMPAPPABCA49085rFunrAP__Practical Number 9 & 10.docxCOMPAPPABCA49085rFunrAP__Practical Number 9 & 10.docx
COMPAPPABCA49085rFunrAP__Practical Number 9 & 10.docxTashiBhutia12
 
Automatically Describing Program Structure and Behavior (PhD Defense)
Automatically Describing Program Structure and Behavior (PhD Defense)Automatically Describing Program Structure and Behavior (PhD Defense)
Automatically Describing Program Structure and Behavior (PhD Defense)Ray Buse
 
Egor Bogatov - .NET Core intrinsics and other micro-optimizations
Egor Bogatov - .NET Core intrinsics and other micro-optimizationsEgor Bogatov - .NET Core intrinsics and other micro-optimizations
Egor Bogatov - .NET Core intrinsics and other micro-optimizationsEgor Bogatov
 
Georgy Nosenko - An introduction to the use SMT solvers for software security
Georgy Nosenko - An introduction to the use SMT solvers for software securityGeorgy Nosenko - An introduction to the use SMT solvers for software security
Georgy Nosenko - An introduction to the use SMT solvers for software securityDefconRussia
 
Data Structure: Algorithm and analysis
Data Structure: Algorithm and analysisData Structure: Algorithm and analysis
Data Structure: Algorithm and analysisDr. Rajdeep Chatterjee
 
Static analysis of C++ source code
Static analysis of C++ source codeStatic analysis of C++ source code
Static analysis of C++ source codePVS-Studio
 
Static analysis of C++ source code
Static analysis of C++ source codeStatic analysis of C++ source code
Static analysis of C++ source codeAndrey Karpov
 
Abstracting Vector Architectures in Library Generators: Case Study Convolutio...
Abstracting Vector Architectures in Library Generators: Case Study Convolutio...Abstracting Vector Architectures in Library Generators: Case Study Convolutio...
Abstracting Vector Architectures in Library Generators: Case Study Convolutio...ETH Zurich
 
Watermarking in Source Code: Applications and Security Challenges
Watermarking in Source Code: Applications and Security ChallengesWatermarking in Source Code: Applications and Security Challenges
Watermarking in Source Code: Applications and Security ChallengesShyamsundar Das
 
A scrupulous code review - 15 bugs in C++ code
A scrupulous code review - 15 bugs in C++ codeA scrupulous code review - 15 bugs in C++ code
A scrupulous code review - 15 bugs in C++ codePVS-Studio LLC
 
Task based Programming with OmpSs and its Application
Task based Programming with OmpSs and its ApplicationTask based Programming with OmpSs and its Application
Task based Programming with OmpSs and its ApplicationFacultad de Informática UCM
 
ماترێکس به‌ کوردی ئارام
ماترێکس به‌ کوردی ئارامماترێکس به‌ کوردی ئارام
ماترێکس به‌ کوردی ئارامAram Jamal
 
Python for Scientific Computing -- Ricardo Cruz
Python for Scientific Computing -- Ricardo CruzPython for Scientific Computing -- Ricardo Cruz
Python for Scientific Computing -- Ricardo Cruzrpmcruz
 
Pointcuts and Analysis
Pointcuts and AnalysisPointcuts and Analysis
Pointcuts and AnalysisWiwat Ruengmee
 
High-Level Synthesis with GAUT
High-Level Synthesis with GAUTHigh-Level Synthesis with GAUT
High-Level Synthesis with GAUTAdaCore
 
Fsharp shdh 40 lightning talk
Fsharp shdh 40 lightning talkFsharp shdh 40 lightning talk
Fsharp shdh 40 lightning talkmbhwork
 

Similar to 8.7.2011 agml (20)

Getting started cpp full
Getting started cpp   fullGetting started cpp   full
Getting started cpp full
 
Write Python for Speed
Write Python for SpeedWrite Python for Speed
Write Python for Speed
 
COMPAPPABCA49085rFunrAP__Practical Number 9 & 10.docx
COMPAPPABCA49085rFunrAP__Practical Number 9 & 10.docxCOMPAPPABCA49085rFunrAP__Practical Number 9 & 10.docx
COMPAPPABCA49085rFunrAP__Practical Number 9 & 10.docx
 
Boosting Developer Productivity with Clang
Boosting Developer Productivity with ClangBoosting Developer Productivity with Clang
Boosting Developer Productivity with Clang
 
Automatically Describing Program Structure and Behavior (PhD Defense)
Automatically Describing Program Structure and Behavior (PhD Defense)Automatically Describing Program Structure and Behavior (PhD Defense)
Automatically Describing Program Structure and Behavior (PhD Defense)
 
Egor Bogatov - .NET Core intrinsics and other micro-optimizations
Egor Bogatov - .NET Core intrinsics and other micro-optimizationsEgor Bogatov - .NET Core intrinsics and other micro-optimizations
Egor Bogatov - .NET Core intrinsics and other micro-optimizations
 
Georgy Nosenko - An introduction to the use SMT solvers for software security
Georgy Nosenko - An introduction to the use SMT solvers for software securityGeorgy Nosenko - An introduction to the use SMT solvers for software security
Georgy Nosenko - An introduction to the use SMT solvers for software security
 
Data Structure: Algorithm and analysis
Data Structure: Algorithm and analysisData Structure: Algorithm and analysis
Data Structure: Algorithm and analysis
 
Static analysis of C++ source code
Static analysis of C++ source codeStatic analysis of C++ source code
Static analysis of C++ source code
 
Static analysis of C++ source code
Static analysis of C++ source codeStatic analysis of C++ source code
Static analysis of C++ source code
 
Abstracting Vector Architectures in Library Generators: Case Study Convolutio...
Abstracting Vector Architectures in Library Generators: Case Study Convolutio...Abstracting Vector Architectures in Library Generators: Case Study Convolutio...
Abstracting Vector Architectures in Library Generators: Case Study Convolutio...
 
Watermarking in Source Code: Applications and Security Challenges
Watermarking in Source Code: Applications and Security ChallengesWatermarking in Source Code: Applications and Security Challenges
Watermarking in Source Code: Applications and Security Challenges
 
A scrupulous code review - 15 bugs in C++ code
A scrupulous code review - 15 bugs in C++ codeA scrupulous code review - 15 bugs in C++ code
A scrupulous code review - 15 bugs in C++ code
 
Task based Programming with OmpSs and its Application
Task based Programming with OmpSs and its ApplicationTask based Programming with OmpSs and its Application
Task based Programming with OmpSs and its Application
 
ماترێکس به‌ کوردی ئارام
ماترێکس به‌ کوردی ئارامماترێکس به‌ کوردی ئارام
ماترێکس به‌ کوردی ئارام
 
Lecture 04
Lecture 04Lecture 04
Lecture 04
 
Python for Scientific Computing -- Ricardo Cruz
Python for Scientific Computing -- Ricardo CruzPython for Scientific Computing -- Ricardo Cruz
Python for Scientific Computing -- Ricardo Cruz
 
Pointcuts and Analysis
Pointcuts and AnalysisPointcuts and Analysis
Pointcuts and Analysis
 
High-Level Synthesis with GAUT
High-Level Synthesis with GAUTHigh-Level Synthesis with GAUT
High-Level Synthesis with GAUT
 
Fsharp shdh 40 lightning talk
Fsharp shdh 40 lightning talkFsharp shdh 40 lightning talk
Fsharp shdh 40 lightning talk
 

More from mskmoorthy

Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11mskmoorthy
 
Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011mskmoorthy
 
Mobile shuttle tracker_fall_2011_first_present
Mobile shuttle tracker_fall_2011_first_presentMobile shuttle tracker_fall_2011_first_present
Mobile shuttle tracker_fall_2011_first_presentmskmoorthy
 
Rcos presentation 9-23-2011
Rcos presentation 9-23-2011Rcos presentation 9-23-2011
Rcos presentation 9-23-2011mskmoorthy
 
Rcos presentation
Rcos presentationRcos presentation
Rcos presentationmskmoorthy
 
Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011mskmoorthy
 
Auto scheduler presentation_2
Auto scheduler presentation_2Auto scheduler presentation_2
Auto scheduler presentation_2mskmoorthy
 
Second presentation idea_bank
Second presentation idea_bankSecond presentation idea_bank
Second presentation idea_bankmskmoorthy
 
Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011mskmoorthy
 
Sean austin uir-2
Sean austin uir-2Sean austin uir-2
Sean austin uir-2mskmoorthy
 
Nexus2 7-22-1011
Nexus2 7-22-1011Nexus2 7-22-1011
Nexus2 7-22-1011mskmoorthy
 
Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011mskmoorthy
 
Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011mskmoorthy
 
Olympus pesentation2
Olympus pesentation2Olympus pesentation2
Olympus pesentation2mskmoorthy
 
Observatory 7 15-11
Observatory 7 15-11Observatory 7 15-11
Observatory 7 15-11mskmoorthy
 
Concerto conmoto
Concerto conmotoConcerto conmoto
Concerto conmotomskmoorthy
 
Scrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdfScrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdfmskmoorthy
 

More from mskmoorthy (20)

Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11
 
Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011
 
Rcos intro-2
Rcos intro-2Rcos intro-2
Rcos intro-2
 
Mobile shuttle tracker_fall_2011_first_present
Mobile shuttle tracker_fall_2011_first_presentMobile shuttle tracker_fall_2011_first_present
Mobile shuttle tracker_fall_2011_first_present
 
Rcos presentation 9-23-2011
Rcos presentation 9-23-2011Rcos presentation 9-23-2011
Rcos presentation 9-23-2011
 
Rcos presentation
Rcos presentationRcos presentation
Rcos presentation
 
Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011
 
Auto scheduler presentation_2
Auto scheduler presentation_2Auto scheduler presentation_2
Auto scheduler presentation_2
 
Second presentation idea_bank
Second presentation idea_bankSecond presentation idea_bank
Second presentation idea_bank
 
Scrutiny 2
Scrutiny 2Scrutiny 2
Scrutiny 2
 
Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011
 
Sean austin uir-2
Sean austin uir-2Sean austin uir-2
Sean austin uir-2
 
Nexus2 7-22-1011
Nexus2 7-22-1011Nexus2 7-22-1011
Nexus2 7-22-1011
 
Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011
 
Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011
 
Olympus pesentation2
Olympus pesentation2Olympus pesentation2
Olympus pesentation2
 
Observatory 7 15-11
Observatory 7 15-11Observatory 7 15-11
Observatory 7 15-11
 
Concerto conmoto
Concerto conmotoConcerto conmoto
Concerto conmoto
 
Koala pres1
Koala pres1Koala pres1
Koala pres1
 
Scrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdfScrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdf
 

Recently uploaded

microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room servicediscovermytutordmt
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...Pooja Nehwal
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 

Recently uploaded (20)

microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 

8.7.2011 agml

  • 2. What does it do? Something... I hope... Maybe?
  • 4. New Organization and Streamlined API API Tool Chain High Level Interface Build system Bulk Matrix Container Matrix Stack Makefile Bulk Matrix Stack Dynamic Vector Code::Blocks Project Visual Studio Project Core Testing Framework Vector Bulk Operations Allocators Automated Testing Matrix Approximations Probability Code Coverage Basics Timing Framework Fixed-width Scalar Types Complex Types User-Friendly GUI Core Components Compatibility Layers and non User Facing Code Intrinsic Compatibility Layer Universal SIMD Types
  • 6. What's Done? Gratuitous use of graphics Matrix/Vector Implementations 4x4, f32 Specialization Complex Types Universal SIMD Type
  • 7. What's In Progress? Bulk Operations Approximations Allocators Probability Dynamic Vectors
  • 10. void Rotate(GLfloat angle, GLfloat x, GLfloat y, GLfloat z) { M3DMatrix44f mTemp, mRotate; m3dRotationMatrix44(mRotate, float(m3dDegToRad(angle)), x, y, z); m3dCopyMatrix44(mTemp, pStack[stackPointer]); m3dMatrixMultiply44(pStack[stackPointer], mTemp, mRotate); } void rot(f32 x, f32 y, f32 z) { t1 = _mm_mul_ps(simd[0],t); f32 b = cos(x), a = sin(x), d = cos(y), c = sin(y), H = -a*d; f = cos(z), e = sin(z); t = _mm_set1_ps(E); f32 cf = c*f, ae = a*e, be = b*e; t1 = _mm_add_ps(_mm_mul_ps(simd[1],t),t1 f32 A,B,C,D,E,F,H,I; C = ae-b*cf; _v128 t0, t1, t2; t = _mm_set1_ps(H); _v128 t; t1 = _mm_add_ps(_mm_mul_ps(simd[2],t),t1 A = d*f; F = be*c; t = _mm_set1_ps(A); t = _mm_set1_ps(C); D = -d*e; t2 = _mm_mul_ps(simd[0],t); t0 = _mm_mul_ps(simd[0],t); F+= a*f; t = _mm_set1_ps(D); t = _mm_set1_ps(F); B = a*cf; t2 = _mm_add_ps(_mm_mul_ps(simd[1],t),t2 t0 = _mm_add_ps(_mm_mul_ps(simd[1],t),t0); I = b*d; t = _mm_set1_ps(c); t = _mm_set1_ps(I); E = b*f; t2 = _mm_add_ps(_mm_mul_ps(simd[2],t),t2 t0 = _mm_add_ps(_mm_mul_ps(simd[2],t),t0); simd[0] = t0; E -= ae*c; simd[1] = t1; t = _mm_set1_ps(B); simd[2] = t2; B += be; }
  • 11. Testing ● Framework Automation ● ● Coverage
  • 12. Intrinsic Framework API Functions Generic SIMD Execution Layer Compile-time Decisions Inline Assembly and C Compiler Conversions between Implementations for non- Intrinsic Support SIMD architectures conforming Environments
  • 15. Bulk Matrix Containers and Matrix Stacks