Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
A
angle
  • Project
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Chen Yisong
  • angle
  • Repository

Switch branch/tag
  • angle
  • src
  • compiler
  • translator
  • InfoSink.h
Find file
BlameHistoryPermalink
  • Shahbaz Youssefi's avatar
    Vulkan: Call glslang at compile time · 776c6015
    Shahbaz Youssefi authored Feb 26, 2021
    With this change, the ANGLE translator immediately compiles the
    generated GLSL into SPIR-V with glslang and discards the source.  This
    is in preparation for generating SPIR-V directly, by making the frontend
    and backend already able to digest it.
    
    This change also allows the expensive glslang calls to be parallelized,
    improving the following perf test by about 20%:
    
        LinkProgramBenchmark.Run/vulkan_compile_and_link_multi_thread
    
    Previously, the test was run as such in the Vulkan backend:
    
        Main           Thread 1          Thread 2
        Compile1 --->
        Compile2 --------------------->
                      Translator        Translator
                 <---
                 <---------------------
        Link
    
        glslang
         for
          shader1
    
        glslang
         for
          shader2
    
        Done
    
    With this change, it is run as such:
    
        Main           Thread 1          Thread 2
        Compile1 --->
        Compile2 --------------------->
                      Translator        Translator
                       glslang           glslang
                 <---
                 <---------------------
        Link
        Done
    
    glslang_wrapper_utils no longer interacts with glslang! A rename will
    follow.
    
    Bug: angleproject:4889
    Change-Id: If4303e8ba0ba43b1a2f47f8c0a9133d0bee1a19a
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2721195
    Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
    Reviewed-by: 's avatarTim Van Patten <timvp@google.com>
    Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    776c6015
InfoSink.h 3.8 KB
EditWeb IDE
×

Replace InfoSink.h

Attach a file by drag & drop or click to upload


Cancel
A new branch will be created in your fork and a new merge request will be started.