Skip to content

NVBit-1.4

Compare
Choose a tag to compare
@x-y-z x-y-z released this 08 Jun 15:43
· 7 commits to master since this release

Added

  • Added complete Turing support, specifically SM_73 and SM_75.
  • Added Ampere support, specifically SM_80.
    • Added new GLOBAL_TO_SHARED memory space for LDGSTS instruction from Ampere.
  • Added nvbit_read_ureg, nvbit_write_ureg to read/write uniform registers.
  • Added nvbit_read_pred_reg, nvbit_write_pred_reg to read/write predicate register.
  • Added nvbit_read_upred_reg, nvbit_write_upred_reg to read/write uniform predicate register.
  • Added NVBIT_VERSION to nvbit.h, so one can identify NVBit version in his instrumentation tools
  • Added variadic instrument function support (with record_reg_vals as an example), so one can write instrument functions like dev_func(int num_args...).

Fixed

  • Fixed the bug, which prevents callee functions from being instrumented if their caller function has no instruction to be instrumented.

Changed

  • IARG_PRED_VAL_T and IARG_PRED_REG_T give uniform predicate register value if the instrumented instruction uses uniform predicate register.
  • Changed move_replace tool to support uniform register.
  • Changed mem_trace and mem_print tools to support instructions with more than one memory reference address (e.g., LDGSTS).
  • Changed nvbit_enable_instrumented function to allow users to only enable/disable instrumentation on the specified function without affecting its related functions (the original and default behavior is to enable/disable instrumentation on the specified function and all its related functions).