Using the Runtime Initialization File

The SDAccel™ runtime library uses various parameters to control debug, profiling, and message logging during host application and kernel execution in software emulation, hardware emulation, and system run on the acceleration board. These control parameters are specified in a runtime initialization file.

For command line users, the runtime initialization file needs to be created manually. The file must be named sdaccel.ini and saved in the same directory as the host executable.

For SDx GUI users, the project manager creates sdaccel.ini file automatically based on users run configuration and saves it next to the host executable.

The runtime library will check if sdaccel.ini exists in the same directory as the host executable and automatically read the parameters from the file during start-up if it finds it.

Runtime Initialization File Format

The runtime initialization file is a text file with groups of keys and their values. Any line beginning with semicolon (;) or hash (#) is a comment. The group names, keys, and key values are all case sensitive.

The following is a simple example that turns on profile timeline trace and sends the runtime log messages to console.


#Start of Debug group 
[Debug] 
timeline_trace = true

#Start of Runtime group 
[Runtime] 
runtime_log = console

The following table lists all supported groups, keys, valid key values and short descriptions on the function of the keys.

Key Valid Values Descriptions
[Debug] Group
debug [true|false]
Enable or disable kernel debug.
  • true: enable
  • false: disable
  • Default: false
profile [true|false]
Enable or disable OpenCL code profiling.
  • true: enable
  • false: disable
  • Default: true
timeline_trace [true|false]
Enable or disable profile timeline trace
  • true: enable
  • false: disable
  • Default: false
device_profile [true|false]
Enable or disable device profiling.
  • true: enable
  • false: disable
  • Default: false
[Runtime] Group    
api_checks [true|false]
Enable or disable OpenCL API checks.
  • true: enable
  • false: disable
  • Default: true
runtime_log null console syslog filename
Specify where the runtime logs are printed
  • null: Do not print any logs.
  • console: Print logs to stdout
  • syslog: Print logs to Linux syslog
  • filename: Print logs to the specified file. e.g. runtime_log=my_run.log
  • Default: null
polling_throttle An integer
Specify the time interval in microseconds that the runtime library polls the device status.
  • Default: 0
[Emulation] Group    
aliveness_message_interval Any integer

Specify the interval in seconds that aliveness messages need to be printed

  • Default 300
print_infos_in_console [true|false] Controls the printing of emulation info messages to users console. Emulation info messages are always logged into a file called emulation_debug.log
  • true = print in users console
  • false = don't print in users console
  • Default: true
print_warnings_in_console [true|false]
Controls the printing emulation warning messages to users console. Emulation warning messages are always logged into a file called emulation_debug.log.
  • true = print in users console
  • false = do not print in users console
  • Default: true
print_errors_in_console [true|false]
Controls printing emulation error messages in users console. Emulation error messages are always logged into file called emulation_debug.log.
  • true = print in users console
  • false = don't print in users console
  • Default: true
enable_oob [true|false]
Enable or disable diagnostics of out of bound access during emulation. A warning is reported if there is any out of bound access.
  • true: enable
  • false: disable
  • Default: false
launch_waveform [off|batch|gui]
Specify how the waveform is saved and displayed during emulation.
  • off: Do not launch simulator waveform GUI, and do not save wdb file
  • batch: Do not launch simulator waveform GUI, but save wdb file
  • gui: Launch simulator waveform GUI, and save wdb file
  • Default: off
Note: The kernel needs to be compiled with debug enabled (xocc -g) for the waveform to be saved and displayed in the simulator GUI.