We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Three Years Experience with a Tree-like Shader IR

00:00

Formal Metadata

Title
Three Years Experience with a Tree-like Shader IR
Title of Series
Number of Parts
199
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Three years ago a small team at Intel took on the task of rewriting the OpenGL Shading Language compiler in Mesa. One of the most fundamental design choices in any compiler is the intermediate representation (IR) used for programs. The IR is the internal data structure used for all program transformations including optimization and code generation. At the time the compiler was designed, a number of alternatives were investigated. In the end, a tree-like IR was selected. With hindsight being 20/20, this talk will present the tree-like IR that was chosen and the issues that have been found with that IR in the interim.
CompilerRow (database)IntelSoftware developerOpen sourceRight angle
Multiplication signFormal languageBitSystem programmingCompilerProjective planeSet (mathematics)SequenceExpressionDynamical systemArchitectureHypothesisImplementationRevision controlRemote procedure callSource codeSearch algorithmSoftware architectureHardware description languageInheritance (object-oriented programming)MathematicsCompilerDescriptive statisticsWeb crawlerOperator (mathematics)Product (business)Real numberNetwork topologyState of matterParsingCodeQuicksortComputer architectureAxiom of choiceMachine visionResource allocationOcean currentExpert systemVirtual machineAdditionLoop (music)Message passingArmClassical physicsCartesian coordinate systemParsingDifferent (Kate Ryan album)Front and back endsTelephone number mappingShader <Informatik>MultilaterationLecture/Conference
Network topologyQuicksortBefehlsprozessorResultantSoftware developerAsynchronous Transfer ModePermutationCodeDifferent (Kate Ryan album)Binary multiplierData compressionCompilerRegular graphSet (mathematics)Multiplication signMathematical optimizationOperator (mathematics)Maxima and minimaRotationMathematical analysisBitPower (physics)Sound effectNatural numberExpressionMessage passingSequenceVector potentialSource codeFigurate numberCausalityTrailComputer filePlotterCoprocessorSingle-precision floating-point formatAlgebraTopological vector spaceElectric generatorGraphics processing unitFlow separationProgram flowchart
Structured programmingSemiconductor memoryPointer (computer programming)Array data structureProcess (computing)AdditionVariable (mathematics)Field (computer science)ResultantNetwork topologyGame theoryVirtual machineShader <Informatik>MultiplicationExpressionRevision controlOptical disc driveLecture/ConferenceXML
Data structureShared memoryBitVirtual machineSet (mathematics)Network topologyStructured programmingShader <Informatik>Lecture/Conference
WordMathematical optimizationStructured programmingUniformer RaumCodeBitCondition numberNetwork topologyGaussian eliminationDiffuser (automotive)Goodness of fitCartesian coordinate systemQuicksortRight angleLogical constantStatement (computer science)CompileroutputExpressionIntermediate value theoremGraphics processing unitDifferent (Kate Ryan album)Electric generatorFront and back endsShader <Informatik>Variable (mathematics)Trail
Computer fileStructured programmingQuicksortNetwork topologyInformationPointer (computer programming)Fitness functionSequenceSet (mathematics)Mathematical optimizationDifferent (Kate Ryan album)Arithmetic meanMultiplication signSemiconductor memoryVideo gameSocial classExtreme programmingMessage passingOperator (mathematics)Lecture/Conference
Mathematical optimizationInfinitySystem programmingVariable (mathematics)MappingOcean currentNumbering schemeoutputInformationOrder (biology)Addition32-bitAddress spaceSet (mathematics)Array data structureComputer programmingSimilarity (geometry)Multiplication signShader <Informatik>TrailUniformer RaumBuffer solutionSemiconductor memoryGoodness of fitQuicksortDifferent (Kate Ryan album)BefehlsprozessorObject-oriented programmingState of matterComplete metric spaceBitSpeicheradresseShared memoryCompilerPhase transitionWordMessage passingFirst-person shooter
Structural loadDatabase normalizationMessage passingArray data structureFunction (mathematics)Subject indexingGraphics processing unitSemiconductor memoryMathematical optimizationData storage deviceMappingMultiplication signCodeShader <Informatik>Extension (kinesiology)Ocean currentNetwork topologyLogical constantParity (mathematics)Dynamical systemCartesian coordinate systemGeometryShared memoryGoodness of fitDependent and independent variablesLecture/Conference
Variable (mathematics)Texture mappingReduction of orderRight angleForm (programming)QuicksortNetwork topologyAdditionSystem programmingError messageConstructor (object-oriented programming)Operator (mathematics)InformationDifferent (Kate Ryan album)ForestMessage passingKnapsack problemExpressionSystem callSemiconductor memoryHierarchySingle-precision floating-point formatBinary multiplierDevice driverArray data structureMereologyDataflowSocial classVolume (thermodynamics)Parameter (computer programming)Level (video gaming)Functional programmingFront and back endsMathematical optimizationCodeChainingAddress spaceOpcodeResource allocationElectronic mailing listStructured programmingSheaf (mathematics)Compact spaceProcess (computing)TrailNumbering schemeCalculationUniform resource locatorComputer programmingSequenceGaussian eliminationElectric generatorOcean currentGraphics processing unitType theoryCompilerIndian Remote SensingFilm editingBitAuditory maskingHoax
Dimensional analysisMathematicsMereologyChainingBlock (periodic table)Gaussian eliminationInformationCodeSet (mathematics)Form (programming)Mathematical optimizationNetwork topologyFood energyCASE <Informatik>Group actionElectric generatorSoftware maintenanceParity (mathematics)Message passingXMLUML
Projective planeMultiplication signCompilerBlock (periodic table)Electric generatorNetwork topologyDampingComputer fileCASE <Informatik>Revision controlWindowProduct (business)Game theoryFront and back endsShader <Informatik>Statement (computer science)ChainingStructured programmingGroup actionDigital Equipment CorporationSequenceTable (information)Loop (music)Hydraulic jumpFormal grammarTrailOffice suiteProcess (computing)BuildingComputer architectureLevel (video gaming)Ocean currentMessage passingBitMereologyWordCodeOrthogonalityQuicksortLecture/ConferenceComputer animation
Statement (computer science)State of matterInterface (computing)Shared memoryLine (geometry)Revision controlOverhead (computing)Different (Kate Ryan album)Device driverProjective planeArithmetic meanRight angleFitness functionOpen setMereologyVolume (thermodynamics)Group actionGame theoryOnline help1 (number)Core dumpShader <Informatik>MathematicsCuboidWave packetCompilerPhase transitionMultiplicationFormal grammarSemiconductor memoryUniformer RaumComputer fileMultiplication signExpressionSequence2 (number)Array data structureElectric generatorPhysicalismObject-oriented programmingPointer (computer programming)Frame problemCodeMathematical optimizationDemosceneProcess (computing)BitCartesian coordinate systemoutputSystem programmingFlow separationFunctional programmingLibrary (computing)Computer configurationCompilerLipschitz-StetigkeitBookmark (World Wide Web)Computer programmingSqueeze theoremQuicksortLink (knot theory)Computer architectureFunction (mathematics)Direction (geometry)Client (computing)Level (video gaming)Limit (category theory)Sound effectKernel (computing)Standard deviationNetwork topologyClosed setSource codeInstallation artBoss CorporationMobile appStructural load32-bitCache (computing)Front and back endsSinc functionLecture/Conference
Transcript: English(auto-generated)