Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • D dynamorio
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,467
    • Issues 1,467
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 44
    • Merge requests 44
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • DynamoRIO
  • dynamorio
  • Issues
  • #2299
Closed
Open
Issue created Mar 17, 2017 by Derek Bruening@derekbrueningContributor

shrink drmemtrace buffer redzone

This issue covers taking two courses of action regarding drmemtrace's redzone size.

First, is the redzone large enough?

Second, we'd like a tighter bound on the redzone, so we can shrink it if possible to reduce general overhead and particularly to reduce wasted space when using drmemtrace_buffer_handoff() (xref #2006 (closed)) where the entire mmap is handed off.

Going beyond the main buffer into the redzone, how many memrefs can we hit before we detect and write the buffer out? No loop can execute: only one execution of a single basic block, which could be up to 256 instructions with default client options. Each memref takes up 8 bytes in the buffer. If each instruction were a VSIB with 4 distinct memrefs we could get up to 8K extra but that is extremely pathological.

We could require containing tools to set -max_bb_instrs if that helps.

Assignee
Assign to
Time tracking