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
  • libANGLE
  • renderer
  • vulkan
  • ContextVk.cpp
Find file
BlameHistoryPermalink
  • Shahbaz Youssefi's avatar
    Vulkan: fix BufferVk::map() synchronization · 27c89d2b
    Shahbaz Youssefi authored Nov 25, 2019
    4398b2b6 made finishToSerial() in
    BufferVk::map() conditional to whether the serial is in use to work
    around a performance regression.  Notes:
    
    - Prior to 087f1384, finishToSerial
      already did that, but that check was inadvertently removed.
    - finishToSerial waits for the smallest serial that's bigger than or
      equal to the requested serial.
    - The flush() call in BufferVk::map() was conditional to whether the
      serial is in use, but it really meant to check whether the buffer has
      pending commands in the graph.
    
    The end result is that there was an unnecessary flush in BufferVk::map()
    if we had to wait for a previous serial to finish.
    
    This change makes the flush conditional to whether the buffer has
    pending commands in the graph, and the finishToSerial call to whether
    the serial is not yet finished.
    
    Bug: angleproject:3994
    Change-Id: Idca436ef2439bcc8c59396a07b2591c1dfadd669
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1932341Reviewed-by: 's avatarBrandon Schade <b.schade@samsung.com>
    Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org>
    Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
    27c89d2b
ContextVk.cpp 132 KB
EditWeb IDE
×

Replace ContextVk.cpp

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.